
摘要
训练语法错误修正(Grammatical Error Correction, GEC)模型需要大量标注好的(语法正确)与不好的(语法错误)句子对,但人工标注此类句子对成本高昂。近期提出的“Break-It-Fix-It”(BIFI)框架在无需任何标注样本的情况下,展现出强大的程序修复能力,但该方法依赖于一个“完美判别器”(如编译器),能够准确判断某个程序是否合法。然而,在GEC任务中并不存在这样的完美判别器。本文提出一种新方法,利用预训练语言模型(Language Model, LM)构建一个LM-Critic,该判别器通过比较句子与其局部扰动版本在语言模型下的概率来判断其语法正确性:若原句的概率高于其扰动版本,则判定为语法正确。我们将该LM-Critic与BIFI框架结合,并在大量未标注句子上进行训练,从而自举生成真实可信的语法错误/正确句子对,用于训练GEC修正器。我们在多个领域(CoNLL-2014、BEA-2019、GMEG-wiki 和 GMEG-yahoo)的GEC数据集上评估该方法,结果表明,在无监督设置下,F0.5得分提升7.7,在有监督设置下也提升0.5,均优于现有方法。