©作者 | Sybil Wu

单位 | 明略科技集团

研究方向 | NLP、推荐算法

本文主要分享一下 Google 发表于 CIKM 2021 的文章如何采用对比学习解决推荐长尾问题

论文标题:

Self-supervised Learning for Large-scale Item Recommendations

论文链接:

https://arxiv.org/abs/2007.12865

先来个定义

长尾效应:20% 的热门 item 占据了 80% 的曝光量,剩下 80% 的小众、长尾 item 得不到多少曝光机会,自然在训练样本中也是少数、弱势群体。

一般的推荐模型是迎合多数人群的,长尾的 item 曝光机会少,就导致小众兴趣难以满足,这对一个成熟的生态系统来说,不利于用户增长。

场景举例:有些原来不受到重视的销量小但种类多的商品,由于总量巨大,累积起来的总收益超过了主流商品。这种情况下,算法挖掘小众兴趣的能力显得尤为重要。

对比学习

对于样本不均衡的问题,一般首要想到的办法是做数据增强(data agument), 对比学习的核心就是采用数据增强构建正负变体,倾向于无监督学习,学习一个比较好的特征提取器。推荐系统中引入对比学习用于推荐 debias,解决“少数人群+冷门物料,标注样本少”的问题,从逻辑上看是可行的。

《Self-supervised Learning for Large-scale Item Recommendations》, 就是利用对比学习辅助训练双塔召回模型,目的是让 item tower 对冷门、小众 item 也能够学习出高质量的 embedding,从而改善内容生态。从公式上看,可以理解为将对比学习的 loss 作为主任务 loss 的一个正则项。

论文解读

小 Q 认为论文中有两个核心的技术点,一个在对比学习部分,另一个在联合训练部分。

3.1 数据增强

在对比学习数据增强部分,论文提出对于 item 特征的数据增强分为两个步骤:Masking 和 Dropout,其中 masking 是采用默认 embedding 随机掩盖一些输入特征,dropout 就是简单的随机丢失一些输入特征。

3.2 Random Feature Masking(RFM)

文中定义了一个 baseline Random Feature Masking(RFM),采用互补 masking 模式,即将特征集拆分为两个互斥特征集,构建为两个扩展变体。具体来说,将特征集随机分成两个不相交的子集。大致结构如下:

  • 某个 item xi, 随机抽取一半的特征 h,得到变体 yi,再经过 Encoder H,得到向量 zi;保留剩下的另一半特征 g,得到变体 yi’,再经过 Encoder G,得到向量 zi’。

  • 来自同一个 item xi 的两种变体对应的 embedding zi 和 zi’,两者之间的相似度应该越大越好。

  • 按照同样的作法,另一个 item xj,用一半特征 h 得到变体,再经过  Encoder H 得到 yj;用另一半特征 g,得到变体,再经过 Encoder G 得到 yj’。

  • 来自不同 item 的变体对应的 embedding,两者之间的相似度应该越低越好。

3.3 Correlated Feature Masking(CFM)

论文基于信息论中的互信息,提出了 Correlated Feature Masking(CFM)方法,这个方法每个 batch 进行训练时,先会随机选取一个特征 f_seed , 然后选择 topn(n 为 item 的特征总数的一半)构建一个特征集做为变体。

3.4 为什么采用 CFM

此处楼主小 Q 主要想讨论一下的是:为什么要采用互补 masking 模式构建对比学习的变体呢,为什么采用互信息高的特征集会比随机 masking 效果好呢。

在论文中有这么一段描述:

For instance, the SSL contrastive learning task may exploit the shortcut of highly correlated features
between the two augmented examples, making the SSL task too easy.

从字面意思看,是说随机 masking 可能有一些高度相关的 feature 分到两个变体中, CL Train 的就太 easy 了,所以要加大一下难度的样子。

hmmm,查了一些资料,没找到更详细的解析了,大致意思是由于物品的不同特征可能存在着一些关联性,随机 masking 可能会使得模型在对比学习的过程中,通过关联度较高的特征来“猜”出被 mask 的特征,使得任务训练变得简单。

这里小 Q 尝试举个例子,来强行解释一下吧,假设:item 是个商品,它有品类,品牌,产品系列,价格等特征,假设“品牌”被拆分到变体 h 中,“产品系列”被拆分到变体 g 中,看上去两个变体都是不同的,但是两个特征包含的隐信息其实没太大区别,最终两个变体的 embedding 太容易相似,就不到训练模型的目的。至于为什么要采用互补 masking 模式,大致也是为了保证变体的差异性。

好,小 Q 只能忽悠到这个程度了,大家有别的想法欢迎在评论区留言。

3.5 联合训练

做完对比学习,下一个步骤就是联合训练了 ,先上个论文中的模型图:

从上图可以看出,整个 item tower 是被 user-item 双塔召回的主任务、对比学习辅助任务中的 encoder H 和 G,这三者所共享的。

论文的第二个重点来了,“We sample items uniformly from the corpus for Lself " ,论文中明确表示参与对比学习的样本,和参与主任务的样本,来自不同的样本空间。主任务,需要拟合用户与 item 之间的真实互动,还是以已经曝光过的 user/item 为主。对比学习部分,是为了消除推荐长尾问题,主要是要关注曝光率低的 item。

参考资料

[1] 石塔西:少数派报告:谈推荐场景下的对比学习:https://zhuanlan.zhihu.com/p/435903339

[2] 对比学习(Contrastive Learning)相关进展梳理

[3] self-supervised learning for large-scale item recommendations:https://blog.csdn.net/m0_37924639/article/details/121078066

更多阅读

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

CIKM 2021 | Google出品:将对比学习用于解决推荐系统长尾问题相关推荐

  1. Google提出用对比学习解决推荐系统长尾问题

    关注 ▲对白▲ 和百万AI爱好者,一起向上生长 这是对白的第 87 期分享 作者 l 知乎@吴家丫头1990 出品 l 对白的算法屋 大家好,我是对白. 本文主要分享一下Google今年提出的< ...

  2. 【实践】对比学习在快手推荐系统中的的应用探索

    省时查报告-专业.及时.全面的行研报告库 省时查方案-专业.及时.全面的营销策划方案库 知识图谱在美团推荐场景中的应用实践 搜索场景下的智能实体推荐 机器学习在B站推荐系统中的应用实践 小红书推荐系统 ...

  3. 对比学习用于推荐系统问题(SSL,S^3-Rec,SGL,DHCN,SEMI,MMCLR)

    本篇博文继续整理推荐系统系列,更多文章可以参考博主的以往系列论文:推荐系统专栏. 自监督学习在CV和NLP已经用的很多了,那很自然也会被迅速引进并占坑到推荐系统领域咯.而发掘推荐数据上的自监督信号,其 ...

  4. EMNLP 2021 | PairSupCon:基于实例对比学习的句子表示方法

    ©作者 | ShusenW 学习 | 北京邮电大学 研究方向 | 自然语言处理 论文标题: Pairwise Supervised Contrastive Learning of Sentence R ...

  5. NIPS20 - 将对比学习用于监督学习任务《Supervised Contrastive Learning》

    文章目录 原文地址 论文阅读方法 初识 相知 回顾 代码 原文地址 原文 论文阅读方法 三遍论文法 初识 对比学习这两年在自监督学习.无监督学习任务中非常火,取得了非常优秀的性能.这个工作就是想办法将 ...

  6. ACL 2021 | ConSERT:基于对比学习的句子语义表示迁移框架

    ©PaperWeekly 原创 · 作者 | 张琨 学校 | 中国科学技术大学博士生 研究方向 | 自然语言处理 Motivation 从 BERT,GPT 被提出来之后,自然语言处理领域相关研究进入 ...

  7. 购物篮推荐场景太复杂?没有商品相关性标签?看作者运用对比学习统统解决...

    ©PaperWeekly 原创 · 作者 | Yuqi Qin 学校 | 北京邮电大学 研究方向 | 推荐系统 本文关注的是对购物篮去噪.目的是:从历史购物篮序列中挑选出真正可信赖的相关商品,来对每个 ...

  8. Ernie-SimCSE对比学习在内容反作弊上应用

    作者 | ANTI 导读 AI技术在不同行业和业务被广泛的应用,本文介绍了反作弊团队在与spammer对抗愈演愈烈的趋势下,不断探索前沿技术,将百度NLP预训练模型结合对比学习用于解决spam内容中知 ...

  9. 谈推荐场景下的对比学习

    前言 最近对比学习(Contrastive Learning, CL)火得一塌糊涂,被Bengio 和 LeCun 这二位巨头在 ICLR 2020 上点名是 AI 的未来.作为普通打工人,对比学习能 ...

最新文章

  1. 青源Forum | 人工智能的数理基础前沿系列报告 · 第 3 期
  2. python3+selenium入门08-鼠标事件
  3. MySQL高级-索引是什么
  4. 黑马程序员之单例模式学习
  5. 【渝粤教育】广东开放大学 海外社交媒体营销 形成性考核 (45)
  6. 使用Apache Tomcat Maven插件部署运行 Web 项目
  7. php公众号客服系统,公众号在线客服系统哪个好,主流客服系统评测及推荐
  8. 社区发现(六)--模块度
  9. Proe创建零件剖视图
  10. md5加密离线工具windwos,ubuntu
  11. 我国计算机科学技术的成就,计算机科学技术百科全书
  12. 小米路由修改服务器密码,小米路由器怎么重新设置密码?
  13. 基于网易云音乐API的无线音箱
  14. ps一点等于多少厘米_请问PS中“像素”和“厘米”是肿么换算的?
  15. SpringBoot中使用MyBatis-Plus是如何解决Invalid bound statement (not found)这个异常的
  16. 中国历史上最美的十首古诗词,美到了极致
  17. 植入大脑电极,晚期渐冻症患者通过神经信号交流!匹配准确率80%,有效时间仅1/3...
  18. oracle调用apps,oracleEBS 调用 SHELL 的方法
  19. 12-类和对象的概念
  20. Python 笔记第二部分:容器和编码

热门文章

  1. oracle中join另一个表后会查询不出一些数据_阿里规定超过3张表,禁止JOIN,为何?
  2. create 2021 | 一图读懂汽车智能化分论坛
  3. 长春理工大学计算机学院分数线,2021长春理工大学录取分数线-长春理工大学分数线-2021长春理工大学录取查询网址...
  4. 怎么配置网站mysql数据库_本地DZ网站如何配置本地MYSQL数据库
  5. deepin卸载了python_Deepin-Linux下python卸载与安装(失败的折腾)
  6. 4由通道检测_大唐阜新煤制天然气「榜样力量」实训做实出实效——废水总酚检测时间由4小时缩短至10分钟...
  7. centos 使用 beyond compare 对比工具
  8. case的执行顺序 嵌套使用
  9. 基于RSA的WEB前端密码加密方案
  10. 文件搜索工具everything