最近做了一个自动纠错演示网页
Posted Terark-CTO-雷鹏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最近做了一个自动纠错演示网页相关的知识,希望对你有一定的参考价值。
请关注我们的技术创业项目 Terark,领先的数据技术提供商
最近做了一个自动纠错演示网页:nfabo.cn
当 Query 中有一些错别字时,搜索引擎会尝试纠错
通过相似拼音纠错
搜索引擎把这些字还原成拼音,用一个拼音相同的已知 Query 代替。
但是,当输错的汉字是多音字,特别是有多个这样的错误输入时,所有的搜索引擎基本上都不管, 或者仅使用一个最常用的音去纠错。因为要考虑所有可能的拼音组合,在极端情况下会导致指数爆炸!
我的算法解决了这个指数爆炸问题
- 这个演示页面目前只收录了 800万 条 短语+词频,数据也不太干净
- 该算法全部在内存中运行,使用了 360M 内存,这个数据量,如果用传统方法暴力实现,并且达到这个性能,需要 几十GB 的内存
- 这个服务器是一个租用的虚拟云主机,单核,比我2009年的笔记本电脑还要慢 3 倍
基于编辑距离的纠错
在已知的搜索词中寻找 编辑距离 与用户 Query 最小的词,使用我的算法也可以高效解决(还没做演示页面)以上是关于最近做了一个自动纠错演示网页的主要内容,如果未能解决你的问题,请参考以下文章