大数据推荐算法之隐语义模型(lfm)进行Top-N推荐
2017-07-15 21:24
274 查看
隐语义模型LFM(Latent Factor Model):
和LSI,LDA,Topic Model其实都属于隐含语义分析技术,是一类概念,他们在本质上是相通的,都是找出潜在的主题或分类,
然后分类存在理解上的偏差:
1. 编辑很难控制分类的粒度
2. 编辑很难给一个物品分属多个分类
3. 编辑很难决定一个物品在某一个分类中的权重
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG5211310O7.png)
用户对于一个item的喜好程度 = 用户对于某些分类的喜好程度 * 这个item在这些分类中的权重
我们不需要关心分类的⾓度,结果都是基于用户行为统计自动聚类的,全凭数据自己说了算。
不需要关心分类粒度的问题,通过设置LFM的最终分类数就可控制粒度,分类数越大,粒度约细。
对于一个item,并不是明确的划分到某一类,而是计算其属于每一类的概率,是一种标准的软分类。
对于一个user,我们可以得到他对于每一类的兴趣度,而不是只关心可见列表中的那一个类。
对于每一个class,我们可以得到类中每个item的权重,越能代表这个类的item,权重越高。
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG52113314W.png)
建立Users对于Items的关系矩阵来
进行训练获取P以及Q的参数
训练样本:用户感兴趣的为1,不感兴趣的
选取时隐性反馈数据的收集:
1 和正样本数量相当
2 选取那些热门但是用户没有操作的样本
我们就是要求解P以及Q矩阵中的参数
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG5211351X6.png)
计算不断优化参数,直到参数收敛,核心代码:
本例采用了movielens的一个数据作为测试例子,运行结果如下:
![](http://wss.xxyseo.cn/uploads/allimg/170713/1-1FG322353J03.png)
本例完整源代码下载
和LSI,LDA,Topic Model其实都属于隐含语义分析技术,是一类概念,他们在本质上是相通的,都是找出潜在的主题或分类,
然后分类存在理解上的偏差:
1. 编辑很难控制分类的粒度
2. 编辑很难给一个物品分属多个分类
3. 编辑很难决定一个物品在某一个分类中的权重
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG5211310O7.png)
用户对于一个item的喜好程度 = 用户对于某些分类的喜好程度 * 这个item在这些分类中的权重
我们不需要关心分类的⾓度,结果都是基于用户行为统计自动聚类的,全凭数据自己说了算。
不需要关心分类粒度的问题,通过设置LFM的最终分类数就可控制粒度,分类数越大,粒度约细。
对于一个item,并不是明确的划分到某一类,而是计算其属于每一类的概率,是一种标准的软分类。
对于一个user,我们可以得到他对于每一类的兴趣度,而不是只关心可见列表中的那一个类。
对于每一个class,我们可以得到类中每个item的权重,越能代表这个类的item,权重越高。
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG52113314W.png)
建立Users对于Items的关系矩阵来
进行训练获取P以及Q的参数
训练样本:用户感兴趣的为1,不感兴趣的
选取时隐性反馈数据的收集:
1 和正样本数量相当
2 选取那些热门但是用户没有操作的样本
我们就是要求解P以及Q矩阵中的参数
![](http://wss.xxyseo.cn/uploads/allimg/170715/1-1FG5211351X6.png)
计算不断优化参数,直到参数收敛,核心代码:
|
本例采用了movielens的一个数据作为测试例子,运行结果如下:
![](http://wss.xxyseo.cn/uploads/allimg/170713/1-1FG322353J03.png)
本例完整源代码下载
相关文章推荐
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 推荐系统之隐语义模型(LFM)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 【转载】使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 【推荐系统系列】使用LFM(Latent factor model)隐语义模型进行Top-N推荐 (转载)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 基于隐语义模型的推荐算法---《推荐系统实践》---Python源码(11)
- 使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)
- 使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 使用LFM(Latent factor model)隐语义模型进行Top-N推荐
- 实战智能推荐系统(10)-- 隐语义模型 LFM (Funk-SVD)