CoolFace
Modelpublic

Arko007/fact-check1-v1

sourceHugging Facemitupdated 1y agoView on Hugging Face
1likes14downloads
Model Card

๐Ÿ† Elite Fake News Detection Model

Model Description

This is a state-of-the-art fake news detection model based on DeBERTa-v3-large, achieving 99.98% accuracy on validation data. The model was fine-tuned on a carefully curated and deduplicated dataset combining multiple high-quality fake news datasets, totaling 51,319 samples after preprocessing.

๐Ÿš€ Performance Highlights

  • โ€”Validation Accuracy: 99.98%
  • โ€”Test Accuracy: 99.94%
  • โ€”F1-Score: 99.98%
  • โ€”Precision: 99.97%
  • โ€”Recall: 100.00%

Model Architecture

  • โ€”Base Model: microsoft/deberta-v3-large
  • โ€”Task: Binary Text Classification (Real vs Fake News)
  • โ€”Parameters: ~400M parameters
  • โ€”Training Hardware: NVIDIA A100-SXM4-80GB

Training Details

  • โ€”Training Steps: 640
  • โ€”Batch Size: 64
  • โ€”Learning Rate: 3e-05
  • โ€”Max Length: 512 tokens
  • โ€”Training Time: 0.43 hours
  • โ€”Gradient Checkpointing: Non-reentrant (memory optimized)

Dataset Information

Total Samples: 51,319

  • โ€”Training: 41,055 samples
  • โ€”Validation: 5,132 samples
  • โ€”Test: 5,132 samples
  • โ€”Fake News: 30,123 samples
  • โ€”Real News: 21,196 samples Source Datasets:
  • โ€”mrisdal/fake-news
  • โ€”jainpooja/fake-news-detection
  • โ€”clmentbisaillon/fake-and-real-news-dataset

Usage

python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

# Load model and tokenizer
model_name = "Arko007/fact-check1-v1"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)

# Example prediction function
def predict_fake_news(text):
    inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=512)
    with torch.no_grad():
        outputs = model(**inputs)
        probabilities = torch.nn.functional.softmax(outputs.logits, dim=-1)
        prediction = torch.argmax(probabilities, dim=-1).item()

    labels = {0: "REAL", 1: "FAKE"}
    confidence = probabilities[0][prediction].item()

    return {
        "prediction": labels[prediction],
        "confidence": confidence,
        "probabilities": {
            "REAL": probabilities[0][0].item(),
            "FAKE": probabilities[0][1].item()
        }
    }

# Test the model
text = "Breaking: Scientists discover new planet in our solar system!"
result = predict_fake_news(text)
print(f"Prediction: {result['prediction']} ({result['confidence']:.2%} confidence)")

Model Performance

This model achieves research-grade performance on fake news detection, with near-perfect accuracy across all metrics. The high precision and recall indicate excellent balance between catching fake news while avoiding false positives on real news.

Limitations and Bias

  • โ€”Trained primarily on English news articles
  • โ€”Performance may vary on news domains not represented in training data
  • โ€”May reflect biases present in the source datasets
  • โ€”Designed for binary classification (fake vs real) only

Citation

bibtex
@misc{fake-news-deberta-2025,
author = {Arko007},
title = {Elite Fake News Detection with DeBERTa-v3-Large},
year = {2025},
publisher = {Hugging Face},
url = {[https://huggingface.co/](https://huggingface.co/)Arko007/fact-check1-v1}
}

License

MIT License - Feel free to use this model for research and applications. --- Built with โค๏ธ using A100 80GB + DeBERTa-v3-Large