FactGuard: Using Events and Commonsense to See Through Fake News Style Tricks

Most fake news detectors still look at how something is written rather than what actually happened. FactGuard flips the perspective: it asks "what is the underlying event, and does it make sense?", then uses an LLM as a cautious advisor instead of an all-knowing oracle.
Core Idea
Most fake news models still lean heavily on writing style: sentiment, punctuation, emotional tone, even emoji patterns. That works until bad actors simply copy the style of reputable outlets. Then your detector is basically judging book covers.
The framework discussed here, FactGuard, tries to decouple event from style. Instead of asking "does this text look fake?", it asks:
- What real-world event is this article describing?
- Given commonsense and background knowledge, does that event description even make sense?
An LLM is used to extract an event-centric summary and a commonsense rationale, but a smaller model does the heavy lifting. A distilled variant, FactGuard-D, learns to imitate this behavior without calling the LLM at inference time, which keeps latency and cost under control.
How It Works
At a high level, FactGuard runs in three stages:
-
Event & rationale extraction with an LLM
- From the raw article, the LLM is prompted to:
- Extract a concise topic + core event content (who/what/when/where).
- Generate a short commonsense rationale explaining why the story seems plausible or suspicious.
- From the raw article, the LLM is prompted to:
-
Encoding and interaction with a small language model (SLM)
- The original news text, the event-centric summary, and the rationale are all encoded with a pretrained model like BERT/RoBERTa.
- A Topic-Content & Rationale Interactor runs dual cross-attention so the event summary and rationale can "talk to each other" and form a single LLM-advice feature.
-
Rationale usability + fusion + classification
- A Rationale Usability Evaluator treats the LLM as an advisor, not a judge:
- One branch discounts the LLM when its direct label predictions are weak.
- Another branch focuses on contradictions and ambiguities surfaced by commonsense reasoning.
- Dual attention is applied over the news text itself to highlight salient tokens.
- Finally, SLM-based news features and LLM-enhanced features are fused and fed into an MLP to predict real vs fake.
- A Rationale Usability Evaluator treats the LLM as an advisor, not a judge:
Examples
1) Event-centric extraction + rationale
You are a fact-checking assistant. Given a news article, do three things: 1. Extract a concise topic (1 sentence). 2. Extract the core event content (2–4 sentences: who, what, when, where). 3. Provide a commonsense rationale explaining whether the story is plausible. Respond in JSON with fields: `topic`, `event_content`, `commonsense_rationale`. Article: "A small local blog claims that a single high school student secretly shut down all power plants in a country using a hacked smartphone app…"
Expected output
{
"topic": "Claim that a teenager shut down national power plants via a phone app.",
"event_content": "The article says one high school student hacked a mobile app to shut down all power plants in an entire country at once...",
"commonsense_rationale": "Modern power plants are isolated from consumer apps and heavily protected. A single student using a phone app to control an entire national grid is extremely implausible."
}
2) Advisor-style verdict
You are an advisor to a separate classification model. For the article below: 1. Briefly restate the core event in 2–3 sentences. 2. List up to 3 commonsense checks that support or contradict the event. 3. Output `verdict_advice` as either `"likely_real"` or `"likely_fake"` plus a short explanation. Article: "Scientists announce they grew fully functional human hearts overnight using a consumer 3D printer available on Amazon…"
Expected output
{
"event_summary": "The article claims scientists used a cheap consumer 3D printer to grow fully functional human hearts overnight.",
"commonsense_checks": [
"Current bioprinting is limited; fully functional hearts are still experimental.",
"Consumer printers do not support biological materials or sterile environments.",
"Such a breakthrough would appear in multiple major outlets, not only one source."
],
"verdict_advice": "likely_fake",
"explanation": "The claim contradicts current medical and hardware capabilities."
}
3) Distilled, no-LLM classifier prompt
You are a compact fake news detector trained to mimic a larger system that uses event extraction and commonsense reasoning. Given a news article, output: - `label`: `"real"` or `"fake"` - `confidence`: number in [0, 1] - `short_reason`: 1–2 sentences referencing the core event, not the writing style. Article: "A city reports that every bus, train, and taxi became free of charge permanently starting tomorrow, but no details are provided on funding…"
Expected output
{
"label": "fake",
"confidence": 0.83,
"short_reason": "The article claims a permanent, citywide free transport policy with no funding mechanism or official source, which is unlikely for a large structural change."
}
Practical Takeaways
- Decouple event from style. Explicit event extraction forces the model to reason about what happened, not just how it was written.
- Treat LLMs as advisors. Use them to generate structured hints; let a smaller model integrate them.
- Distillation makes this deployable. Heavy LLM calls happen offline; runtime stays lightweight.
- Pattern generalizes. Works for product reviews, policy compliance, risk scoring, and more.
Conclusion
FactGuard's main contribution is conceptual: don't fight fake news at the level of style; fight it at the level of events and commonsense. Use an LLM to surface what's going on and why it's suspicious, then let a cheaper model combine these signals efficiently.


