本篇文章1708字,读完约4分钟
作者
来源
现在假信息太多了,不容易找到准确的来源。 本论文的目的是利用朴素贝叶斯分类器对真伪信息进行分类。
朴素贝叶斯分类器是利用贝叶斯定理对数据进行分类的明确算法。 让我们来看一个例子
假设我们想预测一下今天下雨的概率。 这几天,我小心翼翼地收集了数据,注意天上的云。 这是你的数据表。
该表显示了特性出现的次数,无论是否在下雨。 假设有灰色的云或白云。 我们拥有的其实是包含下雨概率的表。
有数据的话,进行预测吧。 今天我们看到了灰色的云。 没有白云。 下雨还是晴天? 要回答这个问题,必须采用定理。
出了灰云,下雨的概率就等于前面的灰云。
根据我们的数据
p(a ) (降雨概率) =11/(50 ^ 11 ) =1/6
p(b ) (灰云出现的概率) =1(因为确认了灰云的出现)
p(a|b ) =[ ( ) *(1/6) ]/1
p(a|b ) =
通过对朴素贝叶斯分类器的简要介绍,讨论使用朴素贝叶斯分类器检测假信息。
考虑到信息为假,统计标题中单词出现的次数。 转换为概率,计算标题为假的概率,与标题为真的概率进行对照。
我的数据集有21000多个真实信息实例和23000个虚假信息实例。 这在正常的数据集中可能看起来很不平衡,但这种不平衡是计算初始概率所必需的。 标题是假概率。
代码:
这是程序的三个依赖。 熊猫正在读csv文件。 字符串是字符串操作。
true _ text = {2} false _ text = true = PD.read _ CSV ( '/users/xxxxxxx /桌面. true.CSV ' )在false=PD .中
def extract _ word (类别、目录):forentrincategory [ ' title ' ]:word = entry.split ( )前向世界: lowerd :前向世界
该脚本考虑到标题是假信息,对单词的出现次数进行计数,在词典的条目中添加计数,对各单词的出现次数进行计数。
defcount_to_prob(dictionary,长度):fortermindictionary :字典= dictionary /长度
该函数通过计算伪软文标题或实软文标题中的总字符数,将数字转换为概率。
def calculate _ probability (字典,x,初始):x .翻译( str .标记翻译( ',' )字符串) x = x
这个函数乘以相关概率,计算标题的“分数”。 为了进行预测,使用伪信息词典和真信息词典时比较分数。 在假信息词典返回的得分高的情况下,模型预测标题为假信息。
true_text提取_ words (真、真_文本)假_文本=提取_ words (假、假_文本)真_计数 false _ text = count _ to _ prob (真_ text )、真_ count ) false _ text = count _ to _ prob (假_ text、假文本、假)
该脚本采用了上述所有功能,可以为每个单词编写概率词典,以便以后计算标题的“分数”。
x = ' hillaryclinneatsdonaldtrump ' calculate _ probability ( false _ text,x,1 )计算_可能性( true _ text,1 )
最后一个脚本通过确定标题“hillaryclintoneatsdonaldtrump”来测试模型。
真实的
你可以改进我的程序。
为了让其他人能够改善那个,制定这个程序。 请考虑以下几点。
一个单词本身没有任何意义,但一个短语可以更深入地理解信息是否是假的。
在互联网上爬来爬去获取更大的数据集
原文链接:转发sdata science/using-Bayesian-classifiers-to-detect-false-news-3022 c 8255 FBA
欢迎访问关注潘闯人工智能博客的网站:
sklearn机器学习中文官方文档:
第123季/
docs .潘川/
标签: #信息事件检测模型
标题:“利用贝叶斯分类器检测虚假信息”
地址:http://www.hongyupm.com/gnyw/8544.html