当前位置: 首页 > news >正文

BERTective: Language Models and Contextual Information for Deception Detection

目录

概要

实验设置

数据集

实验条件

指标和基准

实验方法

神经网络基准

基于transformer的模型

基于BERT的模型

实验结果

分析

非上下文化模型

上下文化模型

欺骗语言

讨论

结论

概要

本文基于一组包含虚假陈述的意大利对话语料库,建立了一种新的最先进的欺骗识别方法,并发现并非所有上下文对这一任务都是同样有用的。只有当文本来自同一说话者时,离目标文本最近的上下文(而不是对话者的提问)才能提升性能。作者还发现,像BERT这样的语言模型中的语义信息对性能有贡献。然而,单独使用BERT并不能捕捉到欺骗线索的隐含知识:其贡献依赖于同时使用注意力机制来从BERT的表示中学习线索。

实验设置

数据集

DECOUR数据集:包括意大利法院举行的35次刑事诉讼听证会的法庭数据记录。这为真实的欺骗数据提供了独特的来源。语料库是意大利语的。它由被访者和一些采访者(如法官、检察官、律师)之间的对话组成。每个对话都包含不同说话人的话语序列。这些话语被称为转折(turns)。根据定义,相邻的回合来自不同的说话者。每个回合包含一个或多个话语(utterances)。受访者的每句话都被标记为“真”、“假”或“不确定”,其他说话者的话语没有标记。

实验条件

本文使用二元分类(虚假陈述与非虚假陈述类别),为了避免在同一听证会的发言上过拟合训练和测试,采用了留一交叉验证的方法,每个折叠构成一个听证会。在这些设置中,每个折叠中一个听证会用作测试集,一个用作开发集,其余的用作训练集。作者为每个折叠进行了五个训练周期,选择在开发集上具有最佳F-score的模型。还识别了七种不同的上下文,这些上下文应该有助于分类任务,连同目标发言。它们如下:

  1. 前一个发言 - 1prev。考虑目标之前的第一个发言,无论发言者是谁。
  2. 前两个发言 - 2prev。与上述相同,但这里收集目标之前的前两个句子。
  3. 前三个发言 - 3prev。在这种情况下,收集前三个发言,同样不考虑发言者。
  4. 发言者的前一个发言 - s-utt。在这种情况下仅考虑目标之前的发言,如果发言者是同一位受访者。如果另一个发言者发出了前一个发言,则不收集该发言,目标发言将没有上下文。
  5. 发言者的前几个发言 - s-utts。与前一种情况类似,仅收集受访者的发言,但如果目标发言之前有多个发言(在同轮次内),则全部收集。换句话说,收集本目标在该轮次的所有发言。
  6. 发言者的前几个发言 + 轮次 - s-utturn。考虑所有可能的发言者发言和前一个轮次,该轮次属于另一个发言者。如果没有前一个发言者的发言,我们仅收集前一个轮次。这将使该实例等同于根据最后一种条件创建的实例。
  7. 前一个轮次 - turn。收集整个前一个轮次,这是唯一上下文不是由受访者自己产生的情况。

对话示例

A: “我觉得这个计划很有前景。”
B: “但是我们需要更多的数据支持。”
A: “我们可以考虑不同的方案。”
B: “我同意,但时间紧迫。”
A: “那么我们应该尽快行动。”
B: “是的,时间不等人。”
A: “我会准备一个详细的提案。”

目标发言是A的“我会准备一个详细的提案。”
1prevB的“是的,时间不等人。”
2prevB的“是的,时间不等人。”和A的“那么我们应该尽快行动。”
3prevB的“是的,时间不等人。”和A的“那么我们应该尽快行动。和B的 “我同意,但时间紧迫。”
s-uttA的“那么我们应该尽快行动。”
s-uttsA的“那么我们应该尽快行动。”
s-utturn

A 的“那么我们应该尽快行动。”和B的 “是的,时间不等人。”

turn

B的 “是的,时间不等人。”和A的 “那么我们应该尽快行动。”和B的 “我同意,但时间紧迫。”

指标和基准

使用四个指标来评估模型:准确率精确率召回率F-measure

虽然准确率是一个标准指标,但当数据集不平衡且关注的类别是少数类时,由于其信息量有限,主要类别的表现很容易掩盖了少数类别的真实表现。即便如此,准确率仍然是一个具有挑战性的基准,因为简单的启发式方法(例如总是预测主要类别)会导致较高的准确率。在DECOUR中,非虚假发言是主要类别,占实例的68.66%。因此,这就是预测主要类别时所获得的准确率。将这种主要类别的预测作为基准。

对于模型的整体评估依赖于F-measure,它反映了模型在两个类别中正确预测的平衡能力。除了主要类别的预测(其F-measure为40.71),作者还将模型与之前的最新技术进行比较。使用Fornaciari和Poesio(2013)提供的F-measure最高性能。在该实验中,联合使用了词袋(Bag-Of-Words,BOW)特征和LIWC(Pennebaker等,2001)提供的词汇特征,并应用了支持向量机(SVM)分类器(Drucker等,1997)。该模型的准确率为70.18%,F-measure为62.98。

实验方法

本文使用多种神经模型进行分类。对于所有不依赖于BERT上下文嵌入的模型,使用预训练的Fast Text嵌入(Joulin等,2016)作为初始化权重,并在训练过程中对其进行了微调。由于计算负担的原因没有微调上下文BERT嵌入。然而,模型参数的高数量要求使用较低的学习率,作者手动将其调整为1.e−4,并使用小批量大小,设置为8。丢弃率为0.1。

神经网络基准

作者添加了两个神经网络基准:多层感知器(MLP)和卷积神经网络(CNN)。
MLP的表现未能超越SVM。CNN的F-measure优于SVM,但差异不显著。此外,CNN的效果也不如那些未利用上下文信息的基于注意力的模型。因此,作者没有为MLP和CNN提供上下文信息,而是将它们作为额外的神经网络基准。然而,为了获得它们可能的最佳性能,作者进行了全面的超参数搜索。对于MLP,实验发现使用可训练的FastText嵌入和两个隐藏层的组合效果最佳。对于CNN,使用了3个卷积-最大池化层,分别具有32、64和128个通道,窗口大小为2、4和6。

基于transformer的模型

作者创建了两种模型:层次模型和非层次模型。采用非层次结构分析目标句子,并实现了层次transformer以共同编码目标句子和上下文信息。在层次模型中,输入不是单个发言,而是一系列发言。最大句子数设置为5。这个限制能够收集约98% DECOUR中的所有轮次的完整文本。然而,考虑更广泛的上下文并没有带来帮助。

不考虑批量,层次transformer的输入是一个三维张量,表示[文档、单词和嵌入]。每个单词-嵌入矩阵被传递给一个多层、多头的transformer,该transformer提供每个发言的表示,并返回与输入相同形状的张量作为输出。接下来的全连接层减少了嵌入的维度。文档的表示随后被连接成一个二维张量,并传递给另一个多层、多头的transformer,该transformer提供整体文档表示。另一个全连接层用于减少张量的最后维度,然后将其重塑为行向量。这个向量被输入到最后一个全连接层中,以提供预测,上图展示了这样的架构。

使用层次transformer,对七种上下文进行了实验。同样调整了超参数。在层次模型中,在发言和文档级别的编码器中使用了六层和六个头的transformer。对于非层次模型,两个层和两个头就足以获得最佳的开发集结果。

基于BERT的模型

最后,使用意大利语的BERT基础模型进行分类。本文设置了三种模型:

BERT + 全连接层
这是最简单的网络,仅用于对目标发言进行预测。将BERT的均值池化输出输入到一个全连接层中,该层执行预测。

BERT + transformer
这是一个更具表现力的网络,其中BERT的输出被传递到一个多层、多头的transformer。transformer的表示随后被传递到一个全连接层,该层输出预测。我们采用了六层和六个头的transformer,类似于层次transformer模型。与BERT + 全连接层模型类似,仅将目标句子输入到该网络中。

文本对BERT + transformer
最后一个网络在结构上与前一个相同,但在这种情况下使用BERT的文本对模式。将目标句子的大小设置为100个单词,上下文设置为400个单词。上下文是所选文本的连接,填充或截断在开头。如果截断,只会失去距离目标句子最远的文本部分。然而,语料库大多包含简短的陈述:填充到100和400保证了最小的数据损失。使用这个模型,作者测试了上述七种上下文。

实验结果

结果见下表。

  • 第一组实验包含文献中的基准和简单神经网络。
  • 第二组和第三组分别展示了基于transformer和基于BERT的模型。

实验报告了准确率、精确率、召回率和F-measure。作为显著性检验的基准,使用Fornaciari和Poesio(2013)提供的文献基准。*表示显著性水平,通过自抽样计算得出,p ≤ 0.05和p ≤ 0.01。根据Søgaard等(2014)的建议,避免使用过小的样本量,将样本设置为语料库的50%。

分析

结果显示,SVM的表现是一个强有力的基准。只有少数模型超越了它的准确率,而且没有显著提高。精确率也是如此。召回率是大多数神经网络模型超越SVM的指标(在五个案例中显著),尽管它们付出的代价是预测的精确率较低。因此,在16个基于transformer和BERT的模型中,只有四个模型的F-measure显著优于SVM,这对应于召回率的显著提升和更好的准确率,尽管后者并不显著。

非上下文化模型

两个最佳模型仅考虑目标句子:非层次transformer和使用BERT进行单文本处理的模型,后者采用了transformer架构。尽管在超参数探索中付出了努力,包括使用非常低的学习率和正则化方法(如丢弃法),但仍然无法防止该模型在低性能水平上出现强烈的早期过拟合。似乎单个全连接层无法处理此任务的复杂性

上下文化模型

上下文化模型在基于transformer和基于BERT的模型中显示出类似的趋势。这些趋势在BERT模型中更为明显,并导致更高的性能,但在层次transformer中也可见。层次transformer的F-measure都不优于非层次transformer模型,尽管它们的表现优于SVM基准,但并不显著。

作者还观察到,当上下文从一个发言扩展到三个发言时,模型的性能缓慢下降:三种条件下的F-measure下降趋势甚至比层次变换器的情况更为明显。

欺骗语言

作者采用两种方法来描绘欺骗语言:

  • 1)计算词n-gram的信息增益(Information Gain,IG)(Forman,2003)
  • 2)应用采样和遮蔽(Sampling and Occlusion,SOC)算法(Jin等,2019)。

信息增益衡量不同类别之间(序列)术语的熵。某一标签类别中术语的存在越不平衡,越以另一类别为代价,其IG值就越高。

上表显示了具有最高IG值的三元组,按其所指示的类别进行分类,即它们出现得更频繁的类别。

这些n-gram显示,欺骗性陈述充满了否定词:主要是“不记得”,但也包括“不知道”和“没有做”。相比之下,真实的陈述往往更具肯定性,专注于时间和环境的具体细节。

IG信号的强度还表明,真诚的表达比欺骗的表达要多样得多,后者则更常重复,似乎特别刻板。 尽管神经模型检测到的模式不一定能用人类常识来解释,我们仍然使用SOC来突出模型认为对其输出最具影响力的词汇。SOC通过考虑在将每个词替换为MASK标记后预测的差异,提供了对句子中特定词在分类任务中权重的事后解释(Jin等,2019)。由于结果依赖于上下文词汇,但Jin等(2019)关注的是单个词的相关性,因此他们并不使用整个上下文,而是从中抽样词汇。通过这种方式,他们减少了上下文的权重,强调了词本身的权重。 下图展示了两个正确分类的句子示例,一个是欺骗性的,一个是真实的。模型将红色词汇解释为欺骗的指示,蓝色词汇则表示真实性。它们与IG是一致的。然而,它们不能被解释为最复杂模型内部运作的代表,因为SOC依赖于标准的基于BERT的分类器。

讨论

1.基于变换器的模型在分类任务中表现良好,尤其是非层次模型优于以往的技术;

2.基于BERT的模型表现差异明显,其中单文本BERT和简单密集输出层的性能较差,但替换为多层、多头变换器后性能显著提高。

3.同时,文本对BERT与变换器结合的实验结果最好。

这些结果表明:

  • BERT模型本身缺乏检测欺骗所需的知识,因为其单个全连接层无法处理任务的复杂性;
  • 然而,当与transformer等专门架构结合时,BERT的知识可以提升模型性能。
  • 缺乏上下文知识时,模型可能会高估来自上下文的风格特征,
  • 因此BERT的上下文知识在模型中起到正则化的作用,帮助识别更复杂的模式。

结论

本文使用一个独特的数据集来探索语言模型在检测谎言方面的性能,该数据集包含来自Fornaciari和Poesio(2013)创建的真实听证会的句子,并为研究设置而匿名。实验表明,上下文是创建可以检测欺骗的模型的关键,并且带有一些额外注意层的BERT可以有效地击败不同的基线。


http://www.mrgr.cn/news/80449.html

相关文章:

  • 【前端】JavaScript 中的 sort() 方法的理论与实践深度解析
  • Guava 提供了集合操作 `List`、`Set` 和 `Map` 三个工具类
  • OpenHarmony和OpenVela的技术创新以及两者对比
  • 开启数字化时代心理服务新篇章:专属线上心理咨询服务小程序
  • python:用 sklearn SVM 构建分类模型,并评价
  • 《开源数据:开启信息共享与创新的宝藏之门》
  • Gate学习(7)引入体素源
  • React简单入门 - [Next.js项目] - 页面跳转、AntD组件、二级目录等
  • 【SQL】语句练习
  • SpringBoot项目监听端口接受数据(Netty版)
  • RT-Thread启动过程 :从汇编开始的启动流程
  • 信息安全工程师-选择题考点总结
  • flutter 多文本,其中文本下划线往下移动
  • Node的学习以及学习通过Node书写接口并简单操作数据库
  • 概率论得学习和整理22:EXCEL数据清洗的几个功能总结备忘
  • NVM:安装配置使用(详细教程)
  • 代码审计之Fastjson利用链
  • jenkins pipeline打包流程
  • LWIP协议:三次握手和四次挥手、TCP/IP模型
  • Qt WORD/PDF(一)使用 QtPdfium库实现 PDF 预览
  • 音频进阶学习八——傅里叶变换的介绍
  • uniapp/HBuilder X引入weex报错weex is not defined
  • 3.1 角度
  • 【自动控制原理】学习地图
  • WES7汉化教程
  • 02、10个富士胶片模拟的设置