Built to order

Fake News Detection using Transformers

This project builds a fake-news detector that reads a news article and scores how likely it is to be misinformation, showing the exact linguistic signals behind the verdict — sensational language, emotional manipulation, missing attribution, suspicious source patterns. A RoBERTa classifier fine-tuned on the ISOT Fake News dataset (44,000+ real and fake articles) powers the core judgment, while a transparent signal layer breaks the score into human-readable factors. Suitable for B.E./B.Tech final-year projects in Computer Science, AI/ML and Data Science.

Fake News Detection using Transformers — project thumbnail preview
More project photos (2)

The problem

Misinformation spreads faster than fact-checks can follow, and readers have no reliable way to judge an unfamiliar article in the moment. Automated detection is genuinely hard — style alone does not prove falsehood — which is exactly why this project is built with unusual honesty about its limits. A RoBERTa classifier fine-tuned on the ISOT dataset (44,898 labeled real and fake news articles) learns the stylistic fingerprints of fabricated news, and a transparent signal layer scores interpretable factors: sensational vocabulary density, emotional manipulation markers, attribution presence (named sources vs "experts say"), and headline–body consistency. The demo never claims certainty — it presents a risk assessment with the evidence, like a spell-checker for credibility. The report documents where the model fails (well-written disinformation, satire) as carefully as where it succeeds.

How it works

  1. Article text is cleaned and split into headline and body; the publishing source is extracted when available.
  2. RoBERTa-base, fine-tuned on ISOT, outputs a fake-vs-real probability from the full article text.
  3. In parallel, six rule-based signals are computed: sensational word density, emotion-lexicon hits, named-source attribution count, source-list match, headline–body semantic similarity, and capitalization patterns.
  4. The classifier probability and signal scores are combined with documented weights into a final risk band: likely real, uncertain, or likely fake.
  5. The demo renders the verdict card with per-signal bars and highlights the contributing phrases in the article text.
  6. Evaluation on ISOT's held-out split reports accuracy, precision/recall and F1 honestly, with an error analysis of satire and well-written fakes in the report.

Tech stack:

  • Python 3.11, Hugging Face Transformers
  • RoBERTa-base (roberta-base) fine-tuned on ISOT
  • ISOT Fake News Dataset (44,898 articles)
  • PyTorch (fine-tuning)
  • scikit-learn (metrics)
  • spaCy (linguistic features)
  • Flask + HTML/CSS/JS (demo)

Dataset & model details

  • Dataset: ISOT Fake News Dataset (Ahmed et al., 2017) — 44,898 full-text articles: 21,417 real (Reuters) and 23,481 fake, collected 2016–2017. The standard public benchmark for fake-news text classification. Source: the authors' release (widely mirrored, e.g. Kaggle "Fake News").
  • Task: Binary classification — input = news article text (+ source), output = real/fake probability plus six interpretable signal scores.
  • Model: RoBERTa-base (125M parameters) fine-tuned on ISOT; signal layer uses lexicon and pattern features documented in the report.
  • Metrics: Accuracy, precision, recall and F1 on ISOT's held-out split — reported as design targets from the training run, never pre-claimed.
Parameter Value
Articles 44,898 (21,417 real / 23,481 fake)
Signals 6 interpretable linguistic signals
Model RoBERTa-base fine-tune, ~125M parameters
F1 Design target on held-out split (reported after training)
Demo latency Under 3 s per article on CPU (expected)
Demo Single-file web app with preloaded samples
Fine-tuning Approximately 2–4 h on a single GPU (expected)

Project features

  • [RoBERTa classifier] RoBERTa-base fine-tuned on the ISOT Fake News dataset distinguishes real from fabricated articles by learned stylistic patterns.
  • [Explainable signal layer] Six transparent signals — sensationalism, emotional manipulation, attribution quality, source credibility, headline–body consistency, all-caps density — each scored and shown.
  • [Verdict card] Every analysis renders as a risk card: likely-real / uncertain / likely-fake with confidence and the top contributing signals.
  • [Signal highlighting] The demo highlights the exact words and phrases driving each signal inside the article text.
  • [Source credibility check] The publishing domain is checked against a documented list of known unreliable outlets and satire sites.
  • [Uncertainty honesty] Borderline articles get an "uncertain — verify manually" verdict with fact-checking guidance instead of a forced classification.
  • [Live web demo] Paste any article or analyze the preloaded real and fake samples; the full signal breakdown computes instantly.

What is included

  • Fine-tuned RoBERTa fake-news classifier
  • Signal-analysis pipeline source (6 documented signals)
  • Source credibility reference list (documented)
  • Web demo with preloaded real and fake sample articles
  • Evaluation notebook (accuracy, F1, error analysis on satire)
  • Project report PDF (background, transformers, misinformation detection limits, results)
  • PPT presentation for final review
  • Viva Q&A preparation document (RoBERTa, ISOT, precision/recall, adversarial limits)

Limitations & prerequisites

  • Style-based detection cannot verify facts — a well-written false article can pass, and the report's error analysis documents this openly.
  • ISOT articles are from 2016–2017; news style and topics have shifted, so the demo includes a dataset-age discussion.
  • Satire sites are flagged by the source list, not understood as humor — satire is an explicit known-failure case.
  • F1 is a design target until the training run executes; the report records the achieved figure.
  • The tool assists readers; it is not a content-moderation system and must not be used to auto-censor.

Frequently Asked Questions

Which dataset is used?

The ISOT Fake News Dataset — nearly 45,000 full-text articles, half real (Reuters) and half fake, from 2016–2017. It is the standard public benchmark for this task.

Can it really tell true from false?

Honestly: it detects the stylistic fingerprints of fabricated news, not factual truth. The project is explicit that style-based detection has real limits — well-written disinformation can fool it, and the report documents these failures.

What signals does it show?

Sensationalism, emotional manipulation, attribution quality, source credibility, headline–body consistency and capitalization patterns — each scored and with the driving phrases highlighted in the text.

What happens with borderline articles?

They get an "uncertain" verdict with fact-checking guidance (check the source, search the claim, look for corroboration) instead of a forced real/fake label.

Isn't this a censorship tool?

No — it is a reader-assistance demo that explains its reasoning. The report states it must not be used for automated content removal.

Is this project suitable for a final-year project?

Yes — for Computer Science, IT and AI/ML programs. It is transformer text classification on a real benchmark, built with rare honesty about what the model can and cannot do. Suitable for B.E./B.Tech final-year projects in Computer Science, IT and AI & Machine Learning.

Components & software requirements
  • Python 3.11, Hugging Face Transformers
  • RoBERTa-base (roberta-base) fine-tuned on ISOT
  • ISOT Fake News Dataset (44,898 articles)
  • PyTorch (fine-tuning)
  • scikit-learn (metrics)
  • spaCy (linguistic features)
  • Flask + HTML/CSS/JS (demo)

Dataset & model details

  • Dataset: ISOT Fake News Dataset (Ahmed et al., 2017) — 44,898 full-text articles: 21,417 real (Reuters) and 23,481 fake, collected 2016–2017. The standard public benchmark for fake-news text classification. Source: the authors' release (widely mirrored, e.g. Kaggle "Fake News").
  • Task: Binary classification — input = news article text (+ source), output = real/fake probability plus six interpretable signal scores.
  • Model: RoBERTa-base (125M parameters) fine-tuned on ISOT; signal layer uses lexicon and pattern features documented in the report.
  • Metrics: Accuracy, precision, recall and F1 on ISOT's held-out split — reported as design targets from the training run, never pre-claimed.
Delivery information

Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.

Support terms

Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.

Download abstract (PDF)

Related guides

All guides
Blueprint-style technical illustration of multiple decision trees voting together into one final predictionStudents with basic Python and pandas skills who want a reliable first classifier for ML coursework and tabular data projects.

Random Forests Explained: Why Decision Trees Vote Better Together

Decision trees are readable but overfit; random forests fix this by training hundreds of varied trees on bootstrapped data with random feature subsets, then letting them vote. This guide explains Gini impurity, bagging, out-of-bag validation and the four hyperparameters that matter, with a complete scikit-learn workflow, honest feature-importance practices, and the mistakes students keep making.

Read guide
Illustration of object tracking showing video frames with bounding boxes and persistent ID labels following people and vehicles, comparing motion prediction and appearance matching.B.E./B.Tech Computer Science and Electronics students building video analytics projects — people counting, vehicle tracking, sports analysis — who have detection working and need

Object Tracking: DeepSORT and ByteTrack Explained

Detection finds objects per frame; tracking keeps their identities across frames. This guide explains tracking-by-detection, Kalman motion models, DeepSORT's appearance embeddings vs ByteTrack's low-confidence box recovery, tracking metrics (HOTA, IDF1, ID switches), and the tuning parameters that determine real-world quality.

Read guide
Illustration of image segmentation showing U-Net's U-shaped encoder-decoder with skip connections producing pixel masks, alongside Mask R-CNN detecting instances with masks.B.E./B.Tech Computer Science and AI/ML students moving from image classification or detection to pixel-level understanding — medical imaging, defect detection, autonomous driving

Image Segmentation: U-Net and Mask R-CNN

When projects need pixel-level answers, segmentation delivers. This guide explains semantic vs instance vs panoptic segmentation, U-Net's encoder-decoder with skip connections, Mask R-CNN's parallel mask head, Dice and IoU evaluation, paired augmentation, and how to choose the right architecture for your data and question.

Read guide
Get a quotation