将拼写错误知识加入到预训练掩码语言模型,使用修正混淆集来代替预测掩码,加入语音级和字形级信息来辅助模型学习纠错;
将拼音与笔画加入embedding层辅助
相较于bert直接MASK,采用混淆集辅助MASK,通过形近和音近字进行掩码使模型纠错有的放矢;除此之外,为了增加模型鲁棒性,还有概率进行随机掩码;为了防止模型总是倾向于纠错,也有概率维持不变;
通过GRU编码字音与字形信息(通过拼音与笔画)
基本与BERT相同
由上文中的模型结构图可知,模型对字的字形与字音均进行了预测;
分为字形与拼音损失:
L
c
=
−
∑
i
=
1
n
l
o
g
p
c
(
y
i
=
l
i
∣
X
)
L_c=-\sum_{i=1}^n log p_c(y_i=l_i|X)
Lc=−i=1∑nlogpc(yi=li∣X)
L
p
=
−
∑
i
=
1
n
l
o
g
p
p
(
g
i
=
r
i
∣
X
)
L_p=-\sum_{i=1}^n log p_p(g_i=r_i|X)
Lp=−i=1∑nlogpp(gi=ri∣X)
训练阶段损失为:
L
=
L
c
+
L
p
L=L_c+L_p
L=Lc+Lp
训练参照训练方法,预测阶段采用两概率乘积表示该字最终概率:
p
j
(
y
i
=
j
∣
X
)
=
p
c
(
y
i
=
j
∣
X
)
×
p
p
(
g
i
=
j
p
∣
X
)
p_j(y_i=j|X)=p_c(y_i=j|X)\times p_p(g_i=j^p|X)
pj(yi=j∣X)=pc(yi=j∣X)×pp(gi=jp∣X)
最终联合概率分布可以表示为:(其中
I
∈
R
n
c
×
n
p
I \in R^{n_c \times n_p}
I∈Rnc×np )
p
j
(
y
i
∣
X
)
=
[
p
p
(
g
i
∣
X
)
⋅
I
T
]
⊙
p
c
(
y
i
∣
X
)
p_j(y_i|X)=[p_p(g_i|X)\cdot I^T]\odot p_c(y_i|X)
pj(yi∣X)=[pp(gi∣X)⋅IT]⊙pc(yi∣X)