【问题标题】:How to gather useful data for autocompletion?如何为自动完成收集有用的数据?
【发布时间】:2012-12-02 06:37:28
【问题描述】:

我试图实现一个典型的自动完成框,就像你从 amazon.com 知道的那样。 就这样,输入一封信,你会得到一个合理的建议,告诉你可以尝试在搜索框中输入什么。

盒子本身将由 jquery 实现,持久层和建议算法将基于 Apache Lucene/Solr 及其 Suggest-Feature。 另外,我使用 lucene 的 WFST-Suggestion 在结果中得到加权建议。

我的问题是,例如amazon能做到这种合理的数据? 我的意思是他们从哪里获得所有这些关键字和分数,所以这有意义吗?

每个产品上都是纯手工制作的款式信息吗?我认为这将是真正艰难的。 或者是否可以使用机器学习理论中的聚类或分类等方法来收集数据? (然后我可以使用 mahout 或 carrot2)。

查看亚马逊的建议,我认为数据包含:

  • 产品名称
  • 产品/书籍的生产者/制造商/作者
  • 产品特性(如颜色、类型、尺寸)

它包含更多吗?

接下来的事情是,看起来建议本身是排名的。 他们如何获得这种分数来衡量建议的权重? 这是一个简单的用户点击路径跟踪,你在哪里看,用户在框中输入了什么,他选择了什么或者他之后看了什么产品?

是否使用某种逻辑对每个查询(可能已缓存)计算出这种分数? (哪个?也许是贝叶斯定理?)

【问题讨论】:

    标签: search autocomplete autosuggest


    【解决方案1】:

    他们可能会使用一些简单的方法,例如根据用户查询和/或产品名称构建 n-gram 模型,并使用它来预测最有可能的自动完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-15
      • 2011-06-05
      • 2013-08-18
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      相关资源
      最近更新 更多