我很好奇有什么方法/途径来克服“冷启动”问题,即当一个新用户或一个项目进入系统时,由于缺乏关于这个新实体的信息,做出推荐是一个问题。
我可以考虑做一些基于预测的推荐(比如性别、国籍等等)。
发布于 2010-01-03 03:17:14
也许有些时候你就是不应该做推荐?“数据不足”应该是其中之一。
我只是不明白基于“性别、国籍等”的预测建议将如何超越刻板印象。
IIRC,亚马逊等地在推出推荐之前建立了一段时间的数据库。这不是你想犯的错误;有很多关于基于不充分数据的不恰当推荐的故事。
发布于 2011-03-15 01:07:37
您可以冷启动推荐系统。
推荐系统有两种类型:协同过滤和基于内容的推荐。基于内容的系统使用关于您推荐的内容的元数据。那么问题是什么元数据是重要的?第二种方法是协同过滤,它不关心元数据,它只使用人们对某一项目的所作所为或所说的话来做出推荐。使用协作过滤,您不必担心元数据中的哪些术语是重要的。事实上,你不需要任何元数据来做出推荐。协同过滤的问题是你需要数据。在你有足够的数据之前,你可以使用基于内容的推荐。你可以提供基于这两种方法的推荐,一开始是100%基于内容的,然后随着你获得更多的数据,开始混合基于协同过滤的数据。这就是我过去使用的方法。
另一种常见的技术是将基于内容的部分视为一个简单的搜索问题。您只需将元数据作为文档的文本或正文放入,然后对文档进行索引。使用Lucene & Solr可以做到这一点,而无需编写任何代码。
如果您想了解基本的协作过滤是如何工作的,请查看Toby Segaran的"Programming Collective Intelligence“的第2章
发布于 2011-12-15 05:48:34
我自己也在研究这个问题,但这篇来自微软的关于玻尔兹曼机器的论文看起来很有价值:http://research.microsoft.com/pubs/81783/gunawardana09__unified_approac_build_hybrid_recom_system.pdf
https://stackoverflow.com/questions/1992508
复制相似问题