前言:前段时间在某厂进行算法实习,主要内容是如何将对比学习引入到推荐算法中去。再次期间我们调研了大量的cv领域的对比学习方法以及少数的对比学习应用在推荐中的文章,虽然也在前人的经验上提出了一些新的东西,但是这些新的东西仅仅只是对对比学习中的一些流程进行了修改,并没有去深入思考对比学习到底学到了什么?他对不管是cv还是推荐具体有什么样的作用?目前通过学习了解到其作用也仅仅是如下几个:1. 对比学习隶属于自监督,本质上输入的样本其实是没有标签的,而通过数据增强操作可以增加样本数量来优化模型性能。2. 通过对比学习损失使相近的样本在投影空间的距离更相近,这样也能提升模型性能。但是对于以上提到的作用仅仅只是在解释使用了对比学习的模型为什么会有性能的提升,但是对比学习究竟学到了什么呢?

目前的一些对比学习方法

目前的对比学习框架最早来源于SimCLR模型,网上有甚多介绍SimCLR模型的文章,此处也不再赘述其模型具体的细节,可以参考张俊林先生的知乎文章。SimCLR总体来说其实是分为三个步骤的,1.数据增强。2.ENCODER。3.对比学习loss。如图所示:

后续也有一些研究在simCLR框架下改进了数据增强方法,以及对比方法loss中的正负样本数量。具体方法请自行查找。
接下来推荐中也用到了对比学习方法,谷歌引用了simCLR框架,并结合推荐数据的特性更改了数据增强方式并提出了一种应用在召回中的自监督算法。如下:

该方法主体采用的是双塔模型,然后又构建了一个对比学习的方法优化item塔。但是文中也并没有说明引入自监督方法到底能学习到什么(可能是我没有太仔细看),但是整体上在引入对比学习后有了较大的性能提升。
最近基于图神经网络的推荐也引入了对比学习,如何向南老师团队的SGL方法。如下:


不难发现,SGL整体沿用了simCLR的框架流程,只不过针对GNN将数据增强方式等进行了替换。

目前的改进策略

因为我仅仅进行了短时间的调研,所以接触的基本上都是基于simCLR框架进行修改的算法,总体来说有以下几个方面:

  1. 对数据增强方式的修改:以推荐举例,不管是上面的谷歌提出的方法还是之前看到的阿里的对比学习在推荐中的应用,首先都是针对数据增强进行了修改,都结合当前的任务模型,如序列推荐等,根据自身的数据格式进行不同数据增强方式,比如截取长序列的部分数据等。
    最近有点忙。。。待续

对比学习学到了什么?(交流帖)相关推荐

  1. [论文阅读](对比学习系列)

    文章目录 第一阶段:百花齐放 [2018] (CVPR) INstDisc [2019] (CVPR)Unsupervised Embedding Learning via Invariant and ...

  2. 自监督学习-对比学习-MoCo Momentum Contrast 阅读笔记

    Momentum Contrast for Unsupervised Visual Representation Learning 原文地址:CVPR 2020 Open Access Reposit ...

  3. 直播 | 北京邮电大学徐逸辰:图对比学习研究进展

    「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...

  4. java和python的比较-java学习笔记(与python对比来学)

    写在前头 自己之前一直是从事python的,因为部分业务要求需要进行Java的学习,顺道记录一点笔记. 不同在于Java是偏向编译性的语言,python是解释性语言(下面conner只针对java与p ...

  5. java程序员学C#基本语法两个小时搞定(对比学习)

    对于学习一门新的语言,关键是学习新语言和以前掌握的语言的区别,但是也不要让以前语言的东西,固定了自己的思维模式,多看一下新的语言的编程思想. 1.引包 using System;java用import ...

  6. sql要学mysql还是php,MySQL_与MSSQL对比学习MYSQL的心得(一)--基本语法,这一期主要是学习MYSQL的基本 - phpStudy...

    与MSSQL对比学习MYSQL的心得(一)--基本语法 这一期主要是学习MYSQL的基本语法,陆续还会有续期的文章,敬请期待 语法的差异 我这里主要说语法的不同 1.默认约束 区别:mysql里面DE ...

  7. ACL 2021 | SimCLS: 概念简单但足够有效的对比学习摘要生成框架

    ©PaperWeekly 原创 · 作者 | Maple小七 学校 | 北京邮电大学硕士生 研究方向 | 自然语言处理 作者提出了一个概念简单但足够有效的摘要生成框架:SimCLS,在当前的 SOTA ...

  8. 直播 | KDD 2021论文解读:基于协同对比学习的自监督异质图神经网络

    「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...

  9. 细节满满!理解对比学习和SimCSE,就看这6个知识点

    ‍‍‍‍‍‍©PaperWeekly 原创 · 作者 | 海晨威 研究方向 | 自然语言处理‍‍‍‍‍‍ 2020 年的 Moco 和 SimCLR 等,掀起了对比学习在 CV 领域的热潮,2021 ...

最新文章

  1. mysql中FIND_IN_SET的使用方法
  2. 「日常训练」Common Subexpression Elimination(UVa-12219)
  3. 信息学奥赛一本通 1128:图像模糊处理 | OpenJudge NOI 1.8 13:图像模糊处理
  4. python 报错traceback-python-traceback捕获并打印异常
  5. NIO-ByteBuffer
  6. 朴素版的Dijkstra算法
  7. MAC OS(U盘启动教程)
  8. 如何重新安装微软应用商店
  9. s400x ugee 驱动_联想_ThinkPad|ThinkCentre|ThinkStation服务与驱动下载_常见问题
  10. java你应该学会什么
  11. 大数据整体技术流程及架构
  12. Apache DolphinScheduler 3.0 正式版重磅发布
  13. system32 下exe文件的作用
  14. 内构函数java_图灵学院笔记-java虚拟机底层原理
  15. mysql查询高于平均_查询成绩高于平均分的成绩记录。
  16. 动态规划设计方法详解最长递增子序列
  17. android系统允许icon角标,安卓手机角标显示方案
  18. 这些城市 你5w就可以买一套全款房
  19. win10系统无法连接xp工作组计算机,win10如何访问xp共享文件|win10访问xp共享文件的设置方法...
  20. 2021-2027全球与中国音圈马达驱动芯片市场现状及未来发展趋势

热门文章

  1. 区块链中哈希算法c语言代码,解析区块链中的核心技术哈希(Hash)算法
  2. POJ 2524 宗教信仰 并查集 基础模板
  3. chatgpt赋能Python-pandas_错位相减
  4. 开源解析器--ANTLR
  5. 自定义控件其实很简单4/12
  6. javascript之10秒倒计时
  7. Neo4j的使用-1
  8. win10创建共享文件夹,需要输入共享文件所有者的账户名和密码才能访问(home版本不能这样操作,因为没有用户管理)
  9. 正则表达式的基本使用
  10. Spring Security登录成功后,用户信息保存在哪,如何获取?