![ab24c4bdfaec1d7309c8fce1eb30f9d6.png](https://img-blog.csdnimg.cn/img_convert/ab24c4bdfaec1d7309c8fce1eb30f9d6.png)
上篇介绍了针对推荐系统隐式和显式反馈的混合模型——lightFM(上:参数及属性介绍),
这篇主要介绍在不同场景下用lightFM的python代码,也可看官方文档和官方GitHub。
主要包含五个场景:
- Movielens数据集的lightFM模型简单例子;
- 不同的 learning schedules比较;
- 项目冷启动 Item cold-start;
1. Movielens数据集的隐式反馈推荐器
'''
![a2b7235e51d1f48eaaa9ea9236d2b93a.png](https://img-blog.csdnimg.cn/img_convert/a2b7235e51d1f48eaaa9ea9236d2b93a.png)
train
![098c121a0cad050536b9f2ca74dd89a3.png](https://img-blog.csdnimg.cn/img_convert/098c121a0cad050536b9f2ca74dd89a3.png)
'''
![151d66608053c0816a41c60703510764.png](https://img-blog.csdnimg.cn/img_convert/151d66608053c0816a41c60703510764.png)
'''
![e0c1be0fc1209be5eff980a22c0fdeb9.png](https://img-blog.csdnimg.cn/img_convert/e0c1be0fc1209be5eff980a22c0fdeb9.png)
拓展:
print
![235024c4b9bda56022ca4375d45e63a1.png](https://img-blog.csdnimg.cn/img_convert/235024c4b9bda56022ca4375d45e63a1.png)
加了物品特征建模:
'''
![3b49f6ec6b0e6d4d187a254a79969605.png](https://img-blog.csdnimg.cn/img_convert/3b49f6ec6b0e6d4d187a254a79969605.png)
物品特征看起来像是只有对角线有值,猜测应该加了物品特征和没加,模型效果相差不大
'''
![50c9b51b15beb54c4bd6ff8ccaf88837.png](https://img-blog.csdnimg.cn/img_convert/50c9b51b15beb54c4bd6ff8ccaf88837.png)
bpr模型同上
模型效果总结:
Movielens数据集 | 纯 bpr 模型 | 加入物品特征的bpr 模型 | 纯warp模型 | 加入物品特征的warp 模型 |
---|---|---|---|---|
训练集precision_at_k | 0.59 | 0.60 | 0.60 | 0.60 |
测试集precision_at_k | 0.10 | 0.10 | 0.11 | 0.11 |
训练集auc_score | 0.90 | 0.90 | 0.93 | 0.94 |
测试集auc_score | 0.86 | 0.86 | 0.90 | 0.90 |
2. 使用不同的 learning schedules
'''
![fc937bd88169ec7156717d8815116715.png](https://img-blog.csdnimg.cn/img_convert/fc937bd88169ec7156717d8815116715.png)
'''
![27b27d6c9d7ec4e1f556dc7504e52b21.png](https://img-blog.csdnimg.cn/img_convert/27b27d6c9d7ec4e1f556dc7504e52b21.png)
3. 项目冷启动 Item cold-start
'''
![1bf571e0b6ef7d46f76f441a5b9af5ec.png](https://img-blog.csdnimg.cn/img_convert/1bf571e0b6ef7d46f76f441a5b9af5ec.png)
![b957fa5eb5f481df3c7064d4018683f7.png](https://img-blog.csdnimg.cn/img_convert/b957fa5eb5f481df3c7064d4018683f7.png)
训练和测试集按时间顺序划分:测试集包含训练集中90%交互之后发生的10%交互。这意味着测试集中的许多问题都没有交互。这是对问题回答系统的准确描述:最重要的是向能够回答这些问题的专家用户推荐尚未回答的问题。
(1)纯协作过滤模型
'''
![ac45c2cb12e6c8cf99669021eddd7ba7.png](https://img-blog.csdnimg.cn/img_convert/ac45c2cb12e6c8cf99669021eddd7ba7.png)
![60131d9320842a18aa807c77ddda9b07.png](https://img-blog.csdnimg.cn/img_convert/60131d9320842a18aa807c77ddda9b07.png)
'''
![d90885be883fc70e3a5f8597e0c4eeec.png](https://img-blog.csdnimg.cn/img_convert/d90885be883fc70e3a5f8597e0c4eeec.png)
(2)混合模型
'''
![9aa346a9585c90bf85334ec45f3d034d.png](https://img-blog.csdnimg.cn/img_convert/9aa346a9585c90bf85334ec45f3d034d.png)
'''
![8142ea593ca5b34daf7f6964f00e72d5.png](https://img-blog.csdnimg.cn/img_convert/8142ea593ca5b34daf7f6964f00e72d5.png)
![4986345a4c22c6992aa0d01842089c5b.png](https://img-blog.csdnimg.cn/img_convert/4986345a4c22c6992aa0d01842089c5b.png)
# 统计得到共有33827个item是没有跟用户发生过交互行为的,
![d2597b0d0ac640eeba909c3b4bb72181.png](https://img-blog.csdnimg.cn/img_convert/d2597b0d0ac640eeba909c3b4bb72181.png)
(3)特征embeddings
'''
![9853d7d86d9f2b0d0f3023f9a5718351.png](https://img-blog.csdnimg.cn/img_convert/9853d7d86d9f2b0d0f3023f9a5718351.png)
4. 重点讨论 warp .Learning-to-rank using the WARP loss
'''
![b0b059693277805882e20113aa0e6971.png](https://img-blog.csdnimg.cn/img_convert/b0b059693277805882e20113aa0e6971.png)
'''
![b7cb599065012745c84954afb8679af1.png](https://img-blog.csdnimg.cn/img_convert/b7cb599065012745c84954afb8679af1.png)
warp_model
![80f837f6fd38add2ce93f063dc84d5b8.png](https://img-blog.csdnimg.cn/img_convert/80f837f6fd38add2ce93f063dc84d5b8.png)
![23c833fdbccb7e82b1afcc1f1a6d221a.png](https://img-blog.csdnimg.cn/img_convert/23c833fdbccb7e82b1afcc1f1a6d221a.png)
5. 建立数据集(包含数据处理等)
'''
![f0d3805b16c33a2d23b4aa7d3a29cec6.png](https://img-blog.csdnimg.cn/img_convert/f0d3805b16c33a2d23b4aa7d3a29cec6.png)
'''
![dbaa76d3f22d574eb9ac65de9f92be94.png](https://img-blog.csdnimg.cn/img_convert/dbaa76d3f22d574eb9ac65de9f92be94.png)
'''