How paiva-l/identificador-de-fake-news works
This repository is an academic fake-news classifier for Portuguese news, developed through data preparation, model training and evaluation, and a Streamlit prediction interface. The main user workflow is to submit news text and receive a real/fake classification with a decision-margin estimate. The tree and README identify the notebook stages and artifacts; the sampled app source confirms its input, model-loading, prediction, and display behavior. Notebook internals and the precise training-to-artifact wiring were not sampled, so those links are limited to documented responsibilities.
Main entry points: app.py Streamlit classifier · modelo_linearsvc_fakerecogna.joblib LinearSVC pipeline · FakeRecogna.xlsx Fake.br data · 01_preproc_eda.ipynb Clean and explore
Components 15
Data preparation
- Fake.br data
data/FakeRecogna.xlsx - Clean and explore
notebooks/v2_pipeline_linearsvc/01_preproc_eda.ipynb - Processed data
notebooks/v2_pipeline_linearsvc/data/processed/train.csv - Holdout data
notebooks/v2_pipeline_linearsvc/data/processed/test_holdout.csv - Baseline cleaning
notebooks/v1_baseline/01_limpeza_eda_pln_fakerecogna.ipynb
Model development
- Train and tune
notebooks/v2_pipeline_linearsvc/02_treino_cv_gridsearch.ipynb - External OOD validation
notebooks/v2_pipeline_linearsvc/03_validacao_externa_ood.ipynb - LinearSVC pipeline
notebooks/v2_pipeline_linearsvc/modelo_linearsvc_fakerecogna.joblib - Logistic regression
notebooks/v1_baseline/02_treinamento_modelo_regressao_logistica.ipynb - Model benchmark
notebooks/v1_baseline/03-benchmark-de-modelos.ipynb - Baseline model
notebooks/v1_baseline/models/modelo_regressao_logistica.pkl - Evaluation metrics
reports/metrics_regressao_logistica.json
News classification
- Streamlit classifier
notebooks/v2_pipeline_linearsvc/app.py - Class and confidence
notebooks/v2_pipeline_linearsvc/app.py
Other components
- News reader
Connections 15
- Fake.br data → Clean and explore: analyzed and cleaned
- Clean and explore → Processed data: prepares data
- Processed data → Train and tune: used for training
- Train and tune → LinearSVC pipeline: produces pipeline
- Holdout data → External OOD validation: used for validation
- LinearSVC pipeline → External OOD validation: evaluated by
- Fake.br data → Baseline cleaning: analyzed and cleaned
- Baseline cleaning → Logistic regression: prepares data
- Logistic regression → Baseline model: trains model
- Baseline model → Model benchmark: benchmarked by
- Model benchmark → Evaluation metrics: reports results
- News reader → Streamlit classifier: submits news text
- Streamlit classifier → LinearSVC pipeline: loads and predicts with
- Streamlit classifier → Class and confidence: displays classification
- Streamlit classifier → News reader: shows result