19

我读过《编程集体智能》一书,觉得它很吸引人。我最近听说亚马逊向全世界发布了一项挑战,旨在为他们的系统提供更好的推荐引擎。

获胜者显然通过限制提供给它的信息量来产生最好的算法。

作为第一条经验法则,我猜......“在模糊算法方面,更多信息不一定更好。”

我知道这是主观的,但最终它是可衡量的(响应推荐的点击)。

由于这些天我们大多数人都在处理网络并且搜索可以被视为一种推荐形式......我怀疑我不是唯一一个会欣赏其他人对此想法的人。

简而言之,“建立推荐的最佳方式是什么?”

4

4 回答 4

5

除非您没有关于用户的信息,否则您不想使用“整体流行度”。相反,您希望将此用户与相似用户对齐并相应地加权。

这正是贝叶斯推理所做的。在英语中,这意味着调整您喜欢某事的总体概率(平均评分)与其他通常也以您的方式投票的人的评分。

另一条建议,但这次是特设的:我发现有些人如果喜欢某样东西,我几乎肯定不会喜欢它。我不知道这种影响是真实的还是想象的,但建立一种“负面影响”而不是仅仅通过相似性将人们聚集在一起可能会很有趣。

最后有一家专门从事这方面的公司,叫做SenseArray。所有者(freenet 名声伊恩克拉克)非常平易近人。如果你打电话给他,你可以用我的名字。

于 2008-09-10T14:31:42.143 回答
5

计算机科学中有一个完整的研究领域致力于这一主题。我建议阅读一些文章

于 2008-11-23T15:48:39.390 回答
5

同意@Ricardo。这个问题太宽泛了,比如问“优化系统的最佳方法是什么?”

几乎所有现有推荐引擎的一个共同特征是,做出最终推荐归结为将一些矩阵和向量相乘。例如,将包含用户之间接近权重的矩阵乘以项目评分向量。

(当然,你必须准备好让你的大多数向量变得超级稀疏!)

我的回答对于@Allain 来说肯定为时已晚,但对于其他通过搜索找到这个问题的用户来说——给我发私信并问一个更具体的问题,我一定会回复。

(我专业地设计推荐引擎。)

于 2011-03-05T05:51:39.297 回答
2

@老子,我同意你的看法。

据我介绍,推荐引擎由以下部分组成:

  • 来自上下文感知系统的上下文输入(记录所有数据)
  • 过滤最明显的逻辑推理
  • 专家系统可根据上下文输入在一段时间内改进您的主观数据,以及
  • 基于先前行为(信念、愿望和意图)的加权总和进行接近接近决策的概率推理。

PS我做了这样的推荐引擎。

于 2011-07-18T19:16:56.453 回答