我读了《集体智慧编程》这本书,感觉很有意思。最近听说亚马逊向世界发起了一个挑战,要求设计更好的推荐引擎。
获胜者似乎通过限制输入信息的数量,提出了最佳算法。
通常而言,"对于模糊算法而言,拥有更多信息并不一定更好。"这是第一原则。
虽然这是一个主观问题,但最终还是可以通过推荐后的点击量来衡量。
由于我们中的大多数人都在处理网络,搜索可以被视为推荐的一种形式......我想我不是唯一一个希望听到他人想法的人。
简而言之,"构建推荐系统的最佳方法是什么?"
我读了《集体智慧编程》这本书,感觉很有意思。最近听说亚马逊向世界发起了一个挑战,要求设计更好的推荐引擎。
获胜者似乎通过限制输入信息的数量,提出了最佳算法。
通常而言,"对于模糊算法而言,拥有更多信息并不一定更好。"这是第一原则。
虽然这是一个主观问题,但最终还是可以通过推荐后的点击量来衡量。
由于我们中的大多数人都在处理网络,搜索可以被视为推荐的一种形式......我想我不是唯一一个希望听到他人想法的人。
简而言之,"构建推荐系统的最佳方法是什么?"
如果您没有有关用户的任何信息,不要使用“总体流行度”。相反,您需要将此用户与类似的用户对齐并进行相应的加权处理。
这正是贝叶斯推断所做的。它的意思是用其他投票方式与您相似的人的评分来调整您可能喜欢某物的总体概率(平均评分)。
另一个建议,但这次是临时性的: 我发现有些人喜欢某件事情,我几乎肯定不会喜欢它。我不知道这种影响是真实的还是想象的,但建立一种“负面效应”而不仅仅是通过相似性来聚集人也许会很有趣。
最后,有一家专门从事此项工作的公司,叫做SenseArray。业主(Ian Clarke 是 Freenet 的创始人之一)非常平易近人。如果您打电话给他,请告诉他我的名字。
我同意你的看法,@老子。
在我看来,推荐引擎由以下部分组成:
- 从上下文感知系统中提取的上下文输入(记录所有您的数据)
- 逻辑推理以过滤最明显的选项
- 专家系统根据上下文输入随着时间的推移改善您的主观数据,以及
- 基于加权和的概率推理,根据以前的行动(信仰、愿望和意愿)进行近距离决策。
P.S. 我做了这样一个推荐引擎。