Leveraging Declarative Knowledge in Text and First-Order Logic for Fine-Grained Propaganda Detection

转载自:https://mp.weixin.qq.com/s/XYFTPNs-qCn8QlubCaY8og

 

 

引言

 

本文介绍了复旦大学数据智能与社会计算实验室 (Fudan DISC)在EMNLP 2020上录用的一篇长文: Leveraging Declarative Knowledge in Text and First-Order Logic for Fine-Grained Propaganda Detection。

文章摘要

 

该文章针对新闻中细粒度的宣传手段检测任务,提出利用文本知识一阶逻辑知识在模型训练过程中进行正则化。实验结果证明,该方法可以显著提高句子级别和词语级别预测的一致性,使作出更准确的预测。

研究背景

 

宣传手段(propaganda)是一种故意设计出的带有特定目的的方法,来影响人们的想法。和常见的虚假新闻不同,宣传手段可能是建立在一部分事实基础上的。这就使得宣传手段在社交媒体上的传播更有效,而且更不易被发现。图1列举了一些包含宣传手段的例子,以及相应的宣传手段的定义,比如「We will make America strong again,proud again … again」之类的,就是属于slogan标语类型的宣传手段。

1:包含宣传手段文本的样例,以及相应的宣传手段定义 (加粗的代表宣传手段文本)

本文研究了细粒度的宣传手段检测问题。不同于早期工作主要研究粗粒度的宣传手段检测(即预测文本中是否包含宣传手段),细粒度的宣传检测需要识别出文本中包含宣传手段的片段。最近的研究工作(Da San Martino et al., 2019)提出了一种基于多任务学习的方法,但并不能保证句子级预测与词语级预测结果的一致性。此外,将人类知识注入到数据驱动的方法也是另一个有吸引力的探索方向。因此,本文提出了一种利用一阶逻辑和自然语言文本中的声明性知识(declarative knowledge)进行细粒度宣传手段检测的方法。

 

 

 

方法描述

 

本文提出的方法LatexPRO如图2所示。本文首先拓展了一种基于BERT的多任务学习方法作为基础模型,该模型可以在句子级别和词语级别上对18种宣传手段进行预测。在此基础上,本文注入逻辑知识和文本知识作为额外的训练目标来对模型的训练过程进行正则化。

2:提出的模型概述

 

1. 基础模型

为了更好地利用句子级别的信息,从而有利于词语级别的预测,本文提出了一个细粒度的基于多任务学习的方法作为基础模型,该模型可以在句子级和词语级上对宣传手段进行细粒度的预测。本文采用BERT作为backbone,每个输入句子,被修改为“[CLS]sentence tokens[SEP]”。在句子级别(图2中蓝色部分),进行18个二元分类,分别预测句子是否包含对应类别的宣传手段。在词语级别(图2 中绿色部分),进行19元分类(即18个宣传手段类别和1个“none of them”类别),也就是将每个token的特征送到一个19元分类器中,预测这个token属于哪个宣传手段类别。在这个多任务学习过程中包含2类损失:句子级损失L_sen和词语级损失L_tok。

2. 引入逻辑知识

句子级和词语级预测间存在隐含的逻辑约束。然而神经网络的可解释性较差,且需要用大量的数据进行训练才可能学习到这种隐含的逻辑。因此,本文考虑引入逻辑知识来解决这个问题。具体来说,本文使用命题布尔表达式 (propositional Boolean expressions)来显示地通过逻辑驱动的目标,对模型进行正则化。这可以提高不同粒度预测之间的逻辑一致性。举例来说,如果一个宣传手段类别c能在句子级别被预测出来,那么在词语级别也应该预测出属于类别c的宣传手段片段。所以本文考虑使用以下命题规则,公式如下:

其中A和B是两个变量。把f_c(x)和g_c(x)带入上述公式,逻辑表达式可以写为:

其中x是输入, f_c(x)是句子级别预测概率,g_c(x)是词语级的预测概率。可以得到以下优化目标:

 

3. 引入文本知识

宣传手段的定义可以包含了丰富语义信息,比如slogan的定义是“a brief and striking phrase that may include labeling and stereotyping”。为了利用这种知识,本文使用了额外的编码器对每个宣传手段的定义进行编码,获得宣传手段定义的特征表示。具体来说,对于每个定义,将输入序列修改为“[CLS] definition [SEP]”并输入给BERT,将[CLS]位置的特征作为定义的特征表示D(c_i),其中c_i代表第i种宣传手段。然后计算每个定义特征表示D(c_i)和预测出宣传手段类别的特征表示W(c_i)的欧式距离。目标是最小化L_def,从而对模型进行正则化,对宣传手段特征表示进行优化:

最后通过一个加权损失函数L_j对模型进行训练优化,其中超参数α,β,γ,λ为权重系数:

 

 

实验

 

1. 实验设定:

本文使用了PTC数据集,并在两种粒度的任务上进行了实验,句子级别分类SLC和片段级别分类FLC:

-    SLC要求模型预测出文本中是否包含宣传手段

-    FLC要求模型预测出包含宣传手段的片段的起始位置和对应的类别。该任务又分为2种设置:Spans和Full task。Full task要求同时正确预测出宣传手段片段的起始位置和对应的类型。Spans是Full task的一种特殊情况,只要求正确预测出片段的起始位置。

2. 实验结果与分析

片段级别宣传手段检测 (FLC)

表2展现了不同模型在FLC任务上的性能。结果显示本文提出的LatexPRO(T+L)模型优于之前的SOTA模型。在Spans任务上,准确率提高了10.06%,F1提高了2.85%。在Full Task任务上,准确率提高了12.54%,F1提高了4.92%。这说明利用文本中的声明性知识有助于更准确地进行预测。为了进一步了解模型在FLC任务中的表现,本文还进行了更详细的分析,如表3所示,展示了在Full Task任务上的详细表现。

 

 

句子级别宣传手段检测 (SLC)

表4展现了不同模型在SLC任务上的性能。结果表明,本文模型实现了比其他模型更优越的性能。和MGN相比, LatexPRO (L+T)提高了1.63%的准确率,9.16%的召回率和4.89%的F1。这证明了本文模型的有效性,表明可以召回更多的正样本,这将进一步有利于FLC细粒度的预测。

 

验证提高预测一致性的有效性

本文定义了度量指标MC来衡量句子级预测Yc和词语级预测Yt之间的一致性。实验结果见表2。MC分数越高表示一致性越好。结果显示引入了声明性知识的方法可以大幅超越基础模型。

样例分析

图3展示了一组样例分析。可以看出之前的模型可以正确预测出片段的起始位置,但是却预测不到正确的类别上。另外可以看到本文模型无论是在预测片段的起始位置还是类别上,都能取得不错的结果。

误差分析

图4是结果的混淆矩阵可视化。坐标轴上的O代表了不包含宣传手段(“none of them类别”)。结果基本呈现出对角线形状,而且大部分预测错误的情况,都是分到了O上。这可能是因为数据集中正负样本非常不平衡导致的。

 

 

 

总结

1. 提出了一种细粒度的多任务学习方法,将声明性知识注入到神经网络中来检测新闻中的宣传手段。

2. 提出同时利用一阶逻辑和自然语言文本中的声明性知识,在模型训练过程中进行正则化,以获得更好的宣传手段的特征表示,提高了粗粒度和细粒度预测之间的逻辑一致性。

3. 实验结果表明,本文提出的知识增强方法以较高的F1和准确率取得了优越的性能。

深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值