自然语言生成工具箱 - CO2Sum(二)
文章名称
【AAAI-2022】【Tencent AI Platform Department】CO2Sum:Contrastive Learning for Factual-Consistent Abstractive Summarization
核心要点
文章旨在抽象摘要生成方法存在的事实不一致的问题,利用对比学习机制,代替原有的后处理和机制,保证生成的摘要具有factual-consistent性质。对比学习分别作用域seq2seq的encoder和decoder。encoder部分的对比学习帮助模型重视原始文本中的事实信息,decoder部分的对比学习帮助生成的事实一致的摘要。
上节讲解了,作者针对摘要生成中事实错误的问题提出的解决方案框架,以及负样本生成的思路。本节继续介绍在编码器和解码器上的对比学习。
方法细节
问题引入
生成符合要求的负样本后,需要利用合理的训练方法,让模型重视原始文本中的事实信息。
作者分别在encoder和decoder两个阶段进行对比学习,并采用BART[1]作为基础的seq2seq模型。输入的平行语料为,其中为输入的原始文本和目标摘要,每个摘要的长度为(可以是padding后的长度,也可以不是padding)。
seq2seq优化的目标是cross-entropy,是给定原始文本后,输出对应词的条件概率。
seq2seq loss具体做法
回顾一下CO2Sum的整体框架,
Framework of CO2Sum
- 在编码器上进行对比学习。该模块的目标是在对文本进行嵌入表示的时候,能够把原始文本和事实正确的groudth的距离拉进,而拉远其与负采样样本的距离。由于负采样和groudth之间的重点区别是事实正确性,因此encoder上的对比学习能够保证模型对事实给予足够的关注度,从而保证生成的摘要事实上是正确的。其示意如下图所示。
intuitive of contrastive learning encoder
给定triplet样本,encoder的优化目标如下图所示。其中表示对原始文本、groudth和负采样的encoding。值得注意的是,这个嵌入式表示是文本上所有词的嵌入的平均值。分别表示负采样的样本数量以及softmax的temperature hyper-parameter。的值越大区分正和负样本的难度越大。
encoder contrastive loss- 在解码器上进行对比学习。该模块的目标是纠正解码过程中出现的事实错误。作者借鉴[2]中的方法,利用正负样本优化max-margin loss。然而,[2]分别利用正负样本计算词平均CE损失,但是作者发现这样的实现会导致不稳定,因为正负样本中的大多数词是相同的。因此,作者提出Position Masked (PM) max-margin loss,只在负样本中替换的事实上计算损失(其实就是只计算那些事实上有错误的地方的损失,忽略相同的方,省的混淆模型)。对比损失的具体公式如下图所示。其中,表示所有替换的位置。
decoder contrastive loss
具体例子如下图所示,其中,groudth中位置3的词“letter”在负样本中被替换为"request”,我们只需要关注这种词,而不应该关注其他相同词的损失(不要错误的回传梯度)。
case of contrastive learning decoder
至此,我们得到了模型的全部的损失,具体公式如下图所示。其中CE仍然要继续使用,负责生成语句连贯一致的摘要。
total loss心得体会
Position Masked (PM) max-margin loss
前两天读SimBert的博开,再看到这里,确实感觉“bert入戏,mask是演技”。个人感觉,就想微积分一样,MLM需要学得不仅仅是它训练语言模型的思路,更是如何在多种场合想到利用masked技巧来达到需要实现的目的,毕竟只有mask做好了,Transformer才能体现出序列性质。
哦,多说一句,感觉还有position encoding,这个前边一些生成的文章里已经讲到了。
文章引用
[1] Lewis, M.; Liu, Y.; Goyal, N.; Ghazvininejad, M.; Mo- hamed, A.; Levy, O.; Stoyanov, V.; and Zettlemoyer, L. 2020. BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Compre- hension. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 7871–7880.
[2] Yang, Z.; Cheng, Y.; Liu, Y.; and Sun, M. 2019. Reduc- ing Word Omission Errors in Neural Machine Translation: A Contrastive Learning Approach. In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, 6191–6196.
[*] 鱼与熊掌兼得:融合检索和生成的SimBERT模型
[*] 然语言生成工具箱 - SOW-REAP(一)