HGAT:假新闻检测的分层图注意力网络

论文标题:HGAT: Hierarchical Graph Attention Network for Fake News Detection
论文链接:https://arxiv.org/abs/2002.04397
论文来源:arXiv

一、概述

为了更有效地检测假新闻,有必要从不同的角度挖掘有意义的信息,而不是仅仅关注新闻内容。事实上,假新闻并不是以文章的形式独立存在的,网络社交媒体与新闻文章相关的新闻创作者(creators)和新闻主题(subjects)与文章共存。这些新闻创作者和新闻主题能够以一个更全面的视角描述新闻,以帮助我们能够更彻底地剔除假新闻。具体来说,对于新闻创作者,我们可以收集个人资料等补充知识。对于新闻主题,可以收集背景知识等相关信息来支持新闻检测。

新闻文章和其他相关部分可以建模为异构信息网络(heterogeneous information network,HIN)。HIN具有较强的表达丰富信息的能力,本文将假新闻检测问题描述为HIN中的节点分类问题。下图给出了一个面向新闻的异构信息网络(News-HIN)的示例:

News-HIN

基于HIN的假新闻检测问题的主要挑战在于以下3点:
①Hierarchy,异构网络中的表示学习是一个多层次的工作,因为节点内容的信息和模式(schema)的信息包含在不同的层次上;
②Heterogeneity,存在与新闻文章相关的各种类型的异构信息,统一学习HIN中的有效节点表示并不是一件容易的事情;
③Generalizability,为了保证所提出的模型对不同类型HIN的适用性,我们需要提出一个可扩展到各种学习设置的通用学习模型。

为了解决上述挑战,本文提出了HGAT来检测假新闻。HGAT包含两层attention机制,首先进行节点level的attention,将节点邻域内同一种类型的节点聚合成schema节点,然后进行schema-level的attention来聚合schema节点表示,最终使用学习到的表示进行假新闻检测。

二、概念

  1. 术语定义
  • News Articles

News Articles代表发布在社交媒体或者公共平台上的新闻内容,使用集合N=\left \{n_{1},n_{2},\cdots ,n_{m}\right \}来表示,每一个n_{i}\in N都包含文本内容。

  • Subject

Subject通常是指新闻文章的中心思想,是新闻文章写作的主要目的,使用集合S=\left \{s_{1},s_{2},\cdots ,s_{k}\right \}来表示,每一个s_{i}\in S都包含文本描述。

  • Creator

Creator代表撰写News Articles的用户,Creator的集合表示为C=\left \{c_{1},c_{2},\cdots ,c_{n}\right \},每一个c_{i}\in C都包含个人资料信息,包括头衔,政党成员,和地理居住地点。

  • News Oriented Heterogeneous Information Networks (News-HIN)

News articles,Subjects和Creators被建模成News-HIN异质图,包括三种节点和两种边。News-HIN被定义为\mathcal{G}=(\mathcal{V},\mathcal{E}),这里的节点集合V=C\cup N\cup S,边的集合\mathcal{E}=\mathcal{E}_{c,n}\cup \mathcal{E}_{n,s},包括Creators和News Articles之间的“Write”连接以及News articles和Subjects之间的“Belong to”连接。

  • News-HIN Schema

为了更好地理解News-HIN并利用类型信息,有必要定义schema-level的描述。模型将使用News-HIN schema来学习不同类型的节点和连接的重要性。News-HIN的schema定义为S_{\mathcal{G}}=(\mathcal{V}_{T},\mathcal{E}_{T})\mathcal{V}_{T}\mathcal {E}_{T}代表节点类型和边类型,即\mathcal {V}_{T}=\left \{\phi _{n},\phi _{c},\phi _{s}\right \}\mathcal{E}_{T} =\left \{Write,Belongs\; to\right \}。PolitiFact数据集的schema如上图(b)所示。

  1. 问题定义

给定一个News-HIN\mathcal{G}=(\mathcal{V},\mathcal{E}),目标是学习一个分类函数f:N\rightarrow Y来将集合N分类到正确的类。要有效整合News-HIN中的各种异构信息,包括文本信息和网络结构信息。

三、方法

图注意力网络GAT参考链接:图注意力网络

HGAT包括node-level和scheme-level两层attention,架构图如下:

HGAT
  1. Node-level attention

Node-level attention能够学习每个News Article的邻域内同一类型的节点的重要性并且聚合这些邻域节点表示成一个集成表示作为一个schema节点。Node-level attention的输入为节点的初始特征向量(文本采用TF-IDF编码)。因为News-HIN中存在多种类型的节点,因而初始节点特征向量属于不同维度的特征空间,因此需要使用对特征向量进行维度转换,这里对不同类型的节点的特征向量进行维度转换采用的是不同的转换矩阵。具体过程如下:

h_{n_{i}}^{'}=M^{\phi _{n}}\cdot h_{n_{i}};h_{c_{i}}^{'}=M^{\phi _{c}}\cdot h_{c_{i}};h_{s_{i}}^{'}=M^{\phi _{s}}\cdot h_{s_{i}}

这里M^{\phi _{n}}\in \mathbb{R}^{F\times F^{\phi _{n}}},h_{n_{i}}\in \mathbb{R}^{F^{\phi _{n}}}\phi _{c},\phi _{s}类型的节点同理。F是要映射到的维度,每个类型的节点特征向量都被映射到F维特征空间。

对于每个News Article节点n_{i}\in N,它的邻域节点属于N\cup S\cup C,node-level attention将为每种类型的邻域节点学习重要性权重。我们让T\in \left \{N,S,C\right \}T中的节点都有相同的类型\phi _{t},然后对于n_iT中的邻域节点,node-level attention将学习重要性e_{ij}^{\phi _{t}},代表节点t_j \in Tn_i的重要性:

e_{ij}^{\phi _{t}}=attention(h_{n_{i}}^{'},h_{t_{j}}^{'};\phi _{t})

这里attention也就是一个单层前馈神经网络,使用LeakyReLU激活函数(与GAT设置一样)。attention对于所有同一类型\phi _{t}的邻域节点是共享的。masked attention机制保证了网络的结构信息被利用,也就是说只有当t_{j}\in neighbor_{n_{i}}且属于类型\phi _{t}才会被用来计算e_{ij}^{\phi _{t}},否则attention权重将为0。接着我们利用softmax函数标准化e_{ij}^{\phi _{t}}得到\alpha _{ij}^{\phi _{t}}

\alpha _{ij}^{\phi _{t}}=softmax(e_{ij}^{\phi _{t}})

schema节点T_{n}通过以下方式聚合得到:

T_{n_{i}}=\sigma \left (\sum _{t_{j}\in neighbor_{n_{i}}}\alpha _{ij}^{\phi _{t}}\cdot h_{t_{j}}^{'}\right )

与GAT类似,node-level attention也可以执行multi-head attention,使用K代表head的数量:

T_{n_{i}}=||_{k=1}^{K}\sigma \left (\sum _{t_{j}\in neighbor_{n_{i}}}\alpha _{ij}^{\phi _{t}}\cdot h_{t_{j}}^{'}\right )

||代表拼接操作。注意这里被聚合的表示包括h_{n_{i}}^{'}

最终每个目标节点n_i将得到三个schema节点N_{n_{i}},C_{n_{i}},S_{n_{i}},对应3种不同类型的邻域。

  1. Schema-level attention

通过node-level attention,我们将News Article节点的邻域聚合为几个schema节点。从本质上讲,它相当于将来自相同类型的邻域节点的信息融合到schema节点的表示中。接下来要做的是通过schema节点的表示来学习News Article节点的表示。不同的schema节点包含类型信息,这要求我们区分节点类型的重要性。这里我们采用schema-level attention来自动学习schema node的重要性,最终使用学习到的重要性权重来融合schema节点表示。

为了获得充分的表达能力来学习注意力权重,这里采用一个线性变换来处理schema节点的表示,线性变换的参数为W\in \mathbb{R}^{F^{'}\times KF}schema也是一个单层前馈神经网络,采用sigmoid激活函数,用来进行attention操作。对于schema节点T_{n_{i}},其重要性表示为w_{i}^{\phi _{t}}

w_{i}^{\phi _{t}}=schema(WT_{n_{i}},WN_{n_{i}})

然后同样使用softmax函数进行标准化:

\beta _{i}^{\phi _{t}}=softmax(w_{i}^{\phi _{t}})=\frac{exp(w_{i}^{\phi _{t}})} {\sum _{\phi \in \mathcal {V} _{T}}exp(w_{i}^{\phi})}

最后进行聚合得到n_i的表示r_{n_{i}}

r_{n_{i}}=\sum _{\phi _{t}\in \mathcal {V}_{T}}\beta _{i}^{\phi _{t}}\cdot T_{n_{i}}

下图展示了两层attention的过程:

两层attention
  1. 损失函数

最后就是采用一个分类器来对每个News Article节点表示r_{n_{i}}进行分类。损失函数采用交叉熵损失函数,二分类就是用binary的交叉熵损失。

整个HGAT的算法如下:

HGAT

四、实验

数据集采用PolitiFact数据集。对于新闻报道,PolitiFact在网站上提供了原始内容、事实核查结果和全面的事实核查报告。平台根据内容将它们分类为不同的主题和话题(也就是本文中的subject)。每篇文章的标注为{True, Mostly True, Half True, Mostly False, False, Pants on Fire!}之一,可以用来进行多分类以及二分类,本文进行了多分类和二分类实验。二分类时{True, Mostly True, Half True}作为一类,{Mostly False, False, Pants on Fire!}作为一类。数据集统计情况如下:

数据集

二分类实验结果:

二分类实验结果

多分类实验结果:

多分类实验结果

对比是否去除schema-level attention的结果(去除的方式是将schema-level attention的权重设置为\frac{1}{3}):

消融实验
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容