文章目录
前言
本文主要介绍了代码实战,即基于语言模型的拼写纠错,包含任务描述、实现和语法纠错的应用。
一、拼写纠错任务概述
在实现QA系统或者检索系统时,需要用户给出输入,用户在输入问题的时候,不能期待他一定会输入正确,有可能输入的单词的拼写是错误的。在一个完备的系统中,需要后台能够及时捕获拼写错误,并进行纠正,然后再通过修正之后的结果再跟库里的问题进行匹配。这里来实现一个简单的拼写纠错模块,自动去修复错误的单词。
纠错模块是基于Noisy Channel Model噪音通道模型:
c ∗ = argmax c ∈ candidates p ( c ∣ s ) = argmax c ∈ candidates p ( s ∣ c ) p ( c ) c^{*}=\operatorname{argmax}_{c \in \text { candidates }} p(c \mid s)=\operatorname{argmax}_{c \in \text { candidates }} p(s \mid c) p(c)
本文介绍了如何实现基于语言模型的拼写纠错,包括使用Noisy Channel Model,通过编辑距离获取候选集,利用词典和语言模型计算概率,以及在实际中的应用,如语音识别、机器翻译等。
订阅专栏 解锁全文
2204





