(一)基于算法思想的分类
基于人口统计学、基于内容、协同过滤、基于知识、混合推荐
1、人口统计学
根据用户基本信息推荐相似用户喜爱的项目。
针对目标用户A而言,我们根据人口统计学,年龄和性别,找到跟A具有相同属性的用户C,假设同类用户具有相同或相似偏好,则我们可以把用户C喜欢的物品a推荐给用户A。
这种方法虽然简单,但其推荐效果一般,个性化程度较低。
2、基于内容
根据用户过去喜好的项目推荐相似的项目。
针对目标用户A而言,我们知道用户A喜欢电影a,根据电影的类型或属性信息,我们可以找到跟电影a具有相同类型的电影c,假设用户对项目内容或者类型的喜好是固定不变的,那么就可以把和电影a同类型的电影c推荐给目标用户A。
这种方法只会推荐用户有过反馈的电影并且依赖于电影的内容和属性信息。
3、协同过滤
根据用户行为信息推荐相似用户喜爱的项目。
针对目标用户A而言,针对用户历史的打分行为,可以找到跟A相似的用户B,A和B都对物品a和物品b表示过喜欢反馈,假设具有相似历史偏好的用户,他们的喜好也相似,则可以把用户B喜欢的物品c推荐给目标用户A。
协同过滤算法不仅具有较好的个性化程度,而且可以帮助用户发现一些新的兴趣点,但是这个方法依赖于用户的行为信息,对于一些新的用户或新的项目,由于缺乏历史行为信息,从而无法做推荐。
4、基于知识的推荐
根据用户的显示需求和专业领域知识进行推荐。
假设用户想要购买一台价格为8000元,屏幕大小为14英寸,内存大小为8G,有独立显卡的笔记本电脑,为了给用户作出推荐,我们可以根据相关领域的专业知识,构建匹配度度量,针对价格我们希望是LIB(越低越好),针对大小希望是CIB(越接近越好),针对内存大小希望是MIB(越大越好),针对显卡我们希望进行0-1匹配。
基于这样的匹配度度量我们可以对用户的需求进行相应的推荐。
基于知识的推荐实现效果较好,但是依赖于专业领域知识,而专业领域知识较难获取。
优缺点比较
5、混合推荐
通过多种技术的组合来避免或弥补各自的缺点。
(二)基于应用问题的分类
1、评分预测
目标:根据用户历史评分和其他相关数据,预测用户对候选项目评分值。
评价指标:预测评分和真实评分之间的偏差,例如,均方根误差RMSE。
2、Top-N推荐
目标:根据用户历史 行为(如:点击)和其他相关数据,预测用户对候选项目的感兴趣程度,并据此对项目排序以给出排在最前N个的项目列表。
评价指标:分类准确度和排序合理性,例如,精确度、召回率、AUC、nDCG等。