介绍
本文研究了利用认知语言处理信号(如眼球追踪或 EEG 数据)指导 BERT 等预训练模型的问题。现有的方法通常利用认知数据对预训练模型进行微调,忽略了文本和认知信号之间的语义差距。为了填补这一空白,我们提出了 CogBERT 这个框架,它可以从认知数据中诱导出细粒度的认知特征,并通过自适应调整不同 NLP 任务的认知特征的权重将认知特征纳入 BERT。
实验结果表明:1)认知指导下的预训练模型在 10 个 NLP 任务上可以一致地比基线预训练模型表现更好;2)不同的认知特征对不同的 NLP 任务有不同的贡献。基于这一观察,我们给出为什么认知数据对自然语言理解有帮助的一个细化解释;3)预训练模型的不同 transformer 层应该编码不同的认知特征,词汇级的认知特征在 transformer 层底部,语义级的认知特征在 transformer 层顶部;4)注意力可视化证明了 CogBERT 可以与人类的凝视模式保持一致,并提高其自然语言理解能力。
▲ 图1. 人类眼球动作捕捉数据示意图
背景与简介
随着预训练模型的出现,当代人工智能模型在诸多任务上得到了超越人类的表现。随着预训练模型取得越来越好的结果,但是研究人员对于预训练模型却并没有知道更多。
另一方面,从语言处理的角度来看,认知神经科学研究人类大脑中语言处理的生物和认知过程。研究人员专门设计了预训练的模型来捕捉大脑如何表示语言的意义。之前的工作主要是通过明确微调预训练的模型来预测语言诱导的大脑记录,从而纳入认知信号。 然而,前人基于认知的预训练模型的工作,其思路无法对认知数据为何对 NLP 有帮助进行精细的分析和解释。而这对于指导未来的认知启发式 NLP 研究,即应该从认知数据中诱导出什么样的认知特征,以及这些认知特征如何对 NLP 任务做出贡献,具有重要意义,否则这只是相当于往预训练模型加入更多的数据,而对认知数据如何帮助预训练模型任然知之甚少。 例如,图 1 显示了以英语为母语的人的眼球追踪数据,其中图 1(a) 说明了人类正常阅读时的关注次数。图 2(b) 和 (c) 分别显示了在 NLP 任务中的情感分类(SC)和命名实体识别(NER)的关注次数。我们可以看到,对于同一个句子,在不同的 NLP 任务下,人类的注意力是不同的。特别是,对于情感分类任务,人们更关注情感词,如``terrible'和``chaos'。而对于 NER 任务,人们倾向于关注命名的实体词,如``ISIS'和``Syria'。但是先前的研究不能通过简单地在认知数据上微调预先训练好的模型来给出这种细粒度的分析。 为了促进这一点,我们提出了 CogBERT,一个认知指导的预训练模型。具体来说,我们专注于使用眼球追踪数据的效果,该数据通过追踪眼球运动和测量固定时间来提供母语者的凝视信息。我们没有直接在认知数据上对 BERT 进行微调,而是首先根据认知理论提取心理语言学特征。
然后,我们在眼动数据中过滤掉统计学上不重要的特征(这意味着具有这些特征的单词的人类注意力并不明显高于/低于单词的平均注意力)。随后,我们通过在不同的 NLP 任务上进行微调,将这些经过认知验证的特征纳入 BERT。在微调过程中,我们将根据不同的 NLP 任务,为每一类特征学习不同的权重。
方法
本文的方法主要基于一个二阶段的过程,其中一个阶段被用来产生基于认知的特征模板,第二个阶段在于将这些认知启发的特征模板通过特殊设定的架构融入预训练模型当中。3.1 方法心理语言学研究表明 [1],人类阅读能力的获得体现在两个方面。底层线索 (ower strands) 和高层线索 (upper strands)。底层线索(包括语音学、形态学等)随着阅读者的重复和练习而变得准确和自动。同时,高层线索(包括语言结构、语义等)相互促进,并与底层线索交织在一起,形成一个熟练的读者。即意味着,人类本质上的语言习得能力,其中一个重要的关键是对文本中的一系列特征进行越来越熟练的提取和识别。 这意味着,人类的眼球动作行为一定程度上可以被语言特征所反应,受以往工作的启发,我们构建了一个初始的认知特征集,包括使用 spaCy 工具 [2] 从文本中提取的 46 个细粒度的认知特征,并将其分为下层特征(词级)和上层特征(语义/语法级)。我们对这 46 种语言特征进行了广泛的统计显著性分析,找到了其中 14 个对于人类眼球动作有显著影响的特征,并根据特征特点,将其分为了上层特征和下层特征,展示在下表 1 当中。
▲ 表1. 特征层级分类图
3.2 加权认知特征向量学习
▲ 图2. 加权认知特征向量学习模型
我们可以通过使用 spaCy 工具从文本中提取特征。然而,这些特征不应该被赋予相同或随机的权重,因为它们对适应人类对句子的理解的贡献是不同的。因此,如图 2 所示,给定一个输入句子,我们训练一个四层的 Bi-LSTM [3],将每个单词嵌入到一个加权的八维认知特征向量。根据前述的心里语言学理论,我们认为认知特征可以解释人类眼动信息的分配。因此,我们使用眼球追踪数据(Zuco 1.0、Zuco 2.0 和 Geco)[4,5,6] 的眼球动作信息中的关注次数 (nFix) 作为监督信号来训练 Bi-LSTM 模型。
这部分的目的在实践上实现前述所提到的理论,即人类的阅读行为可以被特征解释,同样的,在模型层面上即意味着,模型要学会去利用语言特征的组合去逼近人类的阅读行为。但是在本模型中,所需要的本不是最后对于眼球动作数据的逼近,而是需要其中通过眼球动作数据学来的特征向量。3.3 特征向量融入预训练语言模型
▲ 图3. 特征向量融入预训练语言模型
如图 3(a) 所示,对于每个有单词的输入句子,我们可以从 Bi-LSTM 模型中获得其对应的特征矩阵。对于每个底层特征(即词长、词位、NER 和内容词),我们可以从 Bi-LSTM 模型中为其生成一个初始特征向量,随后这些特征向量将会被对角化放在一个矩阵的对角线上。
对于每个上层特征(即 NP chunk、情感词、Mod&Aux 和 Obj&Comp),我们可以从 Bi-LSTM 模型中分别为其生成一个初始的特征矩阵。如果相邻的词组成了一个上层特征,它在特征矩阵中的值是由 Bi-LSTM 模型得到的相邻词的平均特征得分,而其余数值都填为 0。同时对于每一个特征,会有一个经由高斯采样出的权重每个特征进行放缩,用来提来该特征在该条数据或者任务当中的重要性。
经由上述过程生成的特征矩阵经过放缩后分别被卷积神经网络进行处理用于提取特征形成基于特征的注意力矩阵,同时为了保留原始的模型注意力信息和特征的注意力矩阵,本文添加了一个门控向量,该向量会分别与模型原本的注意力矩阵和特征注意力矩阵进行相乘并求和,求得一个原注意力矩阵和当前注意力矩阵的线性加权。
同时可以注意到,本模型当中,底层特征将会融入在预训练模型的底层,而高层特征则会融入在预训练模型的高层。
实验及分析4.1 数据集
本文在多个数据集上进行了大量的实验,实验结果包括了 GLUE Benchmark [7], CoNLL2000 Chunking [8] 以及 Eye-tracking [9] 和模型本身的一些分析。
4.2 基线方法
1. BERT 不进行迁移,直接在目标领域上进行预测。RoBERTa 微调源领域模型的全部参数进行领域适应;
2. fMRI-EEG-BERT 一种认知数据增强的预训练语言模型,利用了核磁共振与脑电磁场数据;
3. Eye-tracking BERT 一种认知数据增强的预训练语言模型,利用了眼球动作捕捉进行微调后再在下游任务上微调;
4. CogBERT (Random) 本论文所提出的模型,但是特征分数并未经由一阶段进行生成,而是随机生成的。
4.3 实验结果与分析
如表 2 所示,本文所提出的模型能够在所有任务上超越模型的原本基线,同时超越大多数的认知增强的预训练语言模型,并能够在大多数任务上达到或者超越经由语法增强的预训练语言模型,体现了本文所提出模型的有效性。
▲ 表2. GLUE Benchmark实验结果
在 CoNLL 2000 Chunking 的数据集上,本文提出的模型可以超越 BERT 基线模型,同时本文提出的模型还可以超越先前专门用于序列标注而设计的模型。体现了认知增强的模型可以被用在广泛的自然语言处理任务上。
▲ 表3. CoNLL2000 Chunking实验结果 同时,本文也在认知相关任务上进行了测试。在眼动数据预测的任务当中,本文所提出的模型可以在英语和荷兰语的数据上超越相应的基线模型。同时由于本文模型是基于 BERT 单语言版本,实验证明我们的模型也能够超越 BERT 多语言版本,同时能够超越 XLM-17 这一在 17 种语言上预训练的模型,最终能以仅单语言的模型版本达到可比或者超越 XLM-100 这一在 100 种语言上预训练的模型。证明了融入认知数据对于认知任务具有强力的增益。
▲ 表4. Eye-tracking Prediction实验结果
在对于模型本身的分析方面,首先展示在模型学习中不同任务里,不同特征所得到的权重。在 COLA(语法可接受性)上,本文的模型对语法相关特征给出了高权值。在 MRPC(转述句识别)上,模型认为命名实体是最为重要的特征,即可能如果两个句子并不在描述同一个实体,那么两个句子大概率不是转述句。在 RTE(文本蕴含)中,模型认为名词短语是最为重要的特征,这可能意味着如果两个句子具有类似的名词短语结构,那么两个句子具有较大的概率是蕴含关系。在 CoNLL 2000 Chunking 和 CoNLL 2003 NER 任务当中,模型可以很直观的给出名词短语和实体词为最重要特征,符合了任务的设计。
▲ 表5. 特征权重分析实验结果
我们观察到,替换下层或上层的认知特征会降低模型的性能,而去除所有层的认知特征会进一步影响模型的性能。我们还注意到,尽管可读性对于我们的模型来说没有认知特征那么重要,但去除它也会损害模型的性能。不分层的融入特征意味着我们将所有的特征整合到 BERT 的每一层,不分层的糟糕表现表明,以分层的方式整合特征是认知引导的 NLP 的一个有效方法。
▲ 表6. 消融实验结果
在本文中,由于下层特征融入到预训练模型的底层,而上层特征融入到高层当中,因此有必要去寻找合适的分层边界。本文量化地讨论了 BERT 的哪一层应该是下层和上层认知特征的边界,并对 SST2、MRPC、QNLI 和 STS-B 任务的开发集进行了比较实验,并在图中说明了结果。Y 轴是不同 NLP 任务的性能。X 轴是层数。例如,如果层数为 6,我们将下层的认知特征纳入 BERT 的 1-6 层,将上层的认知特征纳入其余层。
研究发现,当层数边界在 4 左右时,所有任务都达到了最佳性能,这意味着 BERT 的低层更适合纳入下层认知特征,而当我们将上层认知特征纳入更高的层数时,它们更有用。这些结果可以有效地指导未来认知强化预训练模型的研究,同时也进一步验证了前人关于预训练模型的相关研究 [10]。
▲ 图4. 任务表现与特征层数分析图
为了定性地分析我们方法的有效性,我们将 CogBERT 的注意力可视化,并与 BERT 和人类进行比较。我们从 SST2、NER 和 MRPC 任务中选择案例。为了与人类的认知进行比较,给定一个特定的 NLP 任务,我们要求四个注释者在阅读句子时突出他们的注意词。对于 BERT 和 CogBERT,我们从预训练模型的较高层次中选择注意力得分,这可以捕捉到任务的特定特征。SST2 和 NER 的注意力可视化图。
图 (a) 展示了 CoNLL-2003 NER 任务的注意力可视化,说明 CogBERT 像人类一样对 NER 词 "Asian Cup"、"Japan"和 "Syria"给予了更多的关注,而 BERT 对这些词的关注很少。图 (b) 说明了 SST2 任务的注意力可视化,显示 CogBERT 捕获了关键的情感词`fun'和`okay',而这两个词从人类的判别行为来说对人类的判断也很重要。
相比之下,BERT 未能关注这些词。这些实验结果表明,尽管预训练模型在众多 NLP 任务中取得了可喜的改进,但它们离人类智能的水平还很远。通过学习人类阅读中的注意力机制,认知引导的预训练模型可以提供一种接近人类认知的有效方法。
▲ 图5. 注意力可视化
结论
我们提出了 CogBERT,一个能够有效地将认知信号纳入预训练模型的框架。实验结果表明,CogBERT 在多个 NLP 基准数据集上取得了超越基线的结果,同时模型表明证明对认知任务同样有用。分析表明,CogBERT 可以自适应地学习特定任务的认知特征权重,从而对认知数据在 NLP 任务中的工作方式做出精细的解释。这项工作为学习认知增强的预训练模型提供了一个新的方法,广泛阐述的实验可以指导未来的研究。
审核编辑 :李倩 ·
全部0条评论
快来发表一下你的评论吧 !