设计推荐系统的10条经验与教训

来源:互联网 发布:易建联cba数据 编辑:程序博客网 时间:2024/06/18 14:35
引用2009年ACM推荐系统大会上Strand研究人员做的一个报告“推荐系统十堂课”,在这个报告中Strand的研究人员总结了他们设计推荐系统的经验,提出了10条在设计推荐系统中学习到的经验和教训。

(1) 确定你真的需要推荐系统。推荐系统只有在用户遇到信息过载时才必要。如果你的网站物品不太多,或者用户兴趣都比较单一,那么也许并不需要推荐系统。所以不要纠结于推荐系统这个词,不要为了做推荐系统而做推荐系统,而是应该从用户的角度出发,设计出能够真正帮助用户发现内容的系统,无论这个系统算法是否复杂,只要能够真正帮助用户,就是一个好的系统。

(2) 确定商业目标和用户满意度之间的关系。对用户好的推荐系统不代表商业上有用的推荐系统,因此要首先确定用户满意的推荐系统和商业上需求的差距。一般来说,有些时候用户满意和商业需求并不吻合。但是一般情况下,用户满意度总是符合企业的长期利益,因此这一条的主要观点是要平衡企业的长期利益和短期利益之间的关系。

(3) 选择合适的开发人员。一般来说,如果是一家大公司,应该雇用自己的开发人员来专门进行推荐系统的开发。

(4) 忘记冷启动的问题。不断地创新,互联网上有任何你想要的数据。只要用户喜欢你的产品,他们就会不断贡献新的数据。

(5) 平衡数据和算法之间的关系。使用正确的用户数据对推荐系统至关重要。对用户行为数据的深刻理解是设计好推荐系统的必要条件,因此分析数据是设计系统中最重要的部分。数据分析决定了如何设计模型,而算法只是决定了最终如何优化模型。

(6) 找到相关的物品很容易,但是何时以何种方式将它们展现给用户是很困难的。不要为了推荐而推荐。

(7) 不要浪费时间计算相似兴趣的用户,可以直接利用社会网络数据。

(8) 需要不断地提升算法的扩展性。

(9) 选择合适的用户反馈方式。

(10) 设计合理的评测系统,时刻关注推荐系统各方面的性能。