©原创作者 |疯狂的Max
背景及动机
大部分中文预训练模型都以单个字作为基础单元,而忽略了中文是以词语为最小语义单元的语言特性。
与英文不同,中文词语并不会以空格隔开,因此预训练模型在中文任务上都直接以单个字符来进行模型构建,但是事实上单个的中文字是带有歧义的,比如“拍”在词语“球拍”和“拍卖”中带有的语义完全不同。
近来的研究也表明将分词信息融入预训练模型中,可以让预训练模型更好的理解语义并在不同的中文下游任务提升表现。
而以此为动机,作者提出通过对预训练模型中注意力机制的拓展来为预训练模型注入分词信息,这也就意味着需要面临两个挑战:
1)如何在预训练模型中将分词信息无缝融入以字符为基础的注意力模块中;
2)如何消除不同粒度的中文分词工具带来的误差。
针对以上两个挑战,作者提出一种新的模型结构,即Multi-source Word Aligned Attention(MWA)。
一方面,语言心理学上提出阅读者对每个词中的每个字符会给予同等程度的关注,受此启发,作者通过mixed pooling strategy[5]将同一词语中的每个字符都赋予聚合后的统一的attention权重;另一方面,为减少不同分词工具带来的误差,作者取用多个分词结果,并通过融合的方式将各个分词策略下的结果融合到一起。
正如下表Table 1所示,不同分词工具会有不同粒度的分词结果,通过融合的方式可以隐式地降低不同粒度分词所导致的误差。
作者提出的MWA模型,在包括情感分类,命名实体识别,语义匹配,自然语言推理和阅读理解等各项中文的NLP任务上都明显超越BERT[2],ERNIE[3]和BERT-wwm[4]模型。
模型方法
1.字符级别的pre-trained encoder
MWA模型的主要任务是为了在字符级别的representation中加入分词知识,因此作者直接运用BERT及BERT的变体BERT-wwm和ERNIE的最后一层输出来获取字符级别的representation,直接作为MWA输入的隐藏层。
MWA的模型结构与本身的预训练模型结构的不同,可参照下图:
2.Word-aligned attention
为了使预训练模型获取分词知识,作者在预训练模型顶层加入了一个word-aligned 层,通过注意力聚合模块实现。
具体来说,首先对于输入的含有n个字符的句子
用中文分词工具π将句子s分成m个词,得到
其中
表示第i个词语,这个词语的长度是l,s是表示这个词的第一个字符在整个句子中的索引。
句子的整个输入进入到预训练模型的最后一层之后得到隐层状态矩阵H,这个H通过self-attention计算得到注意力矩阵(计算方式与BERT计算attention矩阵的方式一样),其计算公式如下:
接下来根据分词结果,将attention矩阵进行分片,得到:
然后将其中每一个词的注意力向量
通过mixed pooling strategy进行重新计算,具体计算公式如下所示:
再通过以下公式进行克罗内克积计算,其中
计算出与最初的注意力矩阵同样形状的加入了分词信息的word-aligned attention矩阵。
这个word-aligned attention矩阵与上文提到的隐层状态矩阵H进行通过随机初始化的矩阵映射后再相乘,得到最终的输出。如下图公式(其中V=H):
除此之外,作者沿用多头注意力机制的思想,计算得到K个不同的word-aligned attention矩阵,对应得到的隐层输出也是k个,这样的k个head得以获取不同语义维度子空间的结合。
然后再将这k个输出进行拼接再降维,得到最终输出。
3.Multi-source Word-aligned Attention
对于上文提到的word-aligned attention,其效果好坏很大程度上依赖于分词工具π的效果,而分词工具的质量受限于其训练数据的不规范或者其训练是基于分词领域范围外的数据,因此为了规避分词工具潜在的错误,作者直接通过简单的融合方式,即将多种分词工具得到word-aligned attention分别计算得到不同的最终隐层输出,这些隐层输出最终通过线性连接之后,再用tanh激活函数得到最终的输出结果,再连接到下游任务中。
具体计算如下图公式所示(共有M个分词工具):
03、下游实验结果
如下图实验结果所示,加入MWA模型结构的三种预训练模型在6个中文NLP下游任务上效果都有明显提升。
04、消融研究
为了证明模型的优化是由于加入了多种不同分词工具的分词知识,作者构造了在预训练模型上只增加一层transformer层的模型,只加一层随机分词的transformer层的模型,以及只加入一种分词工具的transformer层的模型,并将这些模型与本文提出的MWA模型在DRCD测试集上的结果进行对比,如下图所示:
从上图结果可以看出,增加一层transformer结构的模型效果也有所提升,这应该是与模型参数的增加有直接关系,但不同分词工具的使用都有助于提升模型效果,而融合了多种分词工具分词结果知识的MWA模型提升效果最为明显,由此可以证明作者提出的使用多种分词工具并融合不同分词策略的方式可以提升模型在下游任务的表现。
参数量分析
另外,作者为了证明MWA模型的优化效果并不仅仅是因为参数量的增加,作者仍然用DRCD的测试集进行了对比实验。
分别构造了在BERT-wwm预训练模型顶部增加1层、2层、3层transformer层的三种模型,与MWA模型进行对比,结果如下图所示:
由以上结果可以看出,增加2层甚至3层的transformer层甚至会使模型效果变差,而加入了MWA的BERT-wwm效果更接近于目前NLP领域最佳表现的Robust-BERT-wwm-ext-large模型(24层结构,并用13.5倍数据量进行训练,加长训练时长3.1倍)的模型效果。
因此,可以融合多种分词知识,并在字符级别表征加入分词信息的模型结构确实是有助于提升模型效果的。
结论与研究思考
MWA模型是在预训练模型进行fine-tuning时,增加一层transformer式的模型结构,通过词语对齐重新计算attention的方式来注入分词知识。
除此之外,模型还将多种来源的分词进行融合,以此对冲掉不同分词工具可能存在的分词误差。
而个人认为,在未来研究中,MWA这样的模型改进思路可以扩展为,在预训练模型中融入文本不同粒度的知识(如偏旁部首)、句法依存等其他语法类知识的模型改进思路中去。
参考文献
[1] Y Li, Yu B , Xue M , et al. Enhancing Pre-trained Chinese Character Representation with Word-aligned Attention[J]. 2019.
[2] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2019. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pages 4171–4186, Minneapolis, Minnesota. Association for Computational Linguistics.
[3] Yu Sun, Shuohuan Wang, Yukun Li, Shikun Feng, Xuyi Chen, Han Zhang, Xin Tian, Danxiang Zhu, Hao Tian, and Hua Wu. 2019. Ernie: Enhanced representation through knowledge integration. arXiv preprint arXiv:1904.09223.
[4] Yiming Cui, Wanxiang Che, Ting Liu, Bing Qin, Ziqing Yang, Shijin Wang, and Guoping Hu. 2019. Pre-training with whole word masking for chinese bert. arXiv preprint arXiv:1906.08101.
[5] Dingjun Yu, Hanli Wang, Peiqiu Chen, and Zhihua Wei. 2014. Mixed pooling for convolutional neural networks. In International Conference on Rough Sets and Knowledge Technology, pages 364–375. Springer.