前言:
在推荐系统中user&item emb往往是最重要的特征之一,在冷启动和长尾优化的工作中,往往也是优化的重点,相当一部分工作是围绕着emb优化展开,所以这里单独开了一章。
4)emb分布一致性
主要思路在于冷启内容emb和高活emb的一致性。通过对比学习,对抗网络来强化这一点,令生成的冷门物品嵌入可以具有与常规嵌入相似的分布,达到提升效果的目的。
比如《SIGIR '22:Generative Adversarial Framework for Cold-Start Item Recommendation》利用对抗网络来提升emb分布的一致性
![](https://i-blog.csdnimg.cn/blog_migrate/d3adb4894ee7102fcdfafca4aceabf54.png)
5,显式强化最终emb分布一致性
主要思路也在于冷启内容emb和高活emb的一致性,《Item Cold Start Recommendation via Adversarial Variational Autoencoder Warm-up 》区别在于利用对抗网络显式强化最终emb分布的一致性。
![](https://i-blog.csdnimg.cn/blog_migrate/63871970255495e93f8494dc3b2d6004.png)
6,生命周期一致性
主要思路在于冷启内容和自身的一致性,不仅仅强调冷启动和高活emb一致,更突出了和自身训练充分后的emb一致,组里有一篇论文在投,具体等发表了再更新吧。可以先参看cv的这篇《Generative Adversarial Style Transfer Networks for Face Aging》主要讲的也是自身从初始状态到成熟态的转化
![](https://i-blog.csdnimg.cn/blog_migrate/d03985f99314f0802de9653b5586e45b.png)
7,emb 分类一致性
在物品冷启动,打分的时候,一个用户往往对应多篇文章,所以item 冷启动的一致性,一般强调的是信息补充和使emb不受歧视。用户冷启动,user emb对所有文章是公平的,user emb被歧视的问题影响相对弱,所以用户冷启动更要强调的是用户emb从相同类别用户中获取到用户的公共兴趣增益。
如:《A Semi-Personalized System for User Cold Start Recommendation on Music Streaming Apps》将热启用户聚类成K个簇,再将冷启用户划分到最相似的簇,将簇中心作为冷启用户的embedding表示进行推荐
![](https://i-blog.csdnimg.cn/blog_migrate/c66271bc31ffde9f383405947101efdc.png)
8,emb和最近行为的一致性
用户的兴趣是在实时变化的,user emb能和跟随最近用户的变化而变化。
如《Transform Cold-Start Users into Warm via Fused Behaviors in Large-Scale Recommendation》利用了用户点击序列和user emb融合来产生出一个跟随用户行为变化的emb
![](https://i-blog.csdnimg.cn/blog_migrate/370a7904218b52dba24aeaa01f7fcd69.png)
9,一点想法
第8里的那篇文章,用序列来表达用户即时兴趣,我觉得是个很好的想法,推荐中我们经常会遇到需要将用户分群比如第7里的论文,但是又希望这个分群不是太固定能跟随用户行为变化而变化,那么用点击序列来生成这个分群就非常切合,可以做成一个推荐系统里的一个通用组件,应用在推荐系统里比如Lhuc,star,元学习,可以统一用这个做个基础的用户分群,应用在各个结构里,避免系统里一堆个性化分群的逻辑显得比较乱,而且反过来也可以不断增强点击序列分群的效果和影响力。
跑了一个简单的demo,思路就是用序列分群,然后作为条件对抗网络的condition,令冷启动emb可以动态的学习到不同分类信息借鉴,效果还不错。具体可以参看git
![](https://i-blog.csdnimg.cn/blog_migrate/2a673295239ba7257cbd324f489c1dfc.png)