2019 NAACL 语法纠错论文介绍

      使用未标记数据预训练一个复制增扩结构以提升语法纠错质量
        

链接:https://arxiv.org/abs/1903.00138v1
           

    近些年来,由于学习英语的人数越来越多,英语语法纠错也越来越受到关注。神经机器翻译系统已成为最先进的实现语法纠错(GEC)任务的方法。该论文针对GEC任务提出一种复制源句子到目标句子转换过程中没有改变的词语的复制型数据增扩结构。GEC任务一直受到带标记训练数据不足的问题的困扰而达不到高准确率。研究人员使用未标记的One Billion Benchmark数据集预训练一个带有降噪自编码器的复制型数据增扩结构并且对完全预训练结构和部分预训练结构进行了比较。相比之前的研究,该文首次提出了从源语言上下文中复制词语并且完全地预训练了序列到序列模型以在GEC任务上进行实验。此外,该文还针对GEC任务对token级别和sentence级别的多任务学习进行了实验。在CoNLL-2014测试集上的评估结果显示该文提出的方法要明显优于其他近期发表论文所提出的先进方法。
虽然机器翻译成为GEC的最新方法,但GEC不同于机器翻译之处在于它只改变源句子中的少量词语。考虑到GEC任务中高比例的未改变词语,该研究从源句子中复制未改变词语和集外词语以提升神经网络结构模型。复制型数据增扩结构使模型的生成部分更强大,论文的实验部分显示出该文提出的复制模型要优于仅仅解决“未知词”问题的复制机制。

                              模型基本结构
    翻译模型学习从源句子到目标句子的映射关系。该文使用基于注意力机制的Transformer结构作为基准方法。
在编码器部分,Transformer将源句子编码为L个相同大小的块,对每个块使用多头自注意力机制,紧接着是基于位置的前向网络层并产生基于上下文的隐藏层状态。解码器部分与编码器结构较为相似,但解码器的块有一个额外的在编码器隐藏层上的注意力层。
模型的目标是给定源词语序列(x1,...,xN),预测单词序列(y1, ..., yT)中以t为索引的下一个单词,如以下等式所示:
               
每一个训练样板的损失Lce是解码过程中每个位置的交叉熵损失的累加和,如等式4所示。
            
    
    
                                复制机制
    复制机制已经在文本摘要和语义解析任务中被证明是有效的。如图1所示,该文的复制型数据增扩网络结构允许从源输入句子中复制词语,如等式5所定义,最终的概率分布Pt是生成分布 和复制分布 的混合。作为结果,固定的词汇表扩展为出现在源句子中的所有单词。复制和生成由平衡因子  [0, 1]在每一个时间步进行控制。
           
图1: 复制型数据增扩结构。橙色部分是transformer基础结构。蓝色矩形是编码器token级别的多任务输出。蓝色分布直方图显示了复制的分数和最终的混合分布。
                    

                      等式5: 最终的混合概率分布Pt的计算

     新的结构以生成目标隐藏层状态的形式输出生成概率分布并以此作为基本模型。源输入词语上的复制分数由一个新的解码器的当前隐藏层状态 和编码器隐藏层状态 之间的注意力分布计算。复制注意力的计算如等式6,7,8所示:
             
等式6,7,8 : 复制注意力的计算
      
      该文使用正则化的注意力分布作为复制分数并使用复制隐藏层来估计平衡因子 ,如等式9所示:
           
等式9:  平衡因子 的估计计算  

预训练
降噪自编码器
该文使用降噪自编码器,它有助于用大级别的未标记语料预训练模型。受BERT启发,该文使用One Billion Word Benchmark 语料预训练模型,它是较大的句子级别的语料。实验中,用以下方法生成句子对。
• 以10%的概率删除一个token。
• 以10%的概率增加一个token。
• 以10%的概率用词汇表中随机选择的单词替换一个单词。
• 对单词位置添加正态分布的偏差以混洗单词,并且用调整的位置以0.5的标准差重排单词。
预训练解码器
    该文使用预训练参数初始化解码器,同时随机初始化其它参数。除了编码器、编码器-解码器注意力和复制注意,大部分参数是预训练的。

                                  多任务学习
Token级别的标记任务
     该文为源句子中的每一个token分配一个标记以表示这个token是否正确。假设每一个源token   与 目标token   对齐, 那么定义如果 = ,则源token 正确, 否则错误。每一个token的标记由最终状态 经过一个仿射变换传递给softmax后得到其预测值,如等式10所示。
             
等式10: 标记预测值计算

这个标记任务给编码器增加了输入token的正确性,之后可以被解码器所使用。

句子级别复制任务
    该文在训练中使用相同数量的采样正确的句子对和剪辑单元句子对传递给模型。当输入正确的句子时,移除在编码器输出上的解码器注意力。

评估
实验结果
     该文与比较有名的GEC系统(包括基于规则的、基于分类的、SMT、NMT)比较了实验结果,如表4所示。结果显示在CoNLL-2014数据集上该文提出的复制型数据增扩结构取得了56.42的F0.5 分数,在没有使用重排序和预训练的情况下,表现超过了之前的结构方法。
使用降噪解码器和多任务学习子后,则达到61.15的F0.5 分数,超过了之前的先进系统4.9个F0.5 分值。    
         
该文比较了带有和未带有复制机制的Transformer结构在GEC任务上的实验结果。如表5所示,复制型数据增扩模型获得的F0.5 分数从48.07增长6.6到54.67。大部分的提升源自于固定词汇表之外的单词,这些单词在基准模型中会被预测成未知词,而在复制型数据增扩模型中被复制为单词本身。复制技术一般被认为适合处理未知词,为证明该文提出的结构不仅只是复制未知词,该文做实验忽略所有的未知词单元。图5显示,即使忽略未知词,复制型数据增扩模型仍然高于基准模型1.62个F0.5 分数点。
从表5可以观察到,部分预训练解码器相比未预训练的模型提升了2.54个F0.5 分数点。降噪自解码器提升F0.5 分数4.13,准确率和召回率都有所提升,如表6所示。


      为使模型在输入正确的句子时不输出纠错单元,该文添加了句子级别的复制任务,从Wikipedia上抽取500个句子以建立正确的句子集,从带有错误标注的CoNLL-2013测试数据集上抽取500个句子建立错误数据集。然后计算两个数据集上平衡因子αCOPY的平均值。αCOPY值在添加句子级别任务之前为0.44/0.45,分别对应于正确和错误的句子。在添加句子级别任务之后变为0.81/0.57,说明81%的最终分数源自于复制正确的句子集,57%源自于错误的句子集,证明使用句子级别的复制任务后,模型开始区分正确句子和错误句子。
不同错误类型上的召回率
该文的方法在“名词数量”类型错误上获得72.65%的召回率,在“主语-动词一致性”错误类型上获得了61.79%的召回率。然而在“搭配习惯”错误类型上只得到10.38%的召回率,表明计算机善于处理明确的和机械的错误,与人类处理带有文化特征的主观性较强的错误类型相比还有很大差距。该文方法在不同错误类型上的召回率如表7所示。
        
   
             
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值