Dynamic Connected Networks for Chinese Spelling Check(ACL2021)
一.概述
文中认为基于bert的非自回归语言模型依赖于输出独立性假设。不适当的独立性假设阻碍了基于bert的模型学习目标token之间的依赖关系,从而导致了不连贯的问题。为些,提出了一种名为Dynamic Connected Networks(DCN)的新架构,它通过拼音增强候选生成器生成候选中文字符然后利用基于注意力的网络对相邻中文字符之间的依赖关系进行建模。在数据集SIGHAN 2013,SIGHAN 2014以及SIGHAN 2015 达到了state-of-the-art。
代码:https://github.com/destwang/DCN
首先,我们利用RoBERTa与拼音增强候选生成器结合语音信息,并在每个位置生成k个候选字符。对于每两个相邻的候选,DCN通过动态连接评分器(DCScorer)学习一个可变的连接评分,以确定它们之间的依赖程度。DCScorer通过将上下文表示和当前位置和下一个位置的候选字符嵌入embedding同时输入注意力层来计算连接分数。最终,模型生成了kn个候选路径,我们利用Viterbi算法快速找到得分最高的路径作为我们最终的校正结果。
本文主要贡献如下:
A.提出了一种新的端到端动态连接网络(DCN),它可以缓解CSC任务中非自回归语言模型的不连贯问题。
B.提出了一种简单有效的拼音增强候选生成器,用于整合语音信息,生成更好的候选字符。
二.方法概述
1.问题
输入一个句子,然后对句子进行校正输出。由于非自回归语言模型是基于输出独立性的假设,会导致输出汉字不匹配,导致不连贯问题。
2.动态连接网络(Dynamic Connected Networks)
DCN可以学习输出的中文字符之间的依赖,减轻不连贯问题。
首先,RoBERTa使用拼音增强候选生成器生成一系列候选字符,我们抽取k个字符作为候选字符。对于每两个相邻的候选字符,我们通过动态连接评分器(DCScorer)学习连接分数以确定它们之间依赖的强度。最终的校正分数将由连接分数和候选生成器在每个位置的预测分数的联合预测来计算。
DCScorer需要同时考虑上下文信息、当前位置和下一个位置的候选字符。因此,我们使用注意力机制来学习当前候选的上下文表示p和下一个候选上下文表示q。两个相邻候选者之间的依赖强度通常与当前和下一个位置的RoBERTa隐藏表示更相关,因此注意力机制中的key和value只包含这两个隐藏表示。DCScorer定义如下:
这里的i是字符位置,m和n是当前位置和下一个位置的候先索引。Attention表示注意力机制,其中Q、K、V分别表示query、key和value,W表示注意力层需要学习的参数。h是最后一个transformer block的隐藏表示,w表示候选token嵌入embedding。
我们将候选token嵌入embedding添加到候选上下文表示。然后我们将输出输入到归一化层layernorm,得到两个表示!