针对拼写错误的搜索关键字的 Google 搜索算法
我想知道谷歌如何找到确切的单词,即使我们在搜索框中输错了它。我想知道这样的开源算法是否可用?
I wonder how Google find the exact word, even if we mistyped it in search box. I want to know if such open source algorithm is available?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
查看 Peter Norvig 的如何编写拼写纠正器文章。
Check out Peter Norvig's How to Write a Spelling Corrector article.
阅读有关编辑距离的维基百科条目应该可以让您更好地了解如何检测拼写错误。
Reading the Wikipedia entry on Levenshtein distance should give you a better idea of how to detect misspellings.
看看这个建议器的 Python 实现,它实现了类似的东西(尽管毫无疑问不是和谷歌一样聪明)谷歌所做的事情。
Take a look at this Python Implementation of a suggester, which implements something similar (though no doubt not as clever as Google's) to what Google does.
或者,如果您使用的是 java,请查看 Compass 对“您是说功能吗”的支持”,还有这篇博文包含对原始功能的改进。
Or if you're using java, check out Compass's support of the "Did you mean feature", and also this blogpost containing an improvement to the original feature.
实际上谷歌使用了不同的算法。
Google 的“您是说吗?”是如何表达的?算法有效吗?
如果我搜索人,我可能会意识到自己的错误,然后再搜索人。谷歌会跟踪这些趋势,当你搜索一个很多人通常会寻找相似单词的单词时,它会在你第一次搜索时向你推荐这个单词。
Actually Google uses a different algorithm.
How does the Google "Did you mean?" Algorithm work?
If I search for poeple, I will probably realize my mistake and then search for people. Google tracks these trends and when you search for a word that many people usually look for a similar word afterward it suggests this word to you on your first search.