我正在用真实用户数据实现电影推荐系统。我计划采取协作过滤方法。但是,这种方法通常需要一个巨大的矩阵来存储用户的额定电影。因为我有超过一万部电影和十万用户。我不可能创建这样一个巨大的稀疏矩阵。我想知道每个人如何通过如此大量的数据实施协作过滤?谢谢!带有大量数据的推荐系统
2
A
回答
3
我会向你推荐分布式计算框架,但是,我认为仍然有一个规模,你可以轻松地在一台机器上处理它。
Apache Mahout包含Taste协作过滤库,它旨在在一台机器上进行缩放。一个模型 - 什么,10M数据点? - 应该适合记忆与健康的堆大小。看看像GenericItemBasedRecommender
和FileDataModel
。 (基于亨利马乌也有分布实现Hadoop的,但我不认为你需要这个呢。)
我的那个作者,但此后移动作为商业化大规模引荐Myrrix。它还包含一个独立的单机版,这是免费的,并且open source。它也可以在一台机器上轻松处理这些数据。例如,这是比在this example中使用的数据集更小的数据集。 Myrrix也有一个分布式实现。
还有其他的快速分布式以上的实现,如GraphLab。其他非分布式框架也可能足够快,如MyMediaLite。
我会建议只使用其中的一种,或者如果您真的只是想知道“如何”发生,请检查源代码并查看数据表示。
0
我没有使用矩阵形式来存储我的数据。相反,我使用C++并构建了一些结构,如User,Rating,Item,它们包含我需要的变量和数组。这可能会增加算法的复杂性,但它可以有效地节省内存。
相关问题
- 1. 推荐系统数据集
- 2. 推荐系统
- 3. 带TensorFlow的推荐系统(SVD)
- 4. 测量推荐系统的质量
- 5. 推荐系统数据收集方法
- 6. SQL推荐系统
- 7. 推荐系统PHP
- 8. 数据的相似性度量/矩阵(推荐系统) - Python
- 9. Howto使用增量式SVD推荐系统创建推荐
- 10. 简单的推荐系统
- 11. 推荐系统方法
- 12. 广告推荐系统
- 13. 团体推荐系统
- 14. Python/mysql:推荐系统
- 15. 推荐系统设计
- 16. 网页推荐系统
- 17. RMSE太小。推荐系统
- 18. IOS 8推荐系统
- 19. 数学SVD推荐系统,内环路
- 20. 找到推荐系统所需的最低评分数量?
- 21. 什么是我的数据集的好方法推荐系统?
- 22. 如何获取或生成推荐系统的测试数据
- 23. 如何处理推荐系统的新数据?
- 24. 推荐系统上的好资源?
- 25. 推荐使用Solr和Mahout的系统
- 26. ArangoDB - 基于图表的推荐系统
- 27. 使用猪或mahout的推荐系统
- 28. 为MySQL推荐的热备份系统?
- 29. Git推荐的连续整合系统?
- 30. Google云平台上的推荐系统
一个巨大的*稀疏*矩阵有什么问题?这应该是很好的。 – 2013-03-12 18:16:55
矩阵非常庞大,我无法在我的matlab中创建矩阵。可以用其他语言解决吗? – 2013-03-13 01:53:31