论文题目:Unsupervised Fake News Detection on Social Media: A Generative Approach

论文来源:AAAI 2019

论文链接:https://www.aaai.org/ojs/index.php/AAAI/article/view/4508

代码链接:无

关键词:无监督;假新闻检测;社交网络

概率图推导看的眼花缭乱,这篇文章读得半懂不懂的,我数学太菜了…


文章目录

  • 1 摘要
  • 2 引言
  • 3 模型
    • 3.1 分层用户参与
    • 3.2 问题建模
    • 3.3 概率图模型
    • 3.4 问题形式化
  • 4 假新闻检测算法
    • 4.1 吉布斯采样
    • 4.2 更新规则
    • 4.3 假新闻检测算法
    • 4.4 用户可信度
  • 5 实验
  • 6 总结

1 摘要

本文解决的是假新闻检测问题。

现有方法的局限性

绝大多数方法都是有监督的,需要大量的人力和时间构建高质量的数据集。

本文提出

(1)使用无监督的方式检测假新闻。

(2)将新闻的真实性和用户的可信度视为隐藏的随机变量,并利用用户在社交媒体上的行为来识别他们对新闻真实性的看法。

(3)利用贝叶斯网络模型捕获新闻真实性、用户观点和用户可信度之间的条件依赖。为了解决推断问题,作者提出一个有效的坍塌的吉布斯采样方法,不使用任何标注数据,实现对新闻真实性和用户可信度的推断。

实验结果表明该方法超越了其他无监督的方法。

2 引言

动机

(1)现有的假新闻检测方法绝大多数都是基于监督学习的方法,需要大量高质量的标注数据训练分类模型,耗费时间和人力。

(2)使用众包的方法进行数据标注的质量堪忧。而且,单个人自己若没有领域专家的知识,很难区分真假新闻。


本文提出

使用无监督的方法检测假新闻。

利用社交媒体上的用户和新闻帖子的交互抽取出用户的观点,然后使用设计好的无监督方法聚合用户的观点得到我们估计的结果。

作者发现随着新闻的传播,用户的参与是不同的,例如发布新闻帖子、点赞、跟帖或回复帖子。这些信息在某种程度上反映了用户对新闻的观点。


挑战

(1)社交媒体上用户的参与信息以及抽取出的用户观点,通常是冲突的和不可信的,因为用户在识别假新闻时通常具有不同的可信度。

(2)假新闻是精心撰写的,目的就是为了误导读者,因此大多数用户的观点可能是不可信的。使用多数投票和均值等简单的方法是不行的。

(3)可使用真相发现算法(turth discovery algorithms),使用多个数据源解决信息冲突问题。然而这种算法仅适用于source-item模型,可视为二部图,其中每个边表示每个source-item对的数据。可是,社交媒体上的新闻、帖子和用户间的关系是很复杂的,现有的真相发现算法不适用。


本文提出的方法

本文提出无监督框架UFD

  • 首先,通过分析用户在社交媒体上的行为,抽取出用户对新闻的观点;
  • 然后,构建贝叶斯概率图模型捕获新闻真相的完整生成过程以及用户观点。
  • 提出了一个有效的坍塌吉布斯采样方法,以检测假新闻并评估用户的可信度。

3 模型

3.1 分层用户参与

用户分层参与模型的概览如图2所示。

对于数据集中的每个新闻,都可以得到和其相关的一系列帖子,以及相对应的用户行为(点赞、转发和回复)。

由知名大V发布的帖子可以吸引更多的注意力,大多数未认证的、不出名的用户得到的关注较少。基于这一发现,作者将用户分为两类:1)认证过的用户;2)未认证的用户。

在准备数据时,作者仅考虑由认证过的用户发布的帖子,以及相关的未认证用户的社交行为。

这样做的好处:

(1)可缓解长尾现象。因为,未认证的用户发布的帖子占绝大多数,但和这些帖子有关的社交行为很少,考虑这些帖子将会引入大量的噪声,不利于识别假新闻。

(2)将用户分为已认证和未认证用户两类,引入了一个隐含的假设:已认证的用户可能在辨别真假新闻时有更高的可信度。

(3)利于模型的简化。社交媒体上的用户行为是复杂的、不完全的、有噪声的,完美地描述用户行为是很难的。通过聚焦于一小部分的数据,可以简化接下来的问题建模并且减少问题形式化的复杂度。

3.2 问题建模

  • N\mathcal{N}N:新闻集合
  • M,K\mathcal{M}, \mathcal{K}M,K分别表示已认证的和未认证的用户集合;
  • 对于给定的新闻i∈Ni\in \mathcal{N}i∈N,Mi⊆M\mathcal{M}_i \subseteq \mathcal{M}Mi​⊆M表示发布了和该新闻相关的帖子的已认证用户;
  • 对于每个已认证用户j∈Mij\in \mathcal{M}_ij∈Mi​的帖子,收集未认证用户的社交行为Ki,j⊆K\mathcal{K}_{i,j} \subseteq \mathcal{K}Ki,j​⊆K;
  • 对于新闻iii,xi∈{0,1}x_i\in {\{0, 1}\}xi​∈{0,1}表示新闻的真实性,0表示假新闻,1表示真新闻。

为了判断新闻是否是假新闻,我们需要从用户的交互行为中抽取出用户对新闻的观点。

  • 对于已认证的用户j∈Mij\in \mathcal{M}_ij∈Mi​,令yi,j∈{0,1}y_{i, j}\in {\{0, 1}\}yi,j​∈{0,1}表示用户对新闻的观点,1表示用户认为新闻为真,0表示用户认为新闻为假。

NewsiNews_iNewsi​表示新闻内容,Tweeti,jTweet_{i,j}Tweeti,j​表示用户jjj自己的帖子的文本。yi,jy_{i, j}yi,j​可以定义为用户对Tweeti,jTweet_{i,j}Tweeti,j​的情感,或者是对Tweeti,jTweet_{i,j}Tweeti,j​的观点是否和对NewsiNews_iNewsi​的观点冲突。

  • 对于已认证用户jjj发布的关于新闻iii的帖子,许多未认证的用户可能点赞、转发或者回复该帖子。令zi,j,k∈{0,1}z_{i, j, k}\in {\{0, 1}\}zi,j,k​∈{0,1}表示未认证用户k∈Ki,jk\in \mathcal{K}_{i, j}k∈Ki,j​的观点。

假设:

(1)若用户kkk点赞或者转发了帖子,则表示kkk同意该帖子的观点;

(2)若kkk回复了帖子,则可以使用现成的情感分析或冲突观点挖掘方法,抽取出他的观点;

(3)未认证用户针对同一帖子进行了多种行为,例如点赞并回复。则使用多数投票方法得到其观点。

3.3 概率图模型

给定xi,yi,j,zi,j,kx_i, y_{i, j}, z_{i, j, k}xi​,yi,j​,zi,j,k​的定义,我们给出UFD框架,概率图模型如图 3所示。

图中的每个节点都表示一个随机变量或者先验参数,其中深色节点和浅色节点分别表示可观察到的和隐式的变量。

1、新闻

对于新闻iii,表示其真假的xix_ixi​从伯努利分布中得到:

参数θi\theta_iθi​的先验概率是从超参数为γ=(γ1,γ0)\gamma = (\gamma_1, \gamma_0)γ=(γ1​,γ0​)的贝塔分布中得到的,其中γ1\gamma_1γ1​是先验真实计数,γ0\gamma_0γ0​是先验虚假计数。如果不能很确定,则可以为每个新闻是真或假分配均匀先验分布。


2、已认证用户

对于每个已认证用户jjj,使用两个变量ϕj1,ϕj0\phi^1_j, \phi^0_jϕj1​,ϕj0​建模其识别假新闻的可信度。其中,ϕj1\phi^1_jϕj1​表示真阳率(sensitivity),ϕj0\phi^0_jϕj0​表示假阳率(1-specificity )。

这两个参数表示在给定新闻是真或假的真实估计的条件下,用户jjj认为新闻是真实的概率。使用分别带有参数α1=(α11,α01)\alpha^1 = (\alpha^1_1, \alpha^1_0)α1=(α11​,α01​)和α0=(α10,α00)\alpha^0 = (\alpha^0_1, \alpha^0_0)α0=(α10​,α00​)的贝塔分布分别得到每个用户的真阳率和假阳率。贝塔分布的参数:α11\alpha^1_1α11​表示先验真阳计数,α01\alpha^1_0α01​表示先验假阴计数,α10\alpha^0_1α10​表示先验假阳计数,α00\alpha^0_0α00​表示先验真阴计数。

给定ϕj1\phi^1_jϕj1​和ϕj0\phi^0_jϕj0​,每个已认证用户jjj对新闻iii的观点可以从带有参数ϕjxi\phi^{x_i}_jϕjxi​​的伯努利分布中得到:


3、未认证用户

和已认证用户不同,未认证用户参与了已认证用户的帖子,他们的观点可能受到新闻本身以及已认证用户观点的影响。

因此对于每个未认证用户k∈Kk\in \mathcal{K}k∈K,接下来的4个变量将用于建模其可信度:

对于每个(u,v)∈{0,1}2(u, v)\in {\{0, 1}\}^2(u,v)∈{0,1}2,ψku,v\psi^{u, v}_kψku,v​表示在给定新闻的真实估计uuu和已认证用户的观点vvv的条件下,用户kkk认为该新闻为真的概率。

每个ψku,v\psi^{u, v}_kψku,v​由超参为βu,v\beta^{u, v}βu,v的贝塔分布中得到:

给定新闻的真实估计xix_ixi​和已认证用户的观点yi,jy_{i, j}yi,j​,可从参数为ψkxi,yi,j\psi^{x_i, y_{i, j}}_kψkxi​,yi,j​​的伯努利分布中得到未验证用户的观点:

3.4 问题形式化

我们的目标是找到最大化联合概率的隐藏真实变量的实例,例如为xxx得到最大化后验概率(MAP):

其中,Φ\PhiΦ和Ψ\PsiΨ分别表示{ϕ0,ϕ1}{\{\phi^0, \phi^1}\}{ϕ0,ϕ1}和{ψ0,0,ψ0,1,ψ1,0,ψ1,1}{\{\psi^{0,0}, \psi^{0,1}, \psi^{1,0}, \psi^{1,1}}\}{ψ0,0,ψ0,1,ψ1,0,ψ1,1}。

4 假新闻检测算法

作者提出有效的坍塌吉布斯采样算法以同时估计新闻的真实性和用户的可信度。

4.1 吉布斯采样

准确地推断是不可行的,于是作者使用吉布斯采样方法估计多元分布。由于指数族的共轭性,未知参数θ,Φ,Ψ\theta, \Phi, \Psiθ,Φ,Ψ可在采样过程中被整合掉。因此,我们仅需要基于如下的条件概率,迭代地采样每个新闻的真实性:

其中s∈{0,1}s\in {\{0, 1}\}s∈{0,1},x−ix_{-i}x−i​表示除了新闻iii以外的所有新闻的真实估计。

4.2 更新规则

使用贝叶斯规则,等式(2)可以重写为:

其中yi,∗y_{i, *}yi,∗​表示关于新闻iii的所有已认证的用户的观点,zi,∗,∗z_{i, *, *}zi,∗,∗​表示关于新闻iii的所有未认证的用户的观点。

等式(3)中的第一项是先验,第二项是可能性。先来看第一项,其中B\BetaB是贝塔函数:

对于等式(3)中的第二项,有:

对于等式(5)中的内部项,有:

其中,nk,−i,zi,j,ks,yi,jn^{s, y_{i, j}}_{k, -i, z_{i, j, k}}nk,−i,zi,j,k​s,yi,j​​表示当新闻不是iii,新闻iii的真实估计为sss,已认证用户对新闻iii的观点为yi,jy_{i, j}yi,j​时,未认证用户kkk的观点值为zi,j,kz_{i, j, k}zi,j,k​的个数。对于等式(6)的最后一步有:

对于等式(5)的外部项,有:

其中mj,−i,yi,jsm^s_{j, -i, y_{i, j}}mj,−i,yi,j​s​是当新闻不是iii并且新闻的真实估计为sss时,观点值为yi,jy_{i, j}yi,j​的已认证用户的个数。等式(7)的最后一步有:

结合等式(4)、(6)和(7),我们得到坍塌吉布斯采样的更新规则:

4.3 假新闻检测算法

算法1中展示了伪代码。

  • 首先,随机初始化每个新闻的真实估计为0或1;
  • 基于初始的真实估计,计算每个已认证和未认证用户的计数;
  • 迭代进行采样过程。每个迭代中,在等式(8)条件分布中采样每个新闻的真实估计,并更新每个用户的计数。

正如其他马尔科夫链蒙特卡罗(MCMC)算法一样,吉布斯采样器生成了与附近样本相关的样本的马尔科夫链。因此,链开头的样本或许不能准确地表示想要的分布,因此我们抛弃了最初几次迭代的样本(the burn-in period)。此外,还进行了thinning操作,以减少样本中的相关性。最终骂我们计算得到的样本的平均值,并缩放到0和1之间以作为新闻最终的估计。

4.4 用户可信度

用户识别假新闻的可信度可以很容易地使用封闭形式解获得,因为后验概率也是一个贝塔分布。

对于每个已认证用户j∈Mj\in \mathcal{M}j∈M,真阳率和假阳率如下:

其中E[mj,yi,jxi]\mathbb{E}[m^{x_i}_{j, y_{i, j}}]E[mj,yi,j​xi​​]是新闻真实估计为xix_ixi​且jjj的观点为yi,jy_{i, j}yi,j​时,jjj计数的期望值。可以使用采样过程中记录的mj,yi,jxim^{x_i}_{j, y_{i, j}}mj,yi,j​xi​​的平均值计算得到。每个未认证用户的真阳率和假阳率也可以相应地计算得到。

5 实验

1、数据集

LIAR和BuzzFeed News

2、Baselines

  • Major Voting:对于每个新闻,已认证用户的多数观点作为其估计结果;
  • ThruthFinder:基于已认证用户帖子间的冲突关系,迭代地计算每个新闻的真实估计;
  • LTM:基于概率图的真相发现算法,只适用于简单的source-item模型;
  • CRH:使用单个未知的变量建模每个用户的可信度,代表用户贡献数据的总体准确性。

3、实验结果

α\alphaα先验的影响:

用户可信度估计:

6 总结

本文解决的是假新闻检测问题,亮点在于使用无监督的方法进行假新闻检测。

作者从用户的分层社交行为中抽取出其观点。将新闻的真实性和用户的可信度视为隐藏的随机变量,构建概率图模型捕获完整的生成频谱。提出了有效的吉布斯采样方法,同时估计新闻的真实性和用户的可信度。在两个数据集上进行实验,本文提出的UFD方法超越了其他无监督的方法。

未来工作:将新闻内容特征和用户属性整合到当前的假新闻检测模型中。构建半监督学习的框架以提升无监督模型的性能。

【论文解读 AAAI 2019 | UFD】Unsupervised Fake News Detection on Social Media: A Generative Approach相关推荐

  1. 论文阅读-虚假信息检测综述 - Fake News Detection on Social Media: A Data Mining Perspective

    论文链接:https://arxiv.org/pdf/1708.01967.pdf 目录 摘要 1 引言 2. 假新闻定义 2.1 假新闻的定义 2.2 传统新闻媒体上的假新闻 2.3社交媒体上的假新 ...

  2. 【论文翻译 虚假新闻检测综述 KDD 2017】Fake News Detection on Social Media: A Data Mining Perspective

    论文题目:Fake News Detection on Social Media: A Data Mining Perspective 论文来源:KDD 2017 美国亚利桑那州立大学, 美国密歇根州 ...

  3. NLPCC2019 - User-Characteristic Enhanced Model for Fake News Detection in Social Media

    前言 在大四上学期的一门课上研读了一篇关于虚假新闻检测的顶会论文,后对这个领域产生了浓厚兴趣,在毕业论文选择了社交媒体上的虚假新闻检测来作为题目,最终论文成果有幸被NLPCC2019会议所收录,算是科 ...

  4. 京东AI研究院8篇论文被AAAI 2019收录,国际顶会彰显京东科技实力

    https://www.toutiao.com/a6651795835203879432/ 2019-01-29 20:55:00 美国时间1月27日,AAAI 2019大会在夏威夷正式拉开序幕,AA ...

  5. 【论文解读 AAAI 2020 | Bi-GCN】Rumor Detection on Social Media with Bi-Directional GCN

    论文题目:Rumor Detection on Social Media with Bi-Directional Graph Convolutional Networks 论文来源:AAAI 2020 ...

  6. 【Eye】Fake News Reading on Social Media: An Eye-tracking Study

    Fake News Reading on Social Media: An Eye-tracking Study Abstract 在网上传播假新闻(以及一般的虚假信息)最近被认为是威胁整个社会的一个 ...

  7. 【论文解读 WWW 2019 | MVAE】Multimodal Variational Autoencoder for Fake News Detection

    论文题目:MVAE: Multimodal Variational Autoencoder for Fake News Detection 论文来源:WWW 2019 论文链接:https://doi ...

  8. 【论文解读 ICDM 2019 | MVNN】Exploiting Multi-domain Visual Information for Fake News Detection

    论文题目:Exploiting Multi-domain Visual Information for Fake News Detection 论文来源:ICDM 2019 论文链接:https:// ...

  9. 【论文解读 ASONAM 2019】Semi-Supervised Learning and Graph Neural Networks for Fake News Detection

    论文题目:Semi-Supervised Learning and Graph Neural Networks for Fake News Detection 论文链接:https://ieeexpl ...

最新文章

  1. IT小妙招之:快马加鞭,Windows 7启动大提速
  2. mysql 开发进阶篇系列 10 锁问题 (使用“索引或间隙锁”的锁冲突)
  3. 物联网奇点:给物联网设备使用的Docker
  4. .net操纵xml文件类(c#)
  5. 32位mysql安装包_《MySQL 入门教程》第 02 篇 MySQL 安装
  6. excel取整函数_数据分析小白学习之路(三)——Excel多练熟能生巧
  7. 区块链的那些事,你知道和不知道的都在这里!
  8. 多叉树的前序遍历_二叉树的非递归遍历的思考
  9. 怎样才算得上合格的程序员,教你一招
  10. python两个一维数组合并_python:16.合并两个排序的链表
  11. ADO.net中临时表DataTable的简单应用
  12. 一只老猴子说的话,太经典了!
  13. call()与apply()的区别与作用
  14. ios开发学习--选项卡(Tab Bar) 效果源码分享--系列教程
  15. sklearn学习笔记之preprocessing
  16. Ubuntu下好用的小工具
  17. oracle 11g DG 物理搭建 DG切换模式
  18. 电脑找回,怎么找回电脑上删除的文件_怎么找回电脑删除的文件-win7之家
  19. 用python画钢铁侠图片_Photoshop快速把钢铁侠图片转为素描水墨风格教程
  20. matlab 自激振荡,基于Simulink的非线性系统自激振荡的仿真

热门文章

  1. 解决后端乱码,制作支持中文字体JRE8基础镜像
  2. sap的清账是什么意思_SAP部分清账与剩余清账
  3. PLC单片机实验开发系统装置QY-DPJ12
  4. mupdf 生成dll
  5. Unity2017.4.26 修改AndroidSdkVersions 增加 AndroidApiLevel29 AndroidApiLevel30 AndroidApiLevel31
  6. 【FPGA教程案例34】通信案例4——基于FPGA的QPSK调制信号产生,通过matlab测试其星座图
  7. 自学java,学多久可以自己找到工作?
  8. 小唐开始刷蓝桥(八)2013年第四届C/C++ B组蓝桥杯省赛真题
  9. ModuleNotFoundError: No module named ‘termios‘
  10. Microstation VBA创建圆弧的五种方法