Task Definition:
中文语法错误诊断通常分为四种:冗余单词(R),缺失单词(M),错误单词选择(S)和无序单词(W)
如图所示:
将诊断中文语法错误看成序列标注的问题,正确的标注为O,错误开始位置标注为B-X,中间位置、结束位置标注为I-X,X表示错误类型。由于将句子分词会带来大量的错误单词错位现象,因此,决定从字符层面解决问题。
本文提出使用三种诊断模型来诊断中文语法错误:
1、基于CRF的诊断模型
CRF(Conditional Random Field)条件随机场模型是一种典型的判别式模型,它在观测序列的基础上对目标序列进行建模,重点解决“序列化标注问题”。言下之意,就是给定的输出识别序列Y和观测序列X,通过定义条件概率P(Y|X)来描述模型。
其中f表示特征,lamda表示权重,x为输入的句子,y为标签。
2、基于LSTM的诊断模型
字符特征是随机初始化的,bigram embedding使用word2vec训练得到的,为了提升精确度,还使用了pos离散特征。诊断模型如图所示:
3、stacking集成模型
在使用上述两个模型的初步实验之后,我们发现基于LSTM的模型具有高回调率,基于CRF的模型具有较高的精度。
通过向LSTM的输入层添加一个附加特征,将基于CRF的模型的结果作为离散特征放到LSTM层。