前言

本文针对发表自science上的文章The spread of true and false news online一文的Supplementary Materials的前20页进行解读。
该文章主要讲的是,在社交媒体中,假新闻相对于真新闻而言在社交媒体上传播更快更广更深,之后作者探索其原因,发现假新闻的新颖程度更高。然后将新颖程度作为真假新闻的原因之一。
在Supplementary Materials中,对该文章中的一些概念和方法进行的介绍,也是该文章工作过程中的思考过程。其中前20页是纯粹的概念。Supplementary Materials是该文章的补充说明。

Supplementary Materials

首先是对该文章中研究主体True News,False News、Rumor and Rumor Cascade进行描述和定义
在该文章中,研究的news不是单纯的报刊发布的新闻,而是将推特上任何带有断言的故事或声明都看作是news,而不再乎其是否来源于机构。简单的说,就是任何有主观观点,任何有意义的推文都是news。

rumor则定义成新闻故事或者声明在推特网络上传播的一种社会现象。

rumor cascade定义成:谣言的传播过程可以描述为一个或多个级联,,这种模式展示了一个具有共同、单一起源的连续转发链。例如:当以个用户1关于某个断言发布了故事或声明A,这就开始了一个谣言级联,当用户2关于同个断言发布了新的故事或声明B,这就是开始第二个级联。两个级联相互独立,它们展示了同一个谣言的两个级联。总的来说,该文章通过谣言级联这一概念来描述新闻传播的过程。

关于rumor cascade,它有两个属性,number of cascade,即多少个级联(针对同一个主题);size of cascade,即单个级联的原始推文被转发了多少次。


在作者进行收集实验数据时,遇到了一个问题:如何保证自己数据中的真新闻就是真新闻,假新闻就是假新闻呢?

针对这一问题,作者的同事建议通过新闻的可靠来源来判断新闻的真假,(即,假如消息来源是可靠的,比如很大很公正的媒体,那我们就认为他们发布的新闻就如他们所说是真是假。)但这一建议被否决。
否决的原因是:

  • 首先即使消息来源可靠,他们发布的新闻也不一定就是可靠的。众所周知,一些媒体会因为政治目的而故意给新闻打上真实或虚假的标签来误导民众,从而实现自己的政治目的。
  • 其次,对于哪些消息来源是可靠的这并没有结论,每个人群对于各个新闻机构的信任度都不一样,保守派民众认为可信的机构在自由派民众看来并不可信,反之亦然。从下图figure
    1可以看到,基本上所有的新闻媒体都不能称为可信消息来源。
    (figure 1)
  • 最后,许多美国民众认为,发布多少比例的可信新闻的机构与该机构是否可信并没有必然关系,也就是说一个机构之前发布了再多的准确的新闻,也不能保证下一次发布的新闻一定是准确的。(有点像马尔科夫过程)

基于以上原因,于是作者没有采纳同事的建议,而是选择了:采用多个独立事实检测机构:
snopes.com, politifact.com, factcheck.org, truthorfiction.com, hoax-slayer.com, urbanlegends.about.com

figure 2(snopes.com)
为了排除这些事实检测组织的选择偏颇,选择了一个新的新闻数据集,其真假是由作者聘请的三名独立的事实检测员来人工检测。


接下来便是收集数据。介于之前提到的谣言级联的概念。本文将谣言的传播过程描述成了谣言级联,当用户关于一个主题发布推文的时候(包含文本信息,图片或者链接),谣言级联便开始了,之后其他用户通过转发来转播。

推文的评论中有时会包含着事实检测机构的链接,证实原始推文的信息为真或者为假。除了链接,推文中经常包含一些图片,通过谷歌搜索来寻找图片的链接。

找到这些评论所回复的原始推文,将原始推文以及它的转发推文抓取下来
在抓取谣言推文的回复推文过程中,不考虑评论的评论。
利用推特api来获取2006.9-2016.9的包含链接的推文,一共有500K个推文。


下面进行一些真假判断的处理。

每个检测机构对新闻真假性的分级规则不同,有的是分了五个级别:真实、比较真实、混合,比较假、假,而有的是打分,对此进行统一,把新闻真假类别映射成真新闻,假新闻,混合新闻三类。

对于同一个新闻,可能不同事实检测组织给出的判定结果不同时,多数为准确。

上述组织已经给新闻加上了一个主题,根据这些主题分类,将新闻分成7类,政治、都市传奇、商业、科技、恐怖主义、战争、娱乐和自然灾害。对于没有主题标签的,用人工标记的方式来解决。


数据过滤
通过对比链接文章的标题和原始推文的标题,来删除直接包含事实检测网站的推文(因为该推文已经被证实真或假,本文想要研究未经证实和有争议的信息时如何传递)
经过上述操作,158K个级联幸存。

使用ParagraphVec和Tweet2Vec算法将链接文章标题和原始推文转换成向量来捕获它们的语义内容,使用余弦相似性来测量向量们之间的距离,当相似性低于0.5,则移除,0.5~0.9,则人工审查,高于0.9,则正确。
该阶段移除了10331个级联。

使用了机器人检测算法,将13.2%的被认定为机器人账户移除。

在经过数据处理之后,剩下了126301个谣言级联。
关于2448个谣言,其中1699个是假新闻,490为真,259混合。
126301个谣言级联中,,其中82605是假新闻级联,24409是真新闻级联,19287是混合新闻级联。


构建谣言传播轨迹
由于推特api提供的转发树,所有转发推文都指向了原始推文,这并不是真实的传播轨迹,需要修正。

修正的方式是通过粉丝信息来修正的。

例如:

a中是推特api提供的转发树,所有的节点都指向了原始的的节点。作者通过b中的粉丝信息,得知C用户关注了B用户却没有关注A用户,从而判断,关于该推文,C用户是从B用户那里转发的,而不是从A用户。如此一来,便得到了c中的传播轨迹。
针对更一般的情况,修正工作的成果如下图所示,更加清晰。

之后的研究都是建立在修正的结果上的。

其中用到来得粉丝信息是通过推特api返回粉丝信息的逆时序 结合 用户什么时候加入推特 来大致推断得到的。


谣言级联特征·静态特征

  • depth:某一节点到根节点的边的个数,而级联的深度是最大节点深度,如a所示
  • size:级联中的用户数(每个用户转发推文只能转发一次)如b所示
  • structural virality:级联中各个点之间的平均距离,如c所示
  • max-breadth:级联中每个深度都有许多个节点,节点个数最大的即使宽度,如d所示

谣言级联特征·动态特征

  • depth over time:达到不同深度的平均时间

  • unique users over time:达到不同用户时的平均时间

  • breadth vs depth:每个深度的宽度

  • unique users vs depth:不同深度的总用户数量


Supplementary Materials for The spread of true and false news online 解读相关推荐

  1. Pandas映射(转化)dataframe中的布尔值True和False值到1和0数值、使用astype函数

    Pandas映射(转化)dataframe中的布尔值True和False值到1和0数值.使用astype函数 目录

  2. R语言嵌套的ifelse语距:将一条If语句放在另一条If语句中,该语句作为嵌套的If else调用。If else语句允许我们根据表达式结果(TRUE或FALSE)打印不同的语句,执行不同的语句块

    R语言嵌套的ifelse语句:将一条If语句放在另一条If语句中,该语句作为嵌套的If else调用.If else语句允许我们根据表达式结果(TRUE或FALSE)打印不同的语句,执行不同的语句块 ...

  3. return true Java_[Java教程]js中return,return true,return false的用法及区别

    [Java教程]js中return,return true,return false的用法及区别 0 2015-11-16 23:00:03 1.语法及返回方式 ①返回控制与函数结果 语法为:retu ...

  4. plt.hist绘制直方图参数density 为True和False分别代表是否归一化 参数orientation决定了是采用纵轴代表频率还是横轴代表频率的展现形式

    plt.hist绘制直方图参数density  为True和False分别代表是否归一化 参数orientation决定了是采用纵轴代表频率还是横轴代表频率的展现形式 plt.figure() plt ...

  5. [android] setOnTouchEvent 设置返回值为true 和 false的区别

    今天在做自定义的可选文本的 TextView 类时,用到了 View 类的 setOnTouchListener(OnTouchListener l)事件监听,在构造 OnTouchListener ...

  6. 对python的认识800字_我对python里True和False的理解

    我说一下的的拙见- and 和 or 是用来处理多个条件,得出结果的,要处理的东西可以化为最简单的True和False. 什么是T,什么是F,就不说了,百度里一大堆,什么集合,01,哈希,几乎所有都可 ...

  7. warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)

    //原函数为FF->CallBack(KK_DATA_OK); //出现警告:warning C4800: 'int' : forcing value to bool 'true' or 'fa ...

  8. 用boolalpha输出true或false的问题

    用boolalpha输出true或false的问题 为什么用了boolalpha之后的所有输出会全是true或是false,即使之后的输出行没有用boolalpha #include <iost ...

  9. 从一副漫画说编码思维,编码习惯,编码风格 (条件判断,死代码,true 或false)

    漫画中机器人要杀了人类,但是那个程序员说他并没有写代码让机器人杀人类啊!! 代码中确实给isCrazyMurderingRebot赋值了false作为初值,开发者的本意也是永远不要让它变为true,永 ...

最新文章

  1. 弹性盒子 flex-direction
  2. gulp基础使用方法记录
  3. [css] 说说你对字母“X“在CSS中有什么作用?
  4. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 22丨平均售价【难度中等】​
  5. imx6 android6.0.1,mfgtool刷写i.MX6 android6.0版本失败
  6. 烟雾检测模块ADPD188BI介绍与应用(一)
  7. 你需要的不是实时数仓 | 你需要的是一款强大的OLAP数据库(下)
  8. 所有的I/O端口都是兼容CMOS和TTL 表示什么意思
  9. 【RocketMQ】Send [1] times, still failed以及No route info of this topic问题排查思路总结
  10. 智能投顾-用户画像、投资组合选择、推荐引擎、大数据挖掘
  11. 【风马一族_Python】 决策树
  12. 关于Ubuntu18.04+win10双系统开机引导错误的解决方法
  13. UWB高精度室内定位系统
  14. (Verilog)多周期CPU设计
  15. JOL工具及其分析对象在JVM的大小和分布
  16. 基于数据思维的科学减肥_能量与营养
  17. 元旦给计算机老师的贺卡,元旦给老师的祝福语贺卡
  18. 超级大数据公司即将诞生 全球招募大数据领域人才
  19. 用python生成邮件正文html表格
  20. [译]C# 7系列,Part 10: Spanlt;Tgt; and universal memory management Spanlt;Tgt;和统一内存管理

热门文章

  1. 浴血黑帮第一季/全集Peaky Blinders迅雷下载
  2. Linux 基础入门 07
  3. Unity 3D模型展示之UI布局
  4. java ipv6校验_Java对IPv6的支持详解:支持情况、相关API、演示代码等
  5. 使用python中tkinter库显示图片点击按钮跳跳下一张图片
  6. #10019. 「一本通 1.3 例 2」生日蛋糕
  7. VC浏览器相关的学习(六)(IDispEventImpl包装的主要方法)
  8. 机器学习——决策树+随机森林
  9. 在C++与python间传视频帧
  10. hdu 2629 Identity Card (字符串解析模拟题)