library_name: transformers
tags: [虚假新闻检测, NLP, 分类, transformers, DistilBERT]
虚假新闻检测模型卡
模型概述
这是一个用于虚假新闻检测的微调DistilBERT模型。该模型根据文本内容将新闻文章分类为真实或虚假。训练数据来自多个渠道收集的真假新闻标注数据集。
模型详情
模型描述
- 开发者: Dhruv Pal
- 基础模型:
distilbert-base-uncased
- 语言: 英语
- 模型类型: 基于Transformer的文本分类模型
- 许可协议: MIT
- 用途: 社交媒体和新闻网站的虚假新闻检测
模型来源
用途
直接使用
- 可用于检测给定新闻文章的真伪
- 可集成到事实核查平台、虚假信息检测系统和社交媒体内容审核工具中
下游应用
- 可在特定领域的虚假新闻数据集上进一步微调
- 适用于媒体机构、新闻工作者和研究虚假信息的学者
非适用场景
- 不适用于生成新闻内容
- 对非英语文本效果可能不佳
- 不适合需要外部知识验证的复杂事实核查
偏差、风险与限制
风险
- 模型可能对训练数据中特定主题、来源或写作风格存在偏见
- 可能出现误报(真实新闻被误判为虚假)或漏报(虚假新闻被误判为真实)
- 对分布外样本的检测性能可能下降
建议
- 用户不应完全依赖该模型判断真实性
- 建议结合人工验证和多源交叉核对
使用方法
可通过transformers
加载模型进行推理:
from transformers import DistilBertTokenizerFast, DistilBertForSequenceClassification
import torch
tokenizer = DistilBertTokenizerFast.from_pretrained("your-model-id")
model = DistilBertForSequenceClassification.from_pretrained("your-model-id")
def predict(text):
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=512)
outputs = model(**inputs)
probs = torch.nn.functional.softmax(outputs.logits, dim=-1)
return "虚假新闻" if torch.argmax(probs) == 1 else "真实新闻"
text = "突发:科学家发现新元素!"
print(predict(text))
训练详情
训练数据
使用标注为真/假的新闻文章数据集训练,包含权威信源和虚假信息网站的内容
训练流程
-
预处理:
- 使用
DistilBertTokenizerFast
分词
- 去除停用词和标点
- 文本转为小写
-
训练配置:
- 模型:
distilbert-base-uncased
- 优化器: AdamW
- 批大小: 16
- 训练轮次: 3
- 学习率: 2e-5
计算资源
- 硬件: NVIDIA Tesla T4 (Google Colab)
- 训练时长: 约2小时
评估
测试数据
指标
- 准确率: 92%
- F1分数: 90%
- 精确率: 91%
- 召回率: 89%
结果
指标 |
得分 |
准确率 |
92% |
F1分数 |
90% |
精确率 |
91% |
召回率 |
89% |
环境影响
- 使用硬件: NVIDIA Tesla T4
- 总计算时长: 约2小时
- 碳排放: 使用ML影响计算器估算
技术规格
模型架构
- 基于DistilBERT轻量级Transformer架构,在保持精度的同时减少计算量
依赖项
transformers
torch
datasets
scikit-learn
引用
若使用本模型,请引用为:
@misc{DhruvPal2025虚假新闻检测,
title={基于DistilBERT的虚假新闻检测},
author={Dhruv Pal},
year={2025},
howpublished={\url{https://huggingface.co/your-model-id}}
}
联系方式
如有疑问请联系: