论文笔记:《dEFEND: Explainable Fake N
摘要
- 作者认为目前的虚假新闻的检测研究缺少了可解释性,为什么一个新闻的片段被检测为虚假的?
- 作者提出了一个新闻句子和用户评论的共注意力机制的网络,目的是通过用户评论和新闻内容,找出top-k check-worthy 的新闻句子和用户评论。
引言
-
素材
the Pew Research Center announced that approximately 68% of US adults get news from social media in 2018, while only 49% reported seeing news on social media in 2012 (https://tinyurl.com/ybcy2foa)
a report estimated that over 1 million tweets were related to the fake news story “Pizzagate” by the end of 2016 presidential election(https://tinyurl.com/z38z5zh)
the reach of fake news during the 2016 U.S. presidential election campaign for top-20 fake news pieces swas, ironically, larger than the top-20 most-discussed true stories (https://tinyurl.com/y8dckwhr)
fake news claiming that Barack Obama was injured in an explosion wiped out $130 billion in stock value (https://tinyurl.com/ybs4tgpg)
-
作者解决的三个挑战:
- 如何进行可解释的虚假新闻检测,以同时提高检测性能和可解释性;
- 在没有真实值的情况下,如何抽可解释的评论?
- 如何模拟新闻内容和用户评论之间的关联性以进行可解释的虚假新闻检测?
-
作者认为的贡献:
- 提出了一个新颖的可解释的虚假新闻网络
- 联合利用新闻内容和用户评论抓住了可解释的用户评论。
相关工作
- 虚假新闻检测方法聚焦在利用news contents 和 social contexts。
- News contents 特征一般通过抽取textual 和 visual 获得。
- social contexts的主要包括,user-based, post-based 和 network-based
问题陈述
- 新闻内容中句子的可解释性表示其可检查性的程度,而评论的可解释性则表示用户相信的程度
模型
-
作者的模型包含四部分:
- 新闻内容编码部分:单词和句子级别的编码。分层的注意力神经网络
- 用户评论编码部分:单词级别的注意力网络
- 新闻句子和评论的共注意力部分:抓住句子和评论的关联性,选出top-k个可解释的句子和评论
-
预测部分
模型架构
-
和
相关的都是需要学习的矩阵参数
新闻内容编码
单词编码
-
作者直接将单词过了双向GRU,然后将得到的结果拼接在一起,就得到结合上下文单词的表示
单词过双向GRU
-
因为每个单词对句子的贡献不一样,因此作者通过注意力机制计算每个单词的权重。
计算单词权重
-
然后加权求出句子的表示
加权求句子的表示
句子编码
-
作者直接将上一步得到的句子表示过双向GRU,然后拼接,就得到了结合上下文的句子表示
句子过双向GRU
用户评论编码
-
将单词过双向GRU,然后拼接得到单词上下文表示,然后计算每个单词对句子贡献的权重,然后加权求和计算句子表示。
单词过Bi-GRU
算单词权重
加权求和得到句子表示
句子和评论的共注意力机制
- 构建一个新闻的句子句子
和该新闻的评论矩阵
,然后计算affinity matrix(亲和矩阵、相似性矩阵)
相似性矩阵计算
-
然后计算评论和新闻句子见的注意力映射
映射学习
-
然后学习到了每个评论和新闻句子的注意力权重
权重
-
加权求最终的句子和评论注意力表示
注意力表示
预测
-
拼接得到的句子和评论注意力表示,接全连接网络通过sofamax
softmax
实验
数据集
- FakeNewsNet的两个数据集,包括PolitiFact和GossipCop
- 作者的实验前提出了三个问题:
- 这个模型能提高虚假新闻检测效果?
- 新闻内容和用户评论分别在提高检测效果方面有多有效?
- 模型抓住的新闻内容和评论能解释该新闻为何为假新闻吗?
实验结果
实验结果
- 作者还给出了实验的相关开源代码:
RST: we used the publicly available implementation for paper
[17]: https://github.com/jiyfeng/DPLP
• LIWC: we used the publicly available tool at:
http://liwc.wpengine.com/
• text-CNN: we used the publicly available implementation at:
https://github.com/dennybritz/cnn-text-classification-tf
• HAN: we used the publicly available implentation at:
https://github.com/richliao/textClassifier
• TCNN-URG: we implemented this algorithm based on the
description in the paper [35], and shared the code, named as
tcnn.py, in the above link
• HPA-BLSTM: we used the implementation provided by the
authors of [13]
• CSI: we used the implementation available at:
https://github.com/sungyongs/CSI-Code
• dEFEND:we implemented our algorithm in Python–defend.py
for main algorithm and go_defend.py for data processing–
and shared them in the https://tinyurl.com/ybl6gqrm
问题一
- 作者试验过程中的发现:
- 作者的模型确实牛
- LIWC 可以更好的抓住文本的语言特征
- 依据揭露心理学特征的单词,虚假新闻的片段与真实新闻是不相同的
- 同时利用新闻内容和用户评论的效果比仅仅依靠新闻内容的效果要好。
- 用户评论可以补充信息,提高检测效果
- 基于用户评论的方法比基于新闻内容的方法好一点
问题二
- 为回答问题二,作者对模型进行了一些变化,形成了以下几个模型:
- 在原本模型的基础上去除用户评论模块
2.在原本模型的基础上去除新闻内容模块
3.在原本模型的基础上去除共注意力机制,分别在新闻句子和用户评论上采用自注意力机制
- 在原本模型的基础上去除用户评论模块
问题三
新闻句子的可解释性
- 评判标准为:ClaimBuster 提出的方法,给每个句子一个分数,分数为0-1,得分越高,表明该句子越可能包含check-worthy的事实。
- 通过和另一个baseline对比
- 是否通过模型获取的top-k句子和虚假新闻是更相关的。
用户评论
- 通过和另一个baseline对比,生成两个用户评论列表,看哪个更好
- 通过众包的方式挑选列表
- 还有让用户判断获得的用户评论列表中的评论是不是具有可解释性。