协同过滤推荐算法是诞生最早且较为著名的推荐算法,其主要的功能是预测和推荐。
算法简介
在网络资讯和电子商务信息爆炸式的增长,繁杂的信息中容易造成流失,再次背景下用户的个性化推荐系统显得尤为重要,对电子商务平台和社交信息平台产生了质的影响。
协同过滤推荐算法是诞生最早,并且较为著名的推荐算法。主要的功能是预测和推荐。算法通过对用户历史行为数据的挖掘发现用户的偏好,基于不同的偏好对用户进行群组划分并推荐品味相似的商品。
其主要价值体现在:
建立用户行为评分权重模型,达到对用户行为数据化和可视化,。
以电子商品平台为例:
建立测试集和训练集。
训练集:用于模型构建;测试集:用于检测模型构建,此数据只在模型检验时使用,用于评估模型的准确率。
测试集和训练集的建立是为了防止模型的构建过度拟合,更是为了监测模型的准确性和可行性,方便对模型进一步修正。
例如:在班级内按身高、腰围定制了衣服,衣服制作后全班同学穿上很适合,但当这个做衣服标准推行到全校时,制作的衣服很多同学穿不了,原因可能是没有考虑到肩宽、臂展等。此处本班是训练集,其他班是测试集。
第三阶段
建立合理的数据监控,监视召回率、准确率和覆盖率。为模型后期修正提供依据。
计算公式
欧几里德距离公式
(为方便控制可取倒数,使结果分布在0—1之间)
余弦定理计算公式(N维空间)
(此处V1和V2为向量)
计算流程
应用实例
【余弦公式和ICF为例】以用户实际评分为起点,建立商品评分矩阵(如下表)
【例如】:某用户对商品A和商品B的行为得分为权重,对商品C和商品D进行加权排序,得分高者优先推荐。
数据去噪修正对大众化,一线流程产品进行剔除,原因是本来具有超高曝光率和知名度的产品,不推荐用户才能很快触达,不必进行不需要的推荐。对用户浏览和购买过的商品进行剔除,以免造成重复性。对商品归一分类,避免商品的跨类别推荐,造成用户并不需要此类商品。
【例如】:对某用户买衣服A,经过算法的综合排名,发现排第一的是方便面,排第六的才是衣服B,结果推荐了方便面岂不闹了笑话。但是对商品进行了归一分类,服装类商品只限推荐服装,这样服装B就会优先推荐。
对商品类别间建立合理的加分机制,并对低频商品建立合理的惩罚分值,使其推荐其他周边商品。
方案弊端
数据稀疏性。由于此类协同过滤的模型需要有训练数据支撑,而在冷启动期间用户不会在数据模型中完成所有项目,所以数据会有稀疏性。
【解决思路】:可以按该类别商品的用户平均水平进行推荐(项目冷启动期间的方案待探讨)。
可扩展性。协同过滤算法能够容易地为千万记用户提供量化的推荐,但是对于电子商务网站,往往需要给成千上万的用户提供推荐,这就一方面需要提高响应速度,能够为用户实时地进行推荐;另一方面还应考虑到存储空间的要求,尽量减少推荐系统运行对系统的负担。
以上解决思路需进一步探讨,欢迎大家一起进行交流~~
结语
真正完善的个性推荐系统需要进行基于物品的协同过滤、基于内容的协同过滤和基于模型的协同过滤组合使用,并结合平台自身的商业模式、业务模式特性、召回率、覆盖率和转化率进行不断的优化,建立各种辅助模型才能达到最优。
希望各位朋友来提提想法,有好想法大家一起探讨交流。
本文由@呵哈嘿~原创发布于人人都是产品经理。未经许可,禁止转载。