第15卷第1期 智能系统学报 Vol.15 No.1 2020年1月 CAAI Transactions on Intelligent Systems Jan.2020 D0L:10.11992tis.202001014 基于数据增广和复制的中文语法错误纠正方法 汪权彬,谭营 (北京大学信息科学技术学院,北京100871) 摘要:中文作为一种使用很广泛的文字,因其同印欧语系文字的天然差别,使得汉语初学者往往会出现各种 各样的语法错误。本文针对初学者在汉语书写中可能出现的错别字、语序错误等,提出一种自动化的语法纠正 方法。首先,本文在自注意力模型中引入复制机制,构建新的C-Transformer模型。构建从错误文本序列到正 确文本序列的文本语法错误纠正模型,其次,在公开数据集的基础上,本文利用序列到序列学习的方式从正确 文本学习对应的不同形式的错误文本,并设计基于通顺度、语义和句法度量的错误文本筛选方法:最后,还结 合中文象形文字的特点,构造同形、同音词表,按词表映射的方式人工构造错误样本扩充训练数据。实验结果 表明,本文的方法能够很好地纠正错别字、语序不当、缺失、冗余等错误,并在中文文本语法错误纠正标准测试 集上取得了目前最好的结果。 关键词:自注意力机制;复制机制:序列到序列学习;中文;语法错误纠正:神经网络:文本生成;通顺度 中图分类号:TP389.1 文献标志码:A文章编号:1673-4785(2020)01-0099-08 中文引用格式:汪权彬,谭营.基于数据增广和复制的中文语法错误纠正方法.智能系统学报,2020,15(1):99-106. 英文引用格式:WANG Quanbin,TAN Ying.Chinese grammatical error correction method based on data augmentation and copy mechanism[JI.CAAI transactions on intelligent systems,2020,15(1):99-106. Chinese grammatical error correction method based on data augmentation and copy mechanism WANG Quanbin,TAN Ying (School of Electronics Engineering and Computer Science,Peking University,Beijing 100871,China) Abstract:Chinese is a widely used language.However,due to its natural difference between Indo-European languages, Chinese learners tend to make various grammatical errors.This article proposes an automatic grammar correction meth- od for those who will make errors like typos or improper words order.First,we built the C-Transformer model that ad- opts copy mechanism in the self-attention model to translate wrong text sequence to the correct one.Second,based on the public data set,a pure sequence to sequence method is utilized to generate wrong text corresponding to the correct one,and an error text filter is designed based on fluency,semantic,and syntactic measurements.Finally,since Chinese words are pictographic,based on the collected homographs and homophones dictionaries,some error samples are artifi- cially constructed to expand training data.The experimental results show that our method can well correct typos,im- proper word order,missing,redundancy and other errors,and achieved the state-of-the-art performance on the standard test set of Chinese text grammatical error correction. Keywords:self-attention mechanism;copy mechanism;sequence to sequence learning:Chinese;grammatical error cor- rection;neural networks;text generation;fluency 收稿日期:2020-01-09. 汉语现在是在全球范围内被广泛使用的语言 基金项目:国家重点研发计划资助项目(2018AAA0100300、 2018AAA0102301):国家重点基础研究发展计划项 之一,许多外国人开始学习中文,并在各种场景 目(2015CB352302):国家自然科学基金项目 (61673025、61375119):北京市自然科学基金项目 下使用普通话进行交流。但是汉语因为其独特 (4162029). 通信作者:谭营.E-mail:ytan@pku.edu.cn. 性,许多以印欧语系为母语的学习者在学习和使
DOI: 10.11992/tis.202001014 基于数据增广和复制的中文语法错误纠正方法 汪权彬,谭营 (北京大学 信息科学技术学院,北京 100871) 摘 要:中文作为一种使用很广泛的文字,因其同印欧语系文字的天然差别,使得汉语初学者往往会出现各种 各样的语法错误。本文针对初学者在汉语书写中可能出现的错别字、语序错误等,提出一种自动化的语法纠正 方法。首先,本文在自注意力模型中引入复制机制,构建新的 C-Transformer 模型。构建从错误文本序列到正 确文本序列的文本语法错误纠正模型,其次,在公开数据集的基础上,本文利用序列到序列学习的方式从正确 文本学习对应的不同形式的错误文本,并设计基于通顺度、语义和句法度量的错误文本筛选方法;最后,还结 合中文象形文字的特点,构造同形、同音词表,按词表映射的方式人工构造错误样本扩充训练数据。实验结果 表明,本文的方法能够很好地纠正错别字、语序不当、缺失、冗余等错误,并在中文文本语法错误纠正标准测试 集上取得了目前最好的结果。 关键词:自注意力机制;复制机制;序列到序列学习;中文;语法错误纠正;神经网络;文本生成;通顺度 中图分类号:TP389.1 文献标志码:A 文章编号:1673−4785(2020)01−0099−08 中文引用格式:汪权彬, 谭营. 基于数据增广和复制的中文语法错误纠正方法 [J]. 智能系统学报, 2020, 15(1): 99–106. 英文引用格式:WANG Quanbin, TAN Ying. Chinese grammatical error correction method based on data augmentation and copy mechanism[J]. CAAI transactions on intelligent systems, 2020, 15(1): 99–106. Chinese grammatical error correction method based on data augmentation and copy mechanism WANG Quanbin,TAN Ying (School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China) Abstract: Chinese is a widely used language. However, due to its natural difference between Indo-European languages, Chinese learners tend to make various grammatical errors. This article proposes an automatic grammar correction method for those who will make errors like typos or improper words order. First, we built the C-Transformer model that adopts copy mechanism in the self-attention model to translate wrong text sequence to the correct one. Second, based on the public data set, a pure sequence to sequence method is utilized to generate wrong text corresponding to the correct one, and an error text filter is designed based on fluency, semantic, and syntactic measurements. Finally, since Chinese words are pictographic, based on the collected homographs and homophones dictionaries, some error samples are artificially constructed to expand training data. The experimental results show that our method can well correct typos, improper word order, missing, redundancy and other errors, and achieved the state-of-the-art performance on the standard test set of Chinese text grammatical error correction. Keywords: self-attention mechanism; copy mechanism; sequence to sequence learning; Chinese; grammatical error correction; neural networks; text generation; fluency 汉语现在是在全球范围内被广泛使用的语言 之一,许多外国人开始学习中文,并在各种场景 下使用普通话进行交流。但是汉语因为其独特 性,许多以印欧语系为母语的学习者在学习和使 收稿日期:2020−01−09. 基金项目:国家重点研发计划资助项目 (2018AAA0100300、 2018AAA0102301);国家重点基础研究发展计划项 目 (2015CB352302) ;国家自然科学基金项 目 (61673025、61375119);北京市自然科学基金项目 (4162029). 通信作者:谭营. E-mail:ytan@pku.edu.cn. 第 15 卷第 1 期 智 能 系 统 学 报 Vol.15 No.1 2020 年 1 月 CAAI Transactions on Intelligent Systems Jan. 2020
·100· 智能系统学报 第15卷 用中文时总会出现各种各样的语法错误,一个自 于中文文本语法错误纠正要多很多。最早基于规 动化的中文文本语法错误纠正系统对于将汉语作 则的语法错误纠正工作可以追朔到20世纪80年 为第二语言的学习者,将很好地辅助他们进行汉 代,Macdonald等)提出了一种自动化语法错误检 语学习;此外,这样的自动化纠错系统,对于国内 查工具,依据预先设计的规则进行错误匹配和纠 的婴幼儿在学习中文时,也能起到正确的指引作 正。但是这种基于规则的错误纠正方法的性能很 用,从小养成正确的汉语表述和书写习惯,避免 大程度上取决于制定的规则的好坏和文本预处理 经常出现的误用和乱用。基于此,我们在之前英 工具的鲁棒性,所以这一类人工制定规则的方法 文语法错误纠正的工作基础上,进行了中文语法 很快被基于数据自动化抽取规则方法取代,其中 错误纠正的相关研究,根据中文语法和汉字的特 比较具有代表性是1997年由Mangu等4-s1从 殊性,提出了一种利用同形异义词和同音异义词 Brown数据集自动抽取出的自动化拼写错误纠正 的错误文本构造方法和基于通顺度、语法和句法 规则系统。 相似度的人造数据筛选方案,并将这些构造的错 随着错误文本语料的进一步扩大和计算能力 误文本扩充到公开数据集中进行实验,首次在中 的提升,统计机器学习方法被广泛应用于文本语 文文本语法错纠正问题上使用自注意力机制山和 法错误纠正,比如Cahill等阿在2013年提出的基 复制机制,在标准的中文语法错误纠正测试集 于分类模型的介词错误纠正模型,以及大量在统 上取得了最好的结果。 计机器翻译领域被证明有效的方法的也被大量引 1文本语法错误纠正 入文本语法错误纠正这个任务中-1,这一类方法 进一步将文本语法错误纠正方法在英文标准测试 文本语法错误的自动化纠正作为一个充满挑 集上提升到了一个新的高度。随着深度学习近十 战性的自然语言处理任务,一直以来备受关注。 几年来在人工智能领域的绝对主导地位以及神经 其目的是对人们书写或者其他系统,比如语音识 机器翻译方法较统计翻译方法在机器翻译任务上 别、机器翻译,产生的文本进行错误的检测和纠 的优势,大量研究学者也在探索基于深度神经网 正。近几年来,随着深度学习的兴起,文本语法 络的自动化文本语法错误纠正。其中最早的工作 错误纠正从之前基于规则的方法逐步转变为基于 是2014年Xie等0提出的一种基于序列到序列 学习的方式,传统的先进行错误检测,再对存在 学习的字母级别文本语法错误纠正系统。这一类 错误的文本进行纠正的两段式方案已被取代,纠 的方法基本都采用这种序列到序列学习的框架, 正阶段也不需要针对不同的错误设计特定的纠正 然后从各个角度去进行改进,以提升模型的效 规则,而是将语法错误纠正看作一个错误文本到 果,比如引入编辑操作信息指导错误纠正操作叫 正确文本的翻译过程,利用深度学习时代自然语 通过数据增广和通顺度度量进行选择的迭代型错 言处理领域的经典模型一序列到序列学习进 误纠正方法)以及引入与训练任务和解码中引 行端到端的文本语法错误纠正。这种方式需要提 入复制机制的语法错误纠正模型)等。 供有经验的对应语言使用者标注好的训练数据 与英文文本语法错误纠正的广泛研究不同, 原始错误文本和对应的正确文本组成成对的一条 中文文本语法错误纠正的研究工作相对较少, 样本,如表1所示。 2018年之前的工作主要聚焦于文本错误的检测 表1训练样本示例 也有一些工作在研究繁体中文的拼写错误,比如 Table 1 Some examples in the training data SIGHAN系列的繁体中文拼写错误检查比赛。 模型输入 模型输出 2018年,国际自然语言处理和中文计算会议 我在家里一个人学习中文。 我在家里自学中文。 NLPCC)举办了简体中文语法错误纠正比赛O, ·直下雨而且有点儿冷。 这次比赛不在局限于繁体中文拼写错误,而是针 一直下雨而点儿冷。 一直下雨所以有点儿冷。 对所有不同类型的错误进行纠正,并在标准测试 我的小狗正在出牙。 我的小狗正在长牙。 集上进行模型性能对比。其中,阿里巴巴的团队 提出了一种基于统计机器翻译模型和神经机器翻 2相关工作 译模型的层次化混合模型,来自有道的Fu等人 提出一种分阶段纠正方案,他们针对不同的错误 因为英语作为被全世界广泛使用的第二语 类型设计了不同的纠正模型,然后利用集成学 言,针对英文文本语法错误纠正的研究工作相对 习的思想和候选解排序的后处理等方式,取得了
用中文时总会出现各种各样的语法错误,一个自 动化的中文文本语法错误纠正系统对于将汉语作 为第二语言的学习者,将很好地辅助他们进行汉 语学习;此外,这样的自动化纠错系统,对于国内 的婴幼儿在学习中文时,也能起到正确的指引作 用,从小养成正确的汉语表述和书写习惯,避免 经常出现的误用和乱用。基于此,我们在之前英 文语法错误纠正的工作基础上,进行了中文语法 错误纠正的相关研究,根据中文语法和汉字的特 殊性,提出了一种利用同形异义词和同音异义词 的错误文本构造方法和基于通顺度、语法和句法 相似度的人造数据筛选方案,并将这些构造的错 误文本扩充到公开数据集中进行实验,首次在中 文文本语法错纠正问题上使用自注意力机制[1] 和 复制机制[2] ,在标准的中文语法错误纠正测试集 上取得了最好的结果。 1 文本语法错误纠正 文本语法错误的自动化纠正作为一个充满挑 战性的自然语言处理任务,一直以来备受关注。 其目的是对人们书写或者其他系统,比如语音识 别、机器翻译,产生的文本进行错误的检测和纠 正。近几年来,随着深度学习的兴起,文本语法 错误纠正从之前基于规则的方法逐步转变为基于 学习的方式,传统的先进行错误检测,再对存在 错误的文本进行纠正的两段式方案已被取代,纠 正阶段也不需要针对不同的错误设计特定的纠正 规则,而是将语法错误纠正看作一个错误文本到 正确文本的翻译过程,利用深度学习时代自然语 言处理领域的经典模型−序列到序列学习进 行端到端的文本语法错误纠正。这种方式需要提 供有经验的对应语言使用者标注好的训练数据, 原始错误文本和对应的正确文本组成成对的一条 样本,如表 1 所示。 表 1 训练样本示例 Table 1 Some examples in the training data 模型输入 模型输出 我在家里一个人学习中文。 我在家里自学中文。 一直下雨而点儿冷。 一直下雨而且有点儿冷。 一直下雨所以有点儿冷。 我的小狗正在出牙。 我的小狗正在长牙。 2 相关工作 因为英语作为被全世界广泛使用的第二语 言,针对英文文本语法错误纠正的研究工作相对 于中文文本语法错误纠正要多很多。最早基于规 则的语法错误纠正工作可以追朔到 20 世纪 80 年 代,Macdonald 等 [3] 提出了一种自动化语法错误检 查工具,依据预先设计的规则进行错误匹配和纠 正。但是这种基于规则的错误纠正方法的性能很 大程度上取决于制定的规则的好坏和文本预处理 工具的鲁棒性,所以这一类人工制定规则的方法 很快被基于数据自动化抽取规则方法取代,其中 比较具有代表性是 1997 年由 Mangu 等 [ 4 - 5 ] 从 Brown 数据集自动抽取出的自动化拼写错误纠正 规则系统。 随着错误文本语料的进一步扩大和计算能力 的提升,统计机器学习方法被广泛应用于文本语 法错误纠正,比如 Cahill 等 [6] 在 2013 年提出的基 于分类模型的介词错误纠正模型,以及大量在统 计机器翻译领域被证明有效的方法的也被大量引 入文本语法错误纠正这个任务中[7-8] ,这一类方法 进一步将文本语法错误纠正方法在英文标准测试 集上提升到了一个新的高度。随着深度学习近十 几年来在人工智能领域的绝对主导地位以及神经 机器翻译方法较统计翻译方法在机器翻译任务上 的优势,大量研究学者也在探索基于深度神经网 络的自动化文本语法错误纠正。其中最早的工作 是 2014 年 Xie 等 [10] 提出的一种基于序列到序列 学习的字母级别文本语法错误纠正系统。这一类 的方法基本都采用这种序列到序列学习的框架, 然后从各个角度去进行改进,以提升模型的效 果,比如引入编辑操作信息指导错误纠正操作[11] , 通过数据增广和通顺度度量进行选择的迭代型错 误纠正方法[12] 以及引入与训练任务和解码中引 入复制机制的语法错误纠正模型[13] 等。 与英文文本语法错误纠正的广泛研究不同, 中文文本语法错误纠正的研究工作相对较少, 2018 年之前的工作主要聚焦于文本错误的检测[14] , 也有一些工作在研究繁体中文的拼写错误,比如 SIGHAN 系列的繁体中文拼写错误检查比赛[15]。 2018 年,国际自然语言处理和中文计算会议 (NLPCC) 举办了简体中文语法错误纠正比赛[16] , 这次比赛不在局限于繁体中文拼写错误,而是针 对所有不同类型的错误进行纠正,并在标准测试 集上进行模型性能对比。其中,阿里巴巴的团队 提出了一种基于统计机器翻译模型和神经机器翻 译模型的层次化混合模型[17] ;来自有道的 Fu 等人 提出一种分阶段纠正方案,他们针对不同的错误 类型设计了不同的纠正模型[18] ,然后利用集成学 习的思想和候选解排序的后处理等方式,取得了 ·100· 智 能 系 统 学 报 第 15 卷
第1期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·101· 标准测试集上的最好结果;此外,不同于其他队 式中:T表示训练数据集,本文中指错误-正确文 伍广泛采用的长短时记忆网络LSTM(Long Short 本对:0表示采用的模型的参数,本文中指使用的 Term Memory),Ren等P还提出了一种基于卷积 自注意力机制模型的参数。 神经网络CNN(Convolutional Neural Network)的序 训练好模型之后,对于给定的一段未知是否 列到序列纠正模型,也取得了非常不错的结果。 存在错误的文本,序列到序列学习的模型通过自 回归的解码方式生成累积概率最大候选纠正文 3C-Transformer模型 本,如式(2): 本文使用的模型是经典的带注意力机制的序 p(ylx:0)= p(yilx.y<i:0) (2) 列到序列学习模型四结构,所不同的是,本文中采 用的是目前应用更为广泛的基于自注意力机制 3.2 Transformer模型 的Transformer模型,自注意力机制已经在很多 以LSTM和GRU2]为代表的循环神经网络 场景下被证明能取得比文献[22]中采用的软注意 在机器翻译等序列建模问题上一直都处于统治地 力机制更好的性能,基于此的Transformer模型也 位,2017年基于自注意力机制的Transformer模型 因其天然的并行性,在自然语言处理任务中被广 的提出打破了这一垄断,目前很多地自然语言处 泛使用。 理任务的最好结果都是基于这种模型结构。 此外,鉴于文本语法错误纠正这个任务与机 Transformer不再依赖循环或者卷积的网络结构, 器翻译等其他任务的特异性,需要纠正的只是整 完全依赖于注意力机制进行序列数据的建模,并 个文本很少的几个词,其余大部分的文本直接复 能很好的捕捉长距离文本之间的依赖关系:此外 制到目标文本中即可,所以与文献[12]中的工作 这种结构具备天然的并行性,可以避免循环神经 类似,本文在中文文本语法错误纠正任务中引入 网络结构的序列前后依赖导致的串行缺点。下面 复制机制,由模型判断直接从原始文本中复制还 介绍一下Transformer中的几个组件: 是从词表空间生成。C-Transformer(Copy Trans- l)缩放点积注意力(scaled dot-product atten- former)模型结构如图I所示。 tion)缩放点积注意力机制的核心如式(3)所示: 我家附近有很多考试补习班 Attention(O,K,V)=softmax QKT (3) 生成概率 d 题■■■ 式中:Q、K和V分别表示多个维度为d的问题、 复制概率 解码概率 关键词和值向量组合而成的矩阵。这种注意力机 回■■■ 制对于一个给定的问题,需要计算其与所有关键 注意力加权文本向量 词的点积,并除以向量维度以消除维度过高带来 影响,然后利用这个点积值作为对每一关键词对 应的值向量的注意力度量,对值向量进行加权求 四圆圆四国 和,得到最终的基于注意力权重的向量化表示。 编码器 解码器 对应到自然语言处理中的序列建模,以本文 我的家附近有很多考式补习班 的文本错误纠正问题为例,在编码时Q、K和V 图1C-Transformer模型结构 对应的都是同一批训练样本中的可能存在错误的 Fig.1 The model architecture of C-Transformer 输入文本,计算每个样本的每一个词向量与本身 3.1序列到序列学习 其他所有词之间的点积值,并作为权重去计算每 序列到序列学习框架在包括机器翻译、自动 一个词的注意力加权的向量化表示,这也是自注 问答等不同的自然语言处理任务上取得了巨大的 意力机制中这个“自”的意思,每一个词在学习其 成功。给定一段输入文本x,序列到序列学习模 表示时都需要注意到所在文本的其他词的含义。 型首先对输入进行编码,学习输入文本的向量化 2)多头注意力(multi-head attention) 表示,然后基于这个输入的向量化表示解码其对 文献[]中的实验结果表明,与进行单一的缩 应的目标输出文本y,这种学习通常利用成对的 放点积相比,将问题、关键词和值向量分别进行 训练数据去最大化对数似然来实现的,如式(1): 多次映射之后分别进行缩放点积注意力计算之 0=argmax logp(yl:0) (1) 后,再拼接起来映射回原始维度的效果会更好, x,)e1 如式(4)所示;
标准测试集上的最好结果;此外,不同于其他队 伍广泛采用的长短时记忆网络 LSTM(Long Short Term Memory)[19] ,Ren 等 [21] 还提出了一种基于卷积 神经网络 CNN(Convolutional Neural Network) 的序 列到序列纠正模型,也取得了非常不错的结果。 3 C-Transformer 模型 本文使用的模型是经典的带注意力机制的序 列到序列学习模型[22] 结构,所不同的是,本文中采 用的是目前应用更为广泛的基于自注意力机制 的 Transformer 模型[1] ,自注意力机制已经在很多 场景下被证明能取得比文献 [22] 中采用的软注意 力机制更好的性能,基于此的 Transformer 模型也 因其天然的并行性,在自然语言处理任务中被广 泛使用。 此外,鉴于文本语法错误纠正这个任务与机 器翻译等其他任务的特异性,需要纠正的只是整 个文本很少的几个词,其余大部分的文本直接复 制到目标文本中即可,所以与文献 [12] 中的工作 类似,本文在中文文本语法错误纠正任务中引入 复制机制[2] ,由模型判断直接从原始文本中复制还 是从词表空间生成。C-Transformer(Copy Transformer) 模型结构如图 1 所示。 我家附近有很多考试补习班 生成概率 复制概率 解码概率 编码器 解码器 我的家附近有很多考式补习班 注意力加权文本向量 a 1−a + h1 h2 h3 h4 x1 x2 x3 x4 h1 h2 h3 h4 h5 y1 y2 y3 y4 y5 图 1 C-Transformer 模型结构 Fig. 1 The model architecture of C-Transformer 3.1 序列到序列学习 x y 序列到序列学习框架在包括机器翻译、自动 问答等不同的自然语言处理任务上取得了巨大的 成功。给定一段输入文本 ,序列到序列学习模 型首先对输入进行编码,学习输入文本的向量化 表示,然后基于这个输入的向量化表示解码其对 应的目标输出文本 ,这种学习通常利用成对的 训练数据去最大化对数似然来实现的,如式 (1): bθ = argmax θ ∑ (x,y)∈T log p(y|x;θ) (1) θ 式中:T 表示训练数据集,本文中指错误−正确文 本对; 表示采用的模型的参数,本文中指使用的 自注意力机制模型的参数。 训练好模型之后,对于给定的一段未知是否 存在错误的文本,序列到序列学习的模型通过自 回归的解码方式生成累积概率最大候选纠正文 本,如式 (2): p(y|x;bθ) = ∏L i=1 p(yi |x, y< i;bθ) (2) 3.2 Transformer 模型 以 LSTM 和 GRU[23] 为代表的循环神经网络 在机器翻译等序列建模问题上一直都处于统治地 位,2017 年基于自注意力机制的 Transformer 模型[1] 的提出打破了这一垄断,目前很多地自然语言处 理任务的最好结果都是基于这种模型结构。 Transformer 不再依赖循环或者卷积的网络结构, 完全依赖于注意力机制进行序列数据的建模,并 能很好的捕捉长距离文本之间的依赖关系;此外 这种结构具备天然的并行性,可以避免循环神经 网络结构的序列前后依赖导致的串行缺点。下面 介绍一下 Transformer 中的几个组件: 1) 缩放点积注意力 (scaled dot-product attention) 缩放点积注意力机制的核心如式 (3) 所示: Attention(Q,K,V) = softmax( QKT √ dk ) V (3) 式中: Q、K 和 V 分别表示多个维度为 dk 的问题、 关键词和值向量组合而成的矩阵。这种注意力机 制对于一个给定的问题,需要计算其与所有关键 词的点积,并除以向量维度以消除维度过高带来 影响,然后利用这个点积值作为对每一关键词对 应的值向量的注意力度量,对值向量进行加权求 和,得到最终的基于注意力权重的向量化表示。 Q K V 对应到自然语言处理中的序列建模,以本文 的文本错误纠正问题为例,在编码时 、 和 对应的都是同一批训练样本中的可能存在错误的 输入文本,计算每个样本的每一个词向量与本身 其他所有词之间的点积值,并作为权重去计算每 一个词的注意力加权的向量化表示,这也是自注 意力机制中这个“自”的意思,每一个词在学习其 表示时都需要注意到所在文本的其他词的含义。 2) 多头注意力 (multi-head attention) 文献 [1] 中的实验结果表明,与进行单一的缩 放点积相比,将问题、关键词和值向量分别进行 多次映射之后分别进行缩放点积注意力计算之 后,再拼接起来映射回原始维度的效果会更好, 如式 (4) 所示; 第 1 期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·101·
·102· 智能系统学报 第15卷 MultiHead(O,K,V)=Concat(head1,head2,..,head)Wo 题,并在句子级别的子任务预训练上对复制机制 head,Attention(owe,KW*,VW) (4) 进行与训练,取得了非常好的效果。基于此,本 式中:W、w、W和W°都表示可学习的权重矩 文将复制机制首次应用在中文文本错误纠正问题 阵;h表示“头”的数量,实际使用时需要注意这些 上,带复制机制的正确文本解码过程如式(6)所示: 矩阵的维度。值得说明的是,虽然引人多头机制 Pw)=(1-a,)×Piw)+a,×p(w) (6) 的缩放点积注意力机制,但可以通过维度变化, 式中:p(w)表示t时刻利用常规注意力机制的词 使得这些操作实际的计算复杂度与单一缩放点积 表解码生成概率;a,表示从词表生成和从原文复 注意力计算是一致的。 制的一个平衡因子,计算方式见式(⑦: 3)编码(Positional Encoding) a,=sigmoid(W∑(g'.) (7) 因为Transformer中没有对序列的顺序依赖 p(w)为t时刻解码的词是从原文复制的概 和前后关系的建模,为了能让模型对利用序列中 率,从公式8计算得到: 词的先后关系的信息,在计算词向量时引入了位 p(w)=softmax(g:K) (8) 置信息编码,将序列中词的相对位置和绝对位置 式中:q,K,V=h,Wg,HW,HWT,分别表示对t时 信息进行编码表示,如式(⑤)所示: 刻解码隐状态的映射和对输入编码隐状态的两种 PE(pos,2i)=sin(pos/100002i/4) PE(pos,2i+1)=cos(pos/100002i/d) (5) 不同变换。每个W都表示各种情况下可学习的 式中:pos表示词的绝对位置;i表示位置向量维 参数矩阵。 度d中的第几位;分别用正弦函数和余弦函数计 整个模型的训练过程就是最大化式(1)的似 算位置向量的奇数位和偶数位的值。 然函数,式(I)的p就对应这里P,w)对所有时刻 实验表明,这种方式的位置信息编码和学习 的累计。 得到的位置信息编码取得的效果基本一致。 4 数据增广 3.3复制机制 复制机制现在也是在自然语言处理问题中被 4.1数据集 广泛使用的一种方法,在文本摘要和语义解析四 实验所使用的数据集是在NLPCC比赛公开 等问题上都被证明了其有效性。文献13]首次将 的数据集基础上进行扩充得到的,原始数据的统 复制机制应用到了英文文本的语法错误纠正问 计属性如表2所示。 表2实验数据统计信息 Table 2 The statistical information of the data 数据 类别 数量 最大长度 最小长度 平均长度 不同字数 原始s 212 17.80 7782 651336 原始T 213 1 18.20 7721 生成1S 36 2 16.26 7782 训练集 1608754 生成1T 36 2 16.67 7721 生成2S 36 2 16.26 8506 1552687 生成2T 36 2 16.67 7721 测试集 2000 247 > 29.66 2214 之前英文文本语法错误纠正工作所获得的经 针对中文这种象形文字的特殊性,本文不仅 验表明,对于这个任务数据集的扩充带来的纠正 仅使用了正确到错误的逆序生成方式生成错误文 效果的提升会非常显著,这是因为错误文本中的 本,而且还整理了一份同形异义和同音异义词 错误非常稀疏,给定的一份训练语料中,错误出 表;并基于这个映射词表,进行基于规则的错误 现的概率的只有10%左右,但是错误的种类非常 文本生成。扩充的训练数据部分统计信息见表2。 多,所以通过一些方式扩充数据,使得训练数据 4.2正确到错误逆序生成 中能出现更多的错误类型,能在一定程度上提升 类似于本文解决的文本错误纠正任务,本文 模型的纠正能力。 同样采用序列到序列学习模型,进行正确文本到
MultiHead(Q,K,V)=Concat(head1 ,head2 ,··· ,headh)WO headi = Attention(QWQ i ,KWK i ,VWV i ) (4) W Q i WK i WV i WO h 式中: 、 、 和 都表示可学习的权重矩 阵; 表示“头”的数量,实际使用时需要注意这些 矩阵的维度。值得说明的是,虽然引入多头机制 的缩放点积注意力机制,但可以通过维度变化, 使得这些操作实际的计算复杂度与单一缩放点积 注意力计算是一致的。 3) 编码 (Positional Encoding) 因为 Transformer 中没有对序列的顺序依赖 和前后关系的建模,为了能让模型对利用序列中 词的先后关系的信息,在计算词向量时引入了位 置信息编码,将序列中词的相对位置和绝对位置 信息进行编码表示,如式 (5) 所示: PE(pos,2i) = sin(pos/10 0002i/d ) PE(pos,2i+1) = cos(pos/10 0002i/d ) (5) i d 式中: pos 表示词的绝对位置; 表示位置向量维 度 中的第几位;分别用正弦函数和余弦函数计 算位置向量的奇数位和偶数位的值。 实验表明,这种方式的位置信息编码和学习 得到的位置信息编码取得的效果基本一致。 3.3 复制机制 复制机制现在也是在自然语言处理问题中被 广泛使用的一种方法,在文本摘要[24] 和语义解析[25] 等问题上都被证明了其有效性。文献 [13] 首次将 复制机制应用到了英文文本的语法错误纠正问 题,并在句子级别的子任务预训练上对复制机制 进行与训练,取得了非常好的效果。基于此,本 文将复制机制首次应用在中文文本错误纠正问题 上,带复制机制的正确文本解码过程如式 (6) 所示: pt(w) = (1−at )× p ∗ t (w)+at × p ′ t (w) (6) p ∗ t (w) t at 式中: 表示 时刻利用常规注意力机制的词 表解码生成概率; 表示从词表生成和从原文复 制的一个平衡因子,计算方式见式 (7): at = sigmoid(WT∑ ((q T t K) T ·V)) (7) p ′ t (w) 为 t 时刻解码的词是从原文复制的概 率,从公式 8 计算得到: p ′ t (w) = softmax(q T t K) (8) qt ,K,V = htWT q , HsWT k , HsWT v t W 式中: ,分别表示对 时 刻解码隐状态的映射和对输入编码隐状态的两种 不同变换。每个 都表示各种情况下可学习的 参数矩阵。 p pt(w) 整个模型的训练过程就是最大化式 (1) 的似 然函数,式 (1) 的 就对应这里 对所有时刻 的累计。 4 数据增广 4.1 数据集 实验所使用的数据集是在 NLPCC 比赛公开 的数据集基础上进行扩充得到的,原始数据的统 计属性如表 2 所示。 表 2 实验数据统计信息 Table 2 The statistical information of the data 数据 类别 数量 最大长度 最小长度 平均长度 不同字数 训练集 原始S 651 336 212 1 17.80 7 782 原始T 213 1 18.20 7 721 生成1S 1 608 754 36 2 16.26 7 782 生成1T 36 2 16.67 7 721 生成2S 1 552 687 36 2 16.26 8 506 生成2T 36 2 16.67 7 721 测试集 S 2 000 247 7 29.66 2 214 之前英文文本语法错误纠正工作所获得的经 验表明,对于这个任务数据集的扩充带来的纠正 效果的提升会非常显著,这是因为错误文本中的 错误非常稀疏,给定的一份训练语料中,错误出 现的概率的只有 10% 左右,但是错误的种类非常 多,所以通过一些方式扩充数据,使得训练数据 中能出现更多的错误类型,能在一定程度上提升 模型的纠正能力。 针对中文这种象形文字的特殊性,本文不仅 仅使用了正确到错误的逆序生成方式生成错误文 本,而且还整理了一份同形异义和同音异义词 表;并基于这个映射词表,进行基于规则的错误 文本生成。扩充的训练数据部分统计信息见表 2。 4.2 正确到错误逆序生成 类似于本文解决的文本错误纠正任务,本文 同样采用序列到序列学习模型,进行正确文本到 ·102· 智 能 系 统 学 报 第 15 卷
第1期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·103· 错误文本的生成过程的这种方法在机器翻译中非 文本与原始正确文本构成一个新的成对样本添加 常常见,被称为反向翻译:可以很容易地应用到 到训练数据中。为了保证多样性,这个生成过程 错误文本的生成中,利用错误-正确文本对,直接 重复5次,最后对所有生成的文本对进行去重,构 训练一个正确文本到存在错误的文本的逆向生成 成词表映射生成的扩充训练数据。 模型,然后利用这个模型通过大量的正确文本去 本文最终使用的训练数据的统计信息见表2, 生成大量的存在错误的文本。这里判断生成的文 其中原始表示公开数据集,生成1表示正确到错 本是否存在错误,采用的是文献[12]中提出的通 误的序列到序列逆序生成方法,生成2表示基于 顺度度量方案,利用大规模的正确文本语料预训 相似字的词表映射生成方式,S和T分别表示模 练了一个语言模型,计算文本在这个语言模型的 型输入错误文本和需要的正确输出文本,我们只 生成概率作为通顺度度量。 保留文本长度大于2,小于等于36,错误-正确文 此外,为了保证生成的错误文本与原始正确 本对的编辑距离小于等于5的文本对构成最终的 文本的相关性,还利用语义相似性和编辑距离两 数据集。 种方式对生成的错误文本进行进一步综合筛选。 其中语义相似性的度量,本文采用的是一个在大 5实验结果与分析 规模正确文本语料上预训练的3层LSTM网络模 5.1实验参数设置 型,通过这个模型进行句子级别语义向量计算, 实验所用的Transformer模型的编码和解码 取最后一个时刻的模型输出作为输入文本的句子 都为6层,“头”的数量为8,词向量维度为512,序 向量,并计算对用正确-错误文本对的语义向量 列最大长度为36,全连接层节点数为4096,初始 的余弦相似性。 学习率为0.001,在连续2代性能无改进时按 最后对通过正确到错误逆序生成的所有错误 0.95的比率进行线性衰减,连续6代无改进则提 文本进行筛选,保留通顺度低于原始正确文本且 前终止训练,保留在验证集上最好的模型用于测 语义相似度大于等于0.9,编辑距离小于5的“错 试,不同实验配置下,随着训练的进行,验证集上 误”文本,与原始正确文本构成成对训练数据,扩 的损失函数变化曲线如图2所示。 充到训练数据中。 0.26 ranstormer+台 4.3词表映射生成 0.24 Transfo or+h 针对中文象形文字的特点,本文还提出了一 an +h 种新型的错误文本生成方案一基于同形异义 0.20 C.T C-T rmer+ 词和同音异义词表的错误文本生成,主要针对 0.16 中文中特别容易出现的错字别字类型的错误。需 014 o。086.88话 要指出的是,文献[26]中提供的相似字集合是繁 0.12 年空 体的,而本文针对的是简体中文错误纠正,所以 0 5 1015202530 训练代数 利用OpenCC!2m这个开源工具对这个集合进行转 化,集合中部分示例如表3所示。 图2不同配置下模型验证集损失函数值 Fig.2 The loss on validation set with different settings 表3混淆集中的同音或同形字示例 5.2评价指标 Table 3 Some examples of the confusion set with similar pronunciation or shape 文本语法错误纠正的标准评价指标是最大匹 原词 同音同形词 配分数(M2-Scorer),计算的是模型的输出修改和 标准修改在字、词或短语级别的最大覆盖,本文 兄 凶汹匈胸熊雄汹芎 采用的是字粒度的度量,对模型的输出和标准的 呐 纳那钠讷娜捺那拿哪蜡刺腊辣落 修改,按式(9)计算精确度、召回率和Fos。 己 已忌厄泛妃改杞凹卮犯危 甲 匣押呷柙胛钾申狎伸坤呻 在词表映射错误文本生成的过程中,对每一 e; (9) 句正确文本,随机地将其中的1~3个字替换成其 5PR 对应的随机一个同形异义或同音异义字,若选中 Fos=P+4R 的字不存在相似字,则不进行替换,这样生成的 式中:e,ng:={e∈e,门g∈g,e=gh;e:和g:分别表示
错误文本的生成过程的这种方法在机器翻译中非 常常见,被称为反向翻译;可以很容易地应用到 错误文本的生成中,利用错误−正确文本对,直接 训练一个正确文本到存在错误的文本的逆向生成 模型,然后利用这个模型通过大量的正确文本去 生成大量的存在错误的文本。这里判断生成的文 本是否存在错误,采用的是文献 [12] 中提出的通 顺度度量方案,利用大规模的正确文本语料预训 练了一个语言模型,计算文本在这个语言模型的 生成概率作为通顺度度量。 此外,为了保证生成的错误文本与原始正确 文本的相关性,还利用语义相似性和编辑距离两 种方式对生成的错误文本进行进一步综合筛选。 其中语义相似性的度量,本文采用的是一个在大 规模正确文本语料上预训练的 3 层 LSTM 网络模 型,通过这个模型进行句子级别语义向量计算, 取最后一个时刻的模型输出作为输入文本的句子 向量,并计算对用正确−错误文本对的语义向量 的余弦相似性。 最后对通过正确到错误逆序生成的所有错误 文本进行筛选,保留通顺度低于原始正确文本且 语义相似度大于等于 0.9,编辑距离小于 5 的“错 误”文本,与原始正确文本构成成对训练数据,扩 充到训练数据中。 4.3 词表映射生成 针对中文象形文字的特点,本文还提出了一 种新型的错误文本生成方案−基于同形异义 词和同音异义词表[26] 的错误文本生成,主要针对 中文中特别容易出现的错字别字类型的错误。需 要指出的是,文献 [26] 中提供的相似字集合是繁 体的,而本文针对的是简体中文错误纠正,所以 利用 OpenCC[27] 这个开源工具对这个集合进行转 化,集合中部分示例如表 3 所示。 表 3 混淆集中的同音或同形字示例 Table 3 Some examples of the confusion set with similar pronunciation or shape 原词 同音/同形词 兄 凶汹匈胸熊雄讻芎 呐 纳那钠讷娜捺那拿哪蜡剌腊辣落 己 已忌厄泛妃改杞凹卮犯危 甲 匣押呷柙胛钾申狎伸坤呻 在词表映射错误文本生成的过程中,对每一 句正确文本,随机地将其中的 1~3 个字替换成其 对应的随机一个同形异义或同音异义字,若选中 的字不存在相似字,则不进行替换,这样生成的 文本与原始正确文本构成一个新的成对样本添加 到训练数据中。为了保证多样性,这个生成过程 重复 5 次,最后对所有生成的文本对进行去重,构 成词表映射生成的扩充训练数据。 本文最终使用的训练数据的统计信息见表 2, 其中原始表示公开数据集,生成 1 表示正确到错 误的序列到序列逆序生成方法,生成 2 表示基于 相似字的词表映射生成方式,S 和 T 分别表示模 型输入错误文本和需要的正确输出文本,我们只 保留文本长度大于 2,小于等于 36,错误−正确文 本对的编辑距离小于等于 5 的文本对构成最终的 数据集。 5 实验结果与分析 5.1 实验参数设置 实验所用的 Transformer 模型的编码和解码 都为 6 层,“头”的数量为 8,词向量维度为 512,序 列最大长度为 36,全连接层节点数为 4 096,初始 学习率为 0.001,在连续 2 代性能无改进时按 0.95 的比率进行线性衰减,连续 6 代无改进则提 前终止训练,保留在验证集上最好的模型用于测 试,不同实验配置下,随着训练的进行,验证集上 的损失函数变化曲线如图 2 所示。 0.26 0.24 0.22 0.20 0.18 0.16 0.14 0.12 0 5 10 15 训练代数 20 25 30 验证集损失函数值 Transformer+原始 Transformer+原始+生成1 Transformer+原始+生成2 Transformer+所有 C-Transformer+原始 C-Transformer+原始+生成 C-Transformer+原始+生成2 C-Transformer+所有 图 2 不同配置下模型验证集损失函数值 Fig. 2 The loss on validation set with different settings 5.2 评价指标 文本语法错误纠正的标准评价指标是最大匹 配分数 (M2 -Scorer),计算的是模型的输出修改和 标准修改在字、词或短语级别的最大覆盖,本文 采用的是字粒度的度量,对模型的输出 和标准的 修改,按式 (9) 计算精确度、召回率和 F0.5。 P = ∑n i=1 ei ∩gi ∑n i=1 |ei | R = ∑n i=1 ei ∩gi ∑n i=1 gi F0.5 = 5PR P+4R (9) ei ∩gi = {e ∈ ei |∃g ∈ gi 式中: , e == g} ;ei 和 gi 分别表示 第 1 期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·103·
·104· 智能系统学报 第15卷 模型输出和标准答案对应的修改的集合。 型或者多模型混合相比,但在补充了人造数据之 5.3实验结果 后,无论是基于序列生成的数据扩充还是基于词 本文利用图1所示的模型,在第3章中介绍 表映射生成扩充,在测试集上的效果均好于目前 的数据集上进行了充分的实验,在2000条标 最好的结果,两种数据扩充方式分别提升+1.05 准测试集上进行取得标准评价指标结果如表4 +1.29,且扩充数据带来的影响要大于复制机制的 所示。 影响。一般情况下,在文本纠错领域,利用数据 需要说明的是,为了避免分词工具带来的干 扩充往往能带来比模型改进更明显的效果提升, 扰,所有的实验都是在字粒度上进行的,所以将 这一结论与英文文本错误纠正一致。 标准测试集中的人工标注的标签进行了字节处 进一步可以发现,不管是否使用复制机制,基 理。此外,对长度大于36的输入文本进行了切 于中文象形文字特点而提出基于同形异义同音 分,按标点符号切分成长度数段长度小于等于 异义词表映射的错误文本生成构造的样本,能带 36的子串,纠正后再将结果拼接成原始文本。实 来比通用错误文本生成更明显的性能提升。在使 验结果表明,本文提出的数据增广方式和复制机 用复制机制之后,在数据扩充之后,性能得到更 制能显著提升中文文本语法错误纠正的效果,在 进一步的提升,最好的结果为34.05,较基准提升 标准测试集上取得目前最好的结果。 4.14。这一方面是因为更多的数据使得模型的学 习更加充分,更能表征不同错误到正确的映射关 表4实验结果对比表 Table 4 The results of our method on the standard dataset 系;另一方面,人造错误样本引入了更多的错误 类型,模型在训练时能感知到更多的错误形式, 模型 数据 R Fos 提升了泛化性能。 A1iGM可 原始 41.0013.7529.36 此外,模型性能的提升主要在召回率指标上, YouDao 原始 35.2418.6429.91 精确度没有明显的改善,低于最高的精度值。这 原始 32.2718.5827.65 是因为人造数据中出现的错误会比正常样本中错 原始+生成1 34.7621.5530.96 误的占比高,使得模型更倾向于对文本进行修 Transformer 原始+生成2 34.9221.8831.20 改,所以显著提升了召回率:而复制机制使得模 所有 35.0323.8732.03 型学习到在某大部分时候从输人直接复制文本到 原始 36.4919.1530.89 目标文本,能一定程度上缓解这种过多修改的现 原始+生成1 37.0921.5732.42 象,因为对于错误文本而言,一般倾向于保守修 C-Transformer 原始+生成2 37.3422.7433.09 改,以免引入不必要的错误,这也是F5这个指标 所有 的初衷。 38.2223.7234.05 最后,从表5中的一些修改示例中,能看出我 5.4分析与讨论 们的方法能处理中文文本常见同形同音错别字 从表4的实验结果可以看出,单一的Trans-. 语序、缺失、冗余、连接词等错误都具备比较好的 former模型在同样的数据上效果无法与集成的模 纠正能力。 表5模型修改样本示例 Table 5 Some examples of the corrected sentences 序号 模型输入 模型输出 我的家附近有很多考式补习班。 我家附近有很多考试补习班。 她已经毕业了大学,专业是视觉设计。 她已经大学毕业了,专业是视觉设计。 3 每星期二,老师让我们布置作业。 每个星期二,老师都会给我们布置作业。 我刚洗完了米而把米放在电饭锅。 我刚洗完米,把米放在电饭锅里。 5 诊断化谢异常综合征 诊断代谢异常综合征 6 中医诊断:项痹病,气滞血淤 中医诊断:项痹病,气滞血瘀 7 在中国,不官是谁,都抽烟。 在中国,不管是谁,都抽烟。 8 对我们国家来说,帮挨饿的人是当然做的事情。 对我们国家来说,帮挨饿的人是当然要做的事情
模型输出和标准答案对应的修改的集合。 5.3 实验结果 本文利用图 1 所示的模型,在第 3 章中介绍 的数据集上进行了充分的实验,在 2 000 条标 准测试集上进行取得标准评价指标结果如表 4 所示。 需要说明的是,为了避免分词工具带来的干 扰,所有的实验都是在字粒度上进行的,所以将 标准测试集中的人工标注的标签进行了字节处 理。此外,对长度大于 36 的输入文本进行了切 分,按标点符号切分成长度数段长度小于等于 36 的子串,纠正后再将结果拼接成原始文本。实 验结果表明,本文提出的数据增广方式和复制机 制能显著提升中文文本语法错误纠正的效果,在 标准测试集上取得目前最好的结果。 表 4 实验结果对比表 Table 4 The results of our method on the standard dataset 模型 数据 P R F0.5 AliGM[17] 原始 41.00 13.75 29.36 YouDao[18] 原始 35.24 18.64 29.91 Transformer 原始 32.27 18.58 27.65 原始+生成1 34.76 21.55 30.96 原始+生成2 34.92 21.88 31.20 所有 35.03 23.87 32.03 C-Transformer 原始 36.49 19.15 30.89 原始+生成1 37.09 21.57 32.42 原始+生成2 37.34 22.74 33.09 所有 38.22 23.72 34.05 5.4 分析与讨论 从表 4 的实验结果可以看出,单一的 Transformer 模型在同样的数据上效果无法与集成的模 型或者多模型混合相比,但在补充了人造数据之 后,无论是基于序列生成的数据扩充还是基于词 表映射生成扩充,在测试集上的效果均好于目前 最好的结果,两种数据扩充方式分别提升+1.05、 +1.29,且扩充数据带来的影响要大于复制机制的 影响。一般情况下,在文本纠错领域,利用数据 扩充往往能带来比模型改进更明显的效果提升, 这一结论与英文文本错误纠正一致。 进一步可以发现,不管是否使用复制机制,基 于中文象形文字特点而提出基于同形异义/同音 异义词表映射的错误文本生成构造的样本,能带 来比通用错误文本生成更明显的性能提升。在使 用复制机制之后,在数据扩充之后,性能得到更 进一步的提升,最好的结果为 34.05,较基准提升 4.14。这一方面是因为更多的数据使得模型的学 习更加充分,更能表征不同错误到正确的映射关 系;另一方面,人造错误样本引入了更多的错误 类型,模型在训练时能感知到更多的错误形式, 提升了泛化性能。 此外,模型性能的提升主要在召回率指标上, 精确度没有明显的改善,低于最高的精度值。这 是因为人造数据中出现的错误会比正常样本中错 误的占比高,使得模型更倾向于对文本进行修 改,所以显著提升了召回率;而复制机制使得模 型学习到在某大部分时候从输入直接复制文本到 目标文本,能一定程度上缓解这种过多修改的现 象,因为对于错误文本而言,一般倾向于保守修 改,以免引入不必要的错误,这也是 F0.5 这个指标 的初衷。 最后,从表 5 中的一些修改示例中,能看出我 们的方法能处理中文文本常见同形/同音错别字、 语序、缺失、冗余、连接词等错误都具备比较好的 纠正能力。 表 5 模型修改样本示例 Table 5 Some examples of the corrected sentences 序号 模型输入 模型输出 1 我的家附近有很多考式补习班。 我家附近有很多考试补习班。 2 她已经毕业了大学,专业是视觉设计。 她已经大学毕业了,专业是视觉设计。 3 每星期二,老师让我们布置作业。 每个星期二,老师都会给我们布置作业。 4 我刚洗完了米而把米放在电饭锅。 我刚洗完米,把米放在电饭锅里。 5 诊断化谢异常综合征 诊断代谢异常综合征 6 中医诊断:项痹病,气滞血淤 中医诊断:项痹病,气滞血瘀 7 在中国,不官是谁,都抽烟。 在中国,不管是谁,都抽烟。 8 对我们国家来说,帮挨饿的人是当然做的事情。 对我们国家来说,帮挨饿的人是当然要做的事情。 ·104· 智 能 系 统 学 报 第 15 卷
第1期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·105· 续表5 序号 模型输入 模型输出 9 随着生活的提高,人们的要求也越来越提高。 随着生活水平的提高,人们的要求也越来越高。 10 这种材料表示吸烟引起了人们多么大的损害。 这种材料表明吸烟引起了多么大的损害。 11 父母也一般在看电视很少说话。 父母一般在看电视时也很少说话。 为了说好中文,经常找路人聊天 为了说好中文,我经常找路人聊天 农药会有害于人的健康,甚至孕妇吃了以后会生产不正农药会有害于人的健康,孕妇吃了以后甚至会生产不正 13 常的孩子。 常的孩子。 14 随着中国经济突飞猛近.建造工业与日俱增。 随着中国经济突飞猛进,建造工业与日俱增。 15 那些空气污染也没有助于人生的身体建康。 那些空气污染也无助于人的身体健康。 16 这些问题其实是不该范的,写文章再要细心,重视细节。这些错误其实是不该犯的,写文章要细心,重视细节。 17 我把弟弟醒过来后,一起开始找答案。 我把弟弟叫醒过来后,开始一起找答案。 18 但是,互联网对我们有利还是有弊都由我们如何使用。但是,互联网对我们有利还是有弊都在于我们如何使用它。 19 我被交通事故了。 我逼到交通事故了。 20 你来北京的时候,去看长城、故宫和颐和园。 你来北京的时候,一定要去看长城、故宫和颐和园。 21 他们特别热情对我.因为我爸爸是老师。 他们对我特别热情,因为我爸爸是老师。 22 大家都很满足我们的活动。 大家都很喜欢我们办的活动。 23 没有小孩的二个人,都把她看成亲生女儿对待。 没有小孩的两个人,都把她当作亲生女儿。 24 结果那一天不吃了午饭。 结果那一天不吃午饭了。 25 问题从占菜的时候,就出现了。 问题从点菜的时候,就出现了。 6结束语 works[C]//Proceedings of the 28th International Confer- ence on Neural Information Processing Systems.Cam- 本文针对中文文本语法错误纠正问题,从数 bridge,.USA,2015:2692-2700. 据扩充和模型改进两个角度进行了研究。首先利 [3]MACDONALD N,FRASE L,GINGRICH P,et al.The 用序列到序列学习的方式生成错误样本,并基于 writer's workbench:computer aids for text analysis[J]. 通顺度、语义相似度和编辑距离等指标进行生成 IEEE transactions on communications,1982,30(1): 数据的筛选;然后利用中文象形文字的特点,提 105-110. 出一种基于同音/同形异义词表的映射方法构造 [4]FRANCIS W N,KUCERA H.A standard corpus of 错误样本,这两种方式扩充训练数据集之后,基 present-day edited American English,for use with digital 准模型的性能有显著提升。此外,因为错误在自 computers[R].Providence,RI:Department of Linguistics, 然文本中出现的比例较低,纠正过程中大部分的 Brown University,1979. 文本只需要从原文本中直接复制即可这一特点, [5]MANGU L,BRILL E.Automatic rule acquisition for 首次在中文文本语法错误纠正中引入复制机制, spelling correction[Cl/Proceedings of the Fourteenth Inter- 进一步提升了模型的效果。我们还发现,复制机 national Conference on Machine Learning.San Francisco, USA.1997:187-194 制对由于生成的语料中错误占比较高,使得模型 [6]CAHILL A,MADNANI N,TETREAULT J,et al.Robust 倾向于进行更多的修改,导致误报率较高的问 systems for preposition error correction using Wikipedia 题,也有一定的矫正能力,保证召回率的同时提 revisions[C]//Proceedings of the 2013 Conference of the 升精确度。 North American Chapter of the Association for Computa- 参考文献: tional Linguistics:Human Language Technologies.At- lanta,USA.2013:507-517. [1]VASWANI A.SHAZEER N.PARMAR N.et al.Atten- [7]BROCKETT C,DOLAN W B,GAMON M.Correcting tion is all you need[Cl//Advances in Neural Information ESL errors using phrasal SMT techniques[C]//Proceedings Processing Systems.Long Beach,USA,2017:5998-6008. of the 21st International Conference on Computational Lin- [2]VINYALS O,FORTUNATO M,JAITLY N.Pointer net- guistics and the 44th annual meeting of the Association for
6 结束语 本文针对中文文本语法错误纠正问题,从数 据扩充和模型改进两个角度进行了研究。首先利 用序列到序列学习的方式生成错误样本,并基于 通顺度、语义相似度和编辑距离等指标进行生成 数据的筛选;然后利用中文象形文字的特点,提 出一种基于同音/同形异义词表的映射方法构造 错误样本,这两种方式扩充训练数据集之后,基 准模型的性能有显著提升。此外,因为错误在自 然文本中出现的比例较低,纠正过程中大部分的 文本只需要从原文本中直接复制即可这一特点, 首次在中文文本语法错误纠正中引入复制机制, 进一步提升了模型的效果。我们还发现,复制机 制对由于生成的语料中错误占比较高,使得模型 倾向于进行更多的修改,导致误报率较高的问 题,也有一定的矫正能力,保证召回率的同时提 升精确度。 参考文献: VASWANI A, SHAZEER N, PARMAR N, et al. Attention is all you need[C]//Advances in Neural Information Processing Systems. Long Beach, USA, 2017: 5998–6008. [1] [2] VINYALS O, FORTUNATO M, JAITLY N. Pointer networks[C]//Proceedings of the 28th International Conference on Neural Information Processing Systems. Cambridge, USA, 2015: 2692–2700. MACDONALD N, FRASE L, GINGRICH P, et al. The writer's workbench: computer aids for text analysis[J]. IEEE transactions on communications, 1982, 30(1): 105–110. [3] FRANCIS W N, KUCERA H. A standard corpus of present-day edited American English, for use with digital computers[R]. Providence, RI: Department of Linguistics, Brown University, 1979. [4] MANGU L, BRILL E. Automatic rule acquisition for spelling correction[C]//Proceedings of the Fourteenth International Conference on Machine Learning. San Francisco, USA, 1997: 187–194. [5] CAHILL A, MADNANI N, TETREAULT J, et al. Robust systems for preposition error correction using Wikipedia revisions[C]//Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Atlanta, USA, 2013: 507–517. [6] BROCKETT C, DOLAN W B, GAMON M. Correcting ESL errors using phrasal SMT techniques[C]//Proceedings of the 21st International Conference on Computational Linguistics and the 44th annual meeting of the Association for [7] 续表 5 序号 模型输入 模型输出 9 随着生活的提高,人们的要求也越来越提高。 随着生活水平的提高,人们的要求也越来越高。 10 这种材料表示吸烟引起了人们多么大的损害。 这种材料表明吸烟引起了多么大的损害。 11 父母也一般在看电视很少说话。 父母一般在看电视时也很少说话。 12 为了说好中文,经常找路人聊天 为了说好中文,我经常找路人聊天 13 农药会有害于人的健康,甚至孕妇吃了以后会生产不正 常的孩子。 农药会有害于人的健康,孕妇吃了以后甚至会生产不正 常的孩子。 14 随着中国经济突飞猛近,建造工业与日俱增。 随着中国经济突飞猛进,建造工业与日俱增。 15 那些空气污染也没有助于人生的身体建康。 那些空气污染也无助于人的身体健康。 16 这些问题其实是不该范的,写文章再要细心,重视细节。 这些错误其实是不该犯的,写文章要细心,重视细节。 17 我把弟弟醒过来后,一起开始找答案。 我把弟弟叫醒过来后,开始一起找答案。 18 但是,互联网对我们有利还是有弊都由我们如何使用。但是,互联网对我们有利还是有弊都在于我们如何使用它。 19 我被交通事故了。 我遇到交通事故了。 20 你来北京的时候,去看长城、故宫和颐和园。 你来北京的时候,一定要去看长城、故宫和颐和园。 21 他们特别热情对我,因为我爸爸是老师。 他们对我特别热情,因为我爸爸是老师。 22 大家都很满足我们的活动。 大家都很喜欢我们办的活动。 23 没有小孩的二个人,都把她看成亲生女儿对待。 没有小孩的两个人,都把她当作亲生女儿。 24 结果那一天不吃了午饭。 结果那一天不吃午饭了。 25 问题从占菜的时候,就出现了。 问题从点菜的时候,就出现了。 第 1 期 汪权彬,等:基于数据增广和复制的中文语法错误纠正方法 ·105·
·106· 智能系统学报 第15卷 Computational Linguistics.Stroudsburg,USA,2006 machine translation approach to Chinese grammatical er- 249-256 ror correction[C]//Proceedings of 7th CCF International [8]JUNCZYS-DOWMUNT M.GRUNDKIEWICZ R. Conference on Natural Language Processing and Chinese Phrase-based machine translation is state-of-the-art for Computing.Hohhot,China,2018:341-350. automatic grammatical error correction[C]//Proceedings of [19]HOCHREITER S,SCHMIDHUBER J.Long short-term the 2016 Conference on Empirical Methods in Natural memory[J].Neural computation,1997,9(8):1735-1780. Language Processing.Austin,Texas,USA,2016: [20]LECUN Y,BENGIO Y.Convolutional networks for im- 1546-1556. ages,speech,and time-series[M]//ARBIB M A.The [9]SUTSKEVER I,VINYALS O,LE Q V.Sequence to se- Handbook of Brain Theory and Neural Networks.Cam- quence learning with neural networks[C]//Proceedings of bridge,USA:MIT Press,1995:3361. the 27th International Conference on Neural Information [21]REN Honghai,YANG Liner,XUN Endong.A sequence Processing Systems.Cambridge,USA,2014:3104-3112. to sequence learning for Chinese grammatical error cor- [10]XIE Z,AVATI A.ARIVAZHAGAN N.et al.Neural lan- rection[Cl//Proceedings of 7th CCF International Confer- guage correction with character-based attention[J].arXiv ence on Natural Language Processing and Chinese Com- preprint arXiv:1603.09727,2016. puting.Hohhot,China,2018:401-410. [11]WANG Quanbin,TAN Ying.Automatic grammatical er- [22]BAHDANAU D,CHO K,BENGIO Y.Neural machine ror correction based on edit operations information[C]// translation by jointly learning to align and translate[J]. Proceedings of 25th International Conference on Neural arXiv preprint arXiv:1409.0473,2014. Information Processing.Siem Reap,Cambodia,2018: [23]CHUNG J,GULCEHRE C,CHO K H,et al.Empirical 494-505 evaluation of gated recurrent neural networks on se- [12]GE Tao,WEI Furu,ZHOU Ming.Fluency boost learning quence modeling[J].arXiv preprint arXiv:1412.3555, 2014. and inference for neural grammatical error correction[C]// [24]SEE A.LIU P J,MANNING C D.Get to the point:sum- Proceedings of the 56th Annual Meeting of the Associ- marization with pointer-generator networks[J].arXiv pre- ation for Computational Linguistics.Melbourne,Aus- print arXiv:1704.04368.2017. tralia.2018:1055-1065. [25]JIA R.LIANG P.Data recombination for neural semantic [13]ZHAO Wei,WANG Liang,SHEN Kewei,et al.Improv- parsing[J].arXiv preprint arXiv:1606.03622,2016. ing grammatical error correction via pre-training a copy- [26]LIU CHAOLIN,LAI MINHUA.TIEN K W,et al.Visu- augmented architecture with unlabeled data[J].arXiv pre- ally and phonologically similar characters in incorrect print arXiv:1903.00138.2019. Chinese words:analyses,identification,and applica- [14]RAO Gaogi,ZHANG Baolin,XUN Endong,et al. tions[J].ACM transactions on Asian language informa- IJCNLP-2017 Task 1:Chinese grammatical error dia- tion processing,2011,10(2):10 gnosis[C]//Proceedings of the IJCNLP 2017.Taipei, [27]A project for conversion between traditional and simpli- China,2017:1-8. fied Chinese[EB/OL].[2019-12-20].https://github.com/ [15]WU S H,LIU Chaolin,LEE L H.Chinese spelling check BYVoid/OpenCC. evaluation at SIGHAN Bake-off 2013[C]//Proceedings of the Seventh SIGHAN Workshop on Chinese Language 作者简介: Processing.Nagoya,Japan,2013:35-42. 汪权彬.博士研究生,主要研究方 [16]ZHAO Yuanyuan,JIANG Nan,SUN Weiwei,et al.Over- 向为机器学习、深度神经网络、自然语 view of the NLPCC 2018 shared task:grammatical error 言处理。 correction[Cl//Proceedings of 7th CCF International Con- ference on Natural Language Processing and Chinese Computing.Hohhot,China,2018:439-445. [17]ZHOU Junpei,LI Chen,LIU Hengyou,et al.Chinese 谭营,教授,博土生导师,主要研 grammatical error correction using statistical and neural 究方向为智能科学、计算智能与群体 models[C]//Proceedings of 7th CCF International Confer- 智能、机器学习、人工神经网络、群 ence on Natural Language Processing and Chinese Com- 体机器人、大数据挖掘。烟花算法发 puting.Hohhot,China,2018:117-128. 明人,出版学术专著12部,发表学术 [18]FU Kai,HUANG Jin,DUAN Yitao.Youdao's winning 论文330余篇。 solution to the NLPCC-2018 Task 2 challenge:a neural
Computational Linguistics. Stroudsburg, USA, 2006: 249–256. JUNCZYS-DOWMUNT M, GRUNDKIEWICZ R. Phrase-based machine translation is state-of-the-art for automatic grammatical error correction[C]//Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing. Austin, Texas, USA, 2016: 1546–1556. [8] SUTSKEVER I, VINYALS O, LE Q V. Sequence to sequence learning with neural networks[C]//Proceedings of the 27th International Conference on Neural Information Processing Systems. Cambridge, USA, 2014: 3104–3112. [9] XIE Z, AVATI A, ARIVAZHAGAN N, et al. Neural language correction with character-based attention[J]. arXiv preprint arXiv: 1603.09727, 2016. [10] WANG Quanbin, TAN Ying. Automatic grammatical error correction based on edit operations information[C]// Proceedings of 25th International Conference on Neural Information Processing. Siem Reap, Cambodia, 2018: 494–505. [11] GE Tao, WEI Furu, ZHOU Ming. Fluency boost learning and inference for neural grammatical error correction[C]// Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia, 2018: 1055–1065. [12] ZHAO Wei, WANG Liang, SHEN Kewei, et al. Improving grammatical error correction via pre-training a copyaugmented architecture with unlabeled data[J]. arXiv preprint arXiv: 1903.00138, 2019. [13] RAO Gaoqi, ZHANG Baolin, XUN Endong, et al. IJCNLP-2017 Task 1: Chinese grammatical error diagnosis[C]//Proceedings of the IJCNLP 2017. Taipei, China, 2017: 1–8. [14] WU S H, LIU Chaolin, LEE L H. Chinese spelling check evaluation at SIGHAN Bake-off 2013[C]//Proceedings of the Seventh SIGHAN Workshop on Chinese Language Processing. Nagoya, Japan, 2013: 35–42. [15] ZHAO Yuanyuan, JIANG Nan, SUN Weiwei, et al. Overview of the NLPCC 2018 shared task: grammatical error correction[C]//Proceedings of 7th CCF International Conference on Natural Language Processing and Chinese Computing. Hohhot, China, 2018: 439–445. [16] ZHOU Junpei, LI Chen, LIU Hengyou, et al. Chinese grammatical error correction using statistical and neural models[C]//Proceedings of 7th CCF International Conference on Natural Language Processing and Chinese Computing. Hohhot, China, 2018: 117–128. [17] FU Kai, HUANG Jin, DUAN Yitao. Youdao’s winning solution to the NLPCC-2018 Task 2 challenge: a neural [18] machine translation approach to Chinese grammatical error correction[C]//Proceedings of 7th CCF International Conference on Natural Language Processing and Chinese Computing. Hohhot, China, 2018: 341–350. HOCHREITER S, SCHMIDHUBER J. Long short-term memory[J]. Neural computation, 1997, 9(8): 1735–1780. [19] LECUN Y, BENGIO Y. Convolutional networks for images, speech, and time-series[M]//ARBIB M A. The Handbook of Brain Theory and Neural Networks. Cambridge, USA: MIT Press, 1995: 3361. [20] REN Honghai, YANG Liner, XUN Endong. A sequence to sequence learning for Chinese grammatical error correction[C]//Proceedings of 7th CCF International Conference on Natural Language Processing and Chinese Computing. Hohhot, China, 2018: 401–410. [21] BAHDANAU D, CHO K, BENGIO Y. Neural machine translation by jointly learning to align and translate[J]. arXiv preprint arXiv: 1409.0473, 2014. [22] CHUNG J, GULCEHRE C, CHO K H, et al. Empirical evaluation of gated recurrent neural networks on sequence modeling[J]. arXiv preprint arXiv: 1412.3555, 2014. [23] SEE A, LIU P J, MANNING C D. Get to the point: summarization with pointer-generator networks[J]. arXiv preprint arXiv: 1704.04368, 2017. [24] JIA R, LIANG P. Data recombination for neural semantic parsing[J]. arXiv preprint arXiv: 1606.03622, 2016. [25] LIU CHAOLIN, LAI MINHUA, TIEN K W, et al. Visually and phonologically similar characters in incorrect Chinese words: analyses, identification, and applications[J]. ACM transactions on Asian language information processing, 2011, 10(2): 10. [26] A project for conversion between traditional and simplified Chinese[EB/OL]. [2019-12-20].https://github.com/ BYVoid/OpenCC. [27] 作者简介: 汪权彬,博士研究生,主要研究方 向为机器学习、深度神经网络、自然语 言处理。 谭营,教授,博士生导师,主要研 究方向为智能科学、计算智能与群体 智能、机器学习、人工神经网络、群 体机器人、大数据挖掘。烟花算法发 明人,出版学术专著 12 部,发表学术 论文 330 余篇。 ·106· 智 能 系 统 学 报 第 15 卷