浅谈单词纠错

方法

  • 编辑距离的方式,但是缺点是计算复杂度高,为词典大小与编辑距离复杂度的乘积
  • 编辑距离的逆运算,即每次当用户输入词时,生成编辑距离为1或2的候选词,然后从这些词中选择合适的词返回即可。那怎样从生成的这些候选词中选择合适的词进行返回呢,先将这个问题抽象成数学表达式,其中 s s s为用户实际输入的词, c c c为用户可能想输入的词, c ^ \hat c c^为用户真正想输入的词:
    c ^ = a r g m a x c ∈ c a n d i d a t e s p ( c ∣ s ) \hat{c}=argmax_{c\in{candidates}}p(c|s) c^=argmaxccandidatesp(cs)

贝叶斯定理

c ^ = a r g m a x c ∈ c a n d i d a t e s p ( c ∣ s ) \hat{c}=argmax_{c\in{candidates}}p(c|s) c^=argmaxccandidatesp(cs)
上面的式子会正比于 p ( s ∣ c ) p ( c ) p(s|c)p(c) p(sc)p(c)

  • p ( c ) p(c) p(c)为某个正确的单词出现的概率,可以当成是一个 U n i g r a m Unigram Unigram,去直接统计该词在文章中出现的概率即可。
  • p ( s ∣ c ) p(s|c) p(sc)可以去后台统计用户在输入某一个单词时实际却输入了另外一个词的概率.。比如在你的所有用户中发现有6名用户,他们分别输入了 a p p , a p p l , a p p l , a p p , a p p l a , a p p l app,appl,appl,app,appla,appl app,appl,appl,app,appla,appl。这些都不是正确的单词形式,如果这些用户均将这些词修改成了apple,则可以求得
    p ( a p p ∣ a p p l e ) = 50.0 % p(app|apple)=50.0\% p(appapple)=50.0%
    p ( a p p l ∣ a p p l e ) = 33.3 % p(appl|apple)=33.3\% p(applapple)=33.3%
    p ( a p p a ∣ a p p l e ) = 16.7 % p(appa|apple)=16.7\% p(appaapple)=16.7%
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值