A Text Mining Approach for Evaluating Event Credibility on Twitter(一种在Twitter上评估事件可信度的文本挖掘方法)
目录
A Text Mining Approach for Evaluating Event Credibility on Twitter(一种在Twitter上评估事件可信度的文本挖掘方法)
摘要
原文的表达:
社交媒体平台上的用户倾向于相信与事件相关的帖子的内容。但是,其中一些事件可能是假的或令人难以置信的。此类事件的传播采取谣言的形式,有可能对个人和社会产生负面影响。为此,在本文中,我们开发了一种文本挖掘方法,用于自动评估社交网络上的事件。我们将Twitter作为案例研究,给定一系列热门的Twitter事件以及人工注释者手动分配的不同可信度等级,我们研究了自动评估此类事件的可信度的问题。本文使用从CREDBANK数据集中提取的事件进行了实验。一系列带有人类可信度判断的推文表明,我们的方法很有前景。通过决策树(DT)分类器,它可以对事件进行82.86%的自动可信度评估。
简而言之,就是作者通过传统机器学习的方法, 如支持向量机、决策树、随机森林、朴素贝叶斯等传统的分类方法,预测推特上事件的可信度,并取得了82.86%的准确率。
重要概念梳理
文中有一个很重要的概念就是事件的定义,事件及其相关的一些重要概念的定义如下:
传统意义上的事件(event)是指特定时间发生的一个现实事件,事件与一些按照时间顺序排列的信息相关联,在本文的任务中,这些信息就是用户在推特上发的推文。
在文中,事件的定义有所不同。首先,要先明白主题(topic)的概念,主题是从用户的流式推文(可以理解为按照时间顺序排列的推文)中通过运行LDA获得这个推文中的主题,这里的主题由LDA得到的前三个主题词(term)组成,于是每一篇推文都能得到一个短的主题文档(short topic documents),这个主题文档里面包含三个主题词。
说完了主题的概念,接下来是事件的概念,得到了主题文档后,接下来就是判断这个主题是不是事件,这里需要人工的参与,如果有6/10的标注者认为这个主题是事件,那么这个主题才能成为一个事件。文中的数据集就是这一步得到的事件。
得到了事件后,还需要人为的标准来决定这个事件是不是可信的,即给这个事件一个可信度,可信度的定义在接下来会具体说,这样拿到了有可信度的事件后,就可以把事件作为分类器的训练集了,当然还需要进一步的处理,这里也在后面会具体提到。
为了提高分类器的准确率,文中还提出一个TTM矩阵(topic-term matrix),构造这个矩阵需要了解主题文档语料库(topic document corpus)的概念,主题文档语料库的概念文中也没有具体提到,我的理解是对于上面说到的被确定为事件的主题,每个事件中都有三个主题词,把这些主题词全部汇总在一起,就称为主题文档语料库。TTM矩阵统计对于语料库中的每一个词,统计出现这个主题词的事件有多少,把出现的事件的次数作为一个特征放到分类器中,接着进行训练/预测,这就是文章的核心思想。
CREDBANK数据集
本文的训练数据就是通过对CREDBANK数据集的处理得到的。
原文的表述:
CREDBANK数据集是通过识别从Twitter的公共样本流中提取的推文中的主题来创建的。这些主题中的每一个都被确定为事件,并且使用人工注释器确定该事件是否包含准确(即可信)的内容。CREDBANK数据集是推文的大规模众包(和外包的概念相对,也就是随机请人标注,外包一般是专业团队)数据集,它有大约6000万条推文,每个事件的可信度是由来自Amazon Mechanical Turk(AMT)的30位人工注释者评估的。
数据集由四个文件组成,包括流式推文文件(streaming tweet file),主题文件(topic file),可信度注释文件(credibility annotation file)和搜索到的推文文件(searched tweet file),其中要用的只有可信度注释文件(credibility annotation file)。
可信度注释文件包含1377个事件及其相应的可信度等级。这些事件中的每一个都在CREDBANK主题文件中被大多数注释者(至少10个中的6个)评为事件。可信度注释文件包含以下4个字段:
topic key:这是两项的组合:(1)主题词(topic terms),一个事件中的三个主题词;(2)时间密钥(time key),提取出这个事件的推文发布的时间信息。
topic terms:三个主题词的列表表示,跟topic key中的主题词(topic terms)项目包含的信息相同,只是用了列表的形式表达:[u‘1st term’, u‘2nd term’, u‘3rd term’]
Cred Ratings:因为事件的可信度有30个标注者,所以它是30个评分组成的列表,每个可信度评分在[-2,+2]之间,一共5个等级,数值越大,可信度等级越高,+2表示完全可信,-2表示完全不可信。
Reasons:30个标注者给这个可信度评分的原因组成的列表。
对原始数据集的处理
文中只对可信度注释文件进行了预处理,步骤如下:
1. 删除无用的字符(如#,_和-)以及不需要的字段(如time_key)。
2. 删除topic terms字段,它的信息都在topic key字段中被包含了。
3. 删除Reasons字段,实验不需要标注的原因。
同时文中对原始语料的可信度进行了处理,分成了3个类别,将可信度预测任务转换为分类任务,三个类别如下:
绝对可信(Absolutely-credible):分数大于1.5
中等可信(Intermediate-credible):分数大于等于1,小于等于1.5
不可信(Incredible ):分数小于1
其中分数是类别中30个分数的平均值。
进行了上述处理后,得到的数据集如下所示:
左侧为三个主题词,右侧为可信度类别
进行实验
分类器:实验中用到的分类器有:Support Vector Machine (SVM), Decision Trees (DT), Random Forest (RF), and Naive Bayes (NB),即支持向量机、决策树、随机森林、朴素贝叶斯。
TTM矩阵的构建:主题词矩阵是使用Weka StringToWord向量过滤器生成的,此过滤器用于将字符串属性(事件文档中的3个主题词构成的字符串)转换为主题文档中出现主题词的频率,也就是上文中提到的出现的次数。换句话说,我们从输入的主题文本中提取了所有的主题词,并通过计算主题文档语料库中每个单词出现的次数(次数就是出现这个词的事件文档的总数)来计算每个单词的频率,接下来,这些频率/计数用作训练生成的分类器的特征。
实验结果
评估使用整体准确性(overall accuracy)作为评估生成的监督分类器的分类性能,精确率和召回率的方法
实验分类器的准确性如下:
表I中的结果表明决策树(DT)的准确度优于其他分类器,达到了82.86%的准确度
图2显示了每种类别的可信度下,分类器的精度:
SVM分别以0.845和0.833的准确率,在绝对可信度和难以置信的类别中实现了最佳精度,而RF在0.353的中等可信度的类别中获得了最佳精度。
图3显示了每种类别的可信度等级下,分类器的召回率:
DT以0.996的召回率,在绝对可信级别上实现了最佳召回,而SVM在0.134的中间可信级别上实现了最佳召回,最后NB在0.371的难以置信级别上实现了最佳召回。
最后作者把结果与相关方法进行了比较,平均而言,作者的方法实现了81.28%的分类精度,而其它方法仅实现了72%的精度。
相关方法的提出文献:M. Gupta, P. Zhao and J. Han Evaluating Event Credibility on Twitter. In Proceedings of the 12th SIAM International Conference on Data Mining, SDM 2012, pp.153-16, 2012.
参考文献追溯
社交网络上的信息可信度的预测分析:4,3,5,6,7,8
着重于预测推文本身的可信度,无论这些推文是否用于事件:4,3,7
预测事件的可信度(与本文的工作密切相关):5,6,8