机器学习-协同过滤

1、协同过滤要解决的问题

协同过滤算法主要用于推荐系统,推荐系统是信息过载所采用的措施,面对海量的数据信息,从中快速推荐出符合用户特点的物品。一些人的"选择恐惧症"、没有明确需求的人。

解决如何从大量信息中找到自己感兴趣的信息。

解决如何让自己生产的信息脱颖而出,受到大众的喜爱。

就相当于物以类聚,人以群分。



用户ID、物品ID、偏好值

偏好值就是用户对物品的喜爱程度,推荐系统所做的事就是根据这些数据为用户推荐他还没有见过的物品,并且猜测这个物品用户喜欢的概率比较大。

用户ID和物品ID一般通过系统的业务数据库就可以获得,偏好值的采集一般会有很多办法,比如评分、投票、转发、保存书签、页面停留时间等等,然后系统根据用户的这些行为流水,采取减噪、归一化、加权等方法综合给出偏好值。一般不同的业务系统给出偏好值的计算方法不一样。

协同是什么意思?

就是类似的几个实体,比较相同,有相同的方面。

过滤是什么意思?

就是把相同的、类似的物品或者人过滤出来。

基本思想

第一种方式是利用用户喜欢过的物品,给用户推荐与他喜欢过的物品相似的物品。

第二种方式是利用和用户相似的其他用户,给用户推荐那些和他们兴趣爱好相似的其他用户喜欢的物品。

第三种方式是利用用户和物品的特征信息,给用户推荐那些具有用户喜欢的特征的物品。

2、相似度度量

物品A与物品B之间的相似度通过A、B特有的特征向量来度量

度量方法有很多

欧氏距离:

余弦相似度:

3、邻域大小

有了相似度的比较,那么比较多少个用户或者物品为好呢?一般会有基于固定大小的邻域以及基于阈值的领域。具体的数值一般是通过对模型的评比分数进行调整优化。

4、基于用户的CF


5、基于物品的CF

6、基于LFM思想的矩阵分解-ALS

思想是什么?

投资顾问给用户推荐理财产品,推荐哪个?

A:我手上的这一个VIP客户,做事比较谨慎、不爱冒风险,不是冲动型客户。

B:那这款理财产品,虽然收益比较高,但投资大、风险也比较高,估计不适合他。

隐语义向量

既然要打分,那么?

(潜在特征模型)隐语义模型

P:用户是不是有一些隐含的特征?

Q:物品是不是有一些隐含的特征?

ALS优化

既然要打分,那么?

损失函数:吉洪诺夫正则化


7、协同过滤推荐架构

①. 查询的是与该用户相似的用户,所以一来直接查了关系数据源。以及相似用户与该用户的相似度。

②. 对数据集进行优化,得到相似用户和相似度。

③. 查询关系数据源,得到相似用户即邻居偏好过的物品;如步骤④;图中由于空间小,没有把所有邻居的偏好关系都列出来,用......表示。其次还要得到该用户偏好过的物品集合。

④. 被推荐的Item集合是由该用户的所有邻居的偏好过的物品的并集,同时再去掉该用户自己偏好过的物品。作用就是得到你的相似用户喜欢的物品,而你还没喜欢过的。

⑤. 集合优化同基于物品的协同过滤算法的步骤②。

⑥. 也是对应类似的,依次计算被推荐集合中Item_i 的推荐值,计算的方式略有不同,Value_1_i表示邻居1对,Item_i的偏好值,乘以该用户与邻居1的相似度 Similarity1;若某个邻居对Item_i偏好过,就重复上述运算,然后取平均值;得到Item_i的推荐值。

⑦、⑧. 与上一个算法的最后两部完全类似,只是步骤 ⑧你竖着看,判断两个用户相似的法子和判断两个物品相似的法子一样。

相关推荐
巷9554 分钟前
OpenCV图像形态学:原理、操作与应用详解
人工智能·opencv·计算机视觉
深蓝易网33 分钟前
为什么制造企业需要用MES管理系统升级改造车间
大数据·运维·人工智能·制造·devops
xiangzhihong841 分钟前
Amodal3R ,南洋理工推出的 3D 生成模型
人工智能·深度学习·计算机视觉
狂奔solar1 小时前
diffusion-vas 提升遮挡区域的分割精度
人工智能·深度学习
资源大全免费分享1 小时前
MacOS 的 AI Agent 新星,本地沙盒驱动,解锁 macOS 操作新体验!
人工智能·macos·策略模式
跳跳糖炒酸奶1 小时前
第四章、Isaacsim在GUI中构建机器人(2):组装一个简单的机器人
人工智能·python·算法·ubuntu·机器人
AI.NET 极客圈2 小时前
AI与.NET技术实操系列(四):使用 Semantic Kernel 和 DeepSeek 构建AI应用
人工智能·.net
Debroon2 小时前
应华为 AI 医疗军团之战,各方动态和反应
人工智能·华为
俊哥V2 小时前
阿里通义千问发布全模态开源大模型Qwen2.5-Omni-7B
人工智能·ai
果冻人工智能2 小时前
每一条广告都只为你而生: 用 人工智能 颠覆广告行业的下一步
人工智能