关键词: Grammatical Error Correction(GEC)、over-correction、seq2seq、sequence tag model、 Sequence-to-Action (S2A)、汉语和英语
大致思路:结合了seq2seq以及sequence tag model两种模型的优点,避免过度校正,以及摆脱人工标注的限制。
研究动机
(1)seq2seq 模型有过度校正的问题
(2)sequence tag model模型可以解决过度校正的问题(通过生成编辑操作),但其限制是需要依赖 人类设计特定语言标记标签。
具体方法
结合上述两者,利用它们的优点,缓解缺点。
框架如下:
输入的构建
(1)生成integrated sequence z 和 a sequence的过程是一个动态规划的过程;
(2)构建S2A的输入 、 Decoder的输入 、 以及目标序列(输出)。
算法流程
- 空白令牌 [BLK]
- 这里涉及到teaching force的技巧:将右移版本的y˜作为decoder输入y˜。
【teaching force可以理解为老师直接教,直接给你答案】
在seq2seq的结构中,有一个decoder的结构如下。这个带来的问题是上一个神经元出错就会导致下一个出错,所以不如直接给“答案”,也就是正确的输入序列。
参考:
seq2seq的三种结构 : https://www.jianshu.com/p/80436483b13b
训练过程
(1)S2A部分loss函数
S2A 是两层 前向网络 FFN
优化目标为:
最终式子:
(2)s2s模型部分loss函数
(3)最终的Loss函数:
推理过程
和seq2seq模型类似。
输入源句子x,然后得到输出y(这里是y˜out)
实验
英语方面模型的比较:
上下两组区别在于 是否pretrain
上下两组区别在于 是否data augmentation【数据增强】
从结果上看,指标略有提升。