假设我有一个项目语料库(在此示例中以逗号分隔):
1,2,3,4,5,6,7,8
用户A具有项目1,2和3.用户B具有项目2,3和4.用户A和用户B匹配他们的三个项目中的两个。用户A应推荐为第3项,用户B应推荐为第1项。
我很难找到基于模糊描述的算法,但据我所知,collaborative filtering可能就是我正在寻找的。我理解这个是正确的吗?如果没有,还有其他更好的方法吗?
答案 0 :(得分:0)
1首先需要一个聚类算法将用户分为k个类。 例如:http://en.wikipedia.org/wiki/K-means_clustering 当然,还有很多其他的聚类算法。你也可以考虑神经网络。
2之后,您可以比较组内的用户,然后根据组中的常用项目与此用户拥有的项目之间的差异来推荐项目。 这一步可能很简单。你可以维持一个" Set"共同商品。然后迭代用户来计算差异。