自然语言处理在自动语法纠错中的应用

栏目: 编程工具 · 发布时间: 4年前

内容简介:一、语法纠错(Grammatical Error Correction, GEC),是指自动纠正文本中存在的语法错误;具体来说,GEC 系统通过分析输入句子成分之间的依赖性和逻辑性,识别并纠正其中存在的语法错误。

自然语言处理在自动语法纠错中的应用

一、 GEC是什么

语法纠错(Grammatical Error Correction, GEC),是指自动纠正文本中存在的语法错误;具体来说,GEC 系统通过分析输入句子成分之间的依赖性和逻辑性,识别并纠正其中存在的语法错误。

英语学习者通常所犯的语法错误分成两大类:

  • 句法错误。句法错误主要是指破坏了语言内生的系统性规则,例如动词形式的变化规则中,情态动词所跟的动词必须使用动词原形;

  • 语用错误。语用错误通常是指违反了语言的使用习惯,例如 depend on sth.,这里 on 如果错用成 in,并没有违反句法规则,但却不符合人们的语言使用习惯,也属于语法错误。

二、GEC的难点有哪些

总结一下有4点:

  1. 错误类型多:在目前比较流行的 GEC 标注体系下  Christopher Bryant et al. [1],语法错误类型被划分成五十多种,如果按照语法教学体系,语法错误甚至可以被划分成上百种,在如此纷繁复杂的错误类型中,学习目标很难统一。

  2. 多重句法功能:仅以介词为例,介词引导的语言成分既可以作定语,也可以作表语,还可以做状语,在不同的用法中上下文的语境也不尽相同,从而为语法错误的判断带来干扰。

  3. 远距离依赖:以主谓一致为例,有时候用于判断谓语主谓一致性的主语距离谓语很远,远距离的主谓一致情况在训练语料中是稀疏的,而长距离信息的学习也恰好是机器学习的难点。

  4. 噪音:在 GEC 领域的训练数据中,由于标注的质量和标注者的偏见等问题,天然存在着相当多的噪音,如何克服这些噪音以获得学习的稳定性也是难点之一。

三、GEC的评估与解决方案

GEC 目前最常用的评估方式是基于 Max-Match 自然语言处理在自动语法纠错中的应用   的度量 Daniel Dahlmeier et al. [2],并综合准确率 P 和召回率 R 计算得到 自然语言处理在自动语法纠错中的应用 。举个栗子:

自然语言处理在自动语法纠错中的应用

现在,我们来看看 NLP 方法在 GEC 中是如何发展的。­­

自动语法纠错方法的演进史

自然语言处理在自动语法纠错中的应用

可以说,近些年 NLP 方法上的迭代,在 GEC 领域有很明显的体现,其中有几个重要的里程碑。

  1. 从 2013 年开始,随着连续两届影响力较大的 CoNLL GEC 竞赛的举办,GEC 领域开始得到研究者们的关注,研究趋势也从规则驱动(Rule-driven)的方法转向了数据驱动(Data-driven)的方法,比较典型的是基于传统机器学习分类方法的 GEC 方案,在该类方案中需要人工设计和抽取复杂的针对目标词语的上下文 NLP 特征。CoNLL 2013 GEC 竞赛的获胜方 Alla Rozovskaya et al. [3] 采用了改方案。但这类方案的弊端也很明显,GEC 系统需要针对每一种错误类型设计不同的特征,甚至设计不同的模型结构,这对实现一个较完备的 GEC 系统来说无论从工程效率还是性能上都提出了挑战。

  2. 针对上述弊端,基于统计机器翻译(SMT)的方案将 GEC 看成由错误句子到正确句子映射的翻译任务。在翻译任务的框架下,SMT 天然地可以使用一套架构同时纠正多种类型的错误,从 CoNLL 2014 GEC 竞赛崭露头角后,逐渐成为了 GEC 领域的主流方案。然而,SMT 的弊端在于仍然无法摆脱人工设计的特征,且受困于离散表示带来的数据稀疏问题以及翻译概率的局部性(难以胜任解决长依赖的问题)等缺点,因此研究者开始期待更好的端到端方案来解决 GEC 问题。

  3. 实际上,如何让基于神经机器翻译(NMT)的方案在 GEC 问题上发挥作用,研究者们是挣扎了一段时间的。经验来看,目前可以公开获取的 GEC 领域平行语料大小只有 100 万~200 万句对,而这也处于 SMT 和 NMT 难以分出胜负的数据量区间。这个瓶颈在 SMT 方案成为主流两年后的 2018 年被突破了。随着 2017 年 Facebook 和 Google 分别提出了基于卷积神经网络(CNN)Jonas Gehring et al. [4]  和基于 Transformer 的端到端翻译框架 Ashish Vaswani et al. [5],基于 NMT 的 GEC 方案在 2018 年获得了飞速的发展。我们将这种发展归结为两种思路的优化与融合:

    a)  模型结构的优化 无论是基于CNN抑或是Transformer,都是在“序列到序列”的框架下,增强序列建模的能力以及模型的并行计算能力,这一点在大部分需要序列建模的NLP任务上都得到了验证。在此基础上,又有研究者诸如Wei Zhao et al. [6] 对模型结构(加入Copynet机制)以及问题结构(多目标学习)进行调整以适应 GEC 的问题特性。

    b) 数据层面的优化。 总结现有的方案,又分为两点:

    i. 针对领域数据的自适应。GEC 的评测主要基于某些领域数据采集得到的测试集,而不同领域数据(目前普遍使用的 GEC 标准测试集同领域的训练集数量较少)中的语法错误分布、错误密度差异可以是很大的,因此如何利用不同领域的语法平行语料作迁移训练以获得更优的标准测试集结果是一条主流的优化思路。基于这种思路,Junczys-Dowmunt et al. [7] 提出了 Domain-Adaptation,Error-Adaptation以及Edit-MLE 等领域数据自适应策略。

    ii. 基于海量易获取数据的预训练。目前可见的趋势是在 GEC 翻译问题中使用海量易获取数据对模型参数或者只对解码器(decoder)参数进行初始化训练,从而获得更优的模型初始权重。我们认为这样的策略有两个好处:第一,让模型在精调(finetune)之前有一个适应 GEC 问题的初始权重,该预训练的结果使得模型具备了比较全的错误映射模式;第二,将模型的 decoder 天然地初始化为一个较好的语言模型,从而增强纠错效果与流畅度。在预训练之后,可以继续使用质量更好的语法平行语料对模型进行 finetune,从而得到一个不错的语法翻译模型。这类方案中,不同的研究者会采取不同的策略:Junczys-Dowmunt et al. [7] 通过训练一个decoder 相同架构的语言模型对 decoder 进行权重初始化;Wei Zhao et al. [6] 根据一定的规则在海量母语者语料上生成带噪声的平行语料来训练一个降噪自编码器(Denoising auto-encoder)以对模型的大部分参数进行初始化;JaredLichtarge et al. [8] 则是使用过滤后的海量维基百科编辑历史语料(也根据规则加入噪声)作为训练语料进行模型权重初始化。另外值得一提的是,finetune 实际上起到了抑制噪音并增强正确映射模式的作用,这和前述的预训练工作是互相补充的。理论上,用于 finetune 的语料越大,语法翻译模型的性能就会越好,Tao Ge et al. [9] 提出了一种合理扩充高质量语法平行语料的策略,并在此工作的基础上实现了第一个在测试集指标上超过人类水平的 GEC 系统。

四、流利说在GEC领域中的工作和产品应用

目前,我们融合规则系统、深度语境分类器以及NMT等多种GEC解决方案,打造了一款兼顾写作和语音评测场景的GEC系统。

自然语言处理在自动语法纠错中的应用

同时我们整合现有的 GEC 能力,参加了 BEA 2019 [10] 全球 GEC 竞赛,在全部三条赛道上均进入了前三。

自然语言处理在自动语法纠错中的应用

自然语言处理在自动语法纠错中的应用

自然语言处理在自动语法纠错中的应用

下面是我们的GEC能力在实际产品中的输出。

1.流利写作

自然语言处理在自动语法纠错中的应用

2.雅思流利说

自然语言处理在自动语法纠错中的应用  

3.翻译小丸子

自然语言处理在自动语法纠错中的应用

五、总结

GEC 作为教育和技术融合的经典 NLP 场景,让我们真正实现了从实际场景和需求出发做研究,并最终落地实际产品。我们会持续打磨 GEC 方面的技术能力,不断推动 GEC 社区的进步,同时带给用户更多令人耳目一新的评测体验。

参考文献

[1] AutomaticAnnotation and Evaluation of Error Types for Grammatical Error Correction, 2017

[2] BetterEvaluation for Grammatical Error Correction, 2012

[3] TheUniversity of Illinois System in the CoNLL-2013 Shared Task, 2013

[4] ConvolutionalSequence to Sequence Learning, 2017

[5] AttentionIs All You Need, 2017

[6] ImprovingGrammatical Error Correction via Pre-Training a Copy-Augmented Architecturewith Unlabeled Data, 2019

[7] ApproachingNeural Grammatical Error Correction as a Low-Resource Machine Translation Task,2018

[8] CorporaGeneration for Grammatical Error Correction, 2018

[9] FluencyBoost Learning and Inference for Neural Grammatical Error Correction, 2018

[10] BuildingEducational Applications 2019 Shared Task: Grammatical Error Correction, 2019

自然语言处理在自动语法纠错中的应用


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

罗辑思维

罗辑思维

罗振宇 / 长江文艺出版社 / 2013-10-25 / 36.00

本书根据罗振宇的互联网视频知识脱口秀《罗辑思维》创作。 资深媒体人罗振宇对正在到来的互联网时代有深刻的洞察。他认为,互联网正在成为我们生活中的“基础设施”,它将彻底改变人类协作的方式,使组织逐渐瓦解、消融,而个体生命的自由价值得到充分释放。 《罗辑思维》的口号是“有种、 有趣、有料”,做大家“身边的读书人”,倡导独立、理性的思考,凝聚爱智求真、积极上进、自由阳光、人格健全的年轻人。......一起来看看 《罗辑思维》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具