相关疑难解决方法(0)

Google如何"你的意思是?" 算法工作?

我一直在开发一个投资组合管理工具的内部网站.有很多文本数据,公司名称等.我对一些搜索引擎能够快速回复查询的印象非常深刻,"你的意思是:xxxx".

我需要能够智能地进行用户查询并不仅响应原始搜索结果,还要回答"你的意思是?" 当有极有可能的替代答案等时作出回应

[我正在开发ASP.NET(VB - 不要反对我!)]

更新:好的,如果没有数百万"无偿用户",我怎么能模仿这个?

  • 为每个"已知"或"正确"术语生成拼写错误并执行查找?
  • 其他一些更优雅的方法?

algorithm nlp spell-checking machine-learning text-search

426
推荐指数
7
解决办法
8万
查看次数

你如何实现"你的意思"?

可能重复:
Google如何"你的意思是?"算法有效吗?

假设您的网站中已有搜索系统.你如何实现<spell_checked_word>像谷歌在某些搜索查询中所说的"你的意思是:" 吗?

nlp

112
推荐指数
7
解决办法
2万
查看次数

如何纠正用户输入(谷歌的种类"你的意思是?")

我有以下要求: -

我有很多(比方说100万)值(名字).用户将键入搜索字符串.

我不希望用户正确拼写名称.

所以,我想让谷歌成为"你的意思".这将列出我的数据存储区中的所有可能值.有一个相似但不相同的问题在这里.这没有回答我的问题.

我的问题: - 1)我认为不建议将这些数据存储在RDBMS中.因为那时我不会对SQL查询进行过滤.我必须做全表扫描.那么,在这种情况下应该如何存储数据?

2)第二个问题与相同.但是,仅仅为了我的问题的完整性:我如何搜索大数据集?假设,数据集中有一个名称Franky.如果用户输入Phranky,我该如何匹配Franky?我是否必须遍历所有名称?

我遇到了Levenshtein Distance,这将是一个很好的技术来找到可能的字符串.但同样,我的问题是我必须对数据存储中的所有100万个值进行操作吗?

3)我知道,Google通过观察用户行为来做到这一点.但是我想在不看用户行为的情况下这样做,即通过使用,我还不知道,说距离算法.因为前一种方法需要大量的搜索才能开始!

4)正如Kirk Broadhurst下面的答案指出的,有两种可能的情况: -

  • 用户输入错误的单词(编辑距离算法)
  • 用户不知道单词和猜测(语音匹配算法)

我对这两个都很感兴趣.它们实际上是两个不同的东西; 例如Sean和Shawn的声音相同,但编辑距离为3 - 太高而不能被视为拼写错误.

language-agnostic nlp information-retrieval spell-checking autosuggest

18
推荐指数
2
解决办法
2247
查看次数