点击上方,选择星标置顶,每天给你送干货!


来自:李rumor

这两天被OpenAI的DALLE模型刷屏了,刚看到的时候,我主要滑了下图片生成的效果,感叹有钱真好,Transformer真NB,然后就关闭窗口了。但是后来我无聊着去读原博客时,才发现用来做rerank的CLIP模型一样牛啤,同时感叹一句:

You also need Contrastive Learning

CLIP的全称是Contrastive Language–Image Pre-training,为什么说对比学习也很重要呢?来看看它对模型精度和效率的提升吧:

再来感受一下CLIP最终的效果。用linear prob进行评估,在27个数据集的平均分数甩了其他模型好几条街。同时有20个都比ImageNet训练出来的开源SOTA表现好:

下面简要介绍一下CLIP是如何达到这么好效果的。

博文:https://openai.com/blog/clip/
论文:https://cdn.openai.com/papers/Learning_Transferable_Visual_Models_From_Natural_Language_Supervision.pdf
代码:https://github.com/openai/CLIP

翻墙不易,可在公众号「李rumor」后台回复0108获取。

原理

CLIP就像是图像届的GPT-2,输入图片,输出文本描述。正因为是描述,所以可以在各种图像分类任务上进行zero-shot。

OpenAI从网上搜集了400million未清洗的图像-文本pair数据,用对比学习目标进行训练:分别对图像和文本编码,然后两两计算cosine相似度,再针对每个图片的一行或文本的一列进行分类,找出匹配的正例。

用伪代码表示的话:

这里对于每个图像都有32,768个文本候选,足足有SimCLR的两倍,负例个数的增多也是效果好的原因之一

在预测时也很简单,随便拿一个图像分类的数据集,把label转为自然语言,比如“狗”可以转为“一张狗的照片”。再用预训练好的编码器对label和图像编码,再去计算相似度即可。

CLIP效果这么好,除了数据多,作者主要提到了两个提效方法:

  1. Contrastive learning Objective:如文章开头的图,比起语言模型那样一个个预测文本描述,对比学习可以提效4到10倍

  2. Vision Transformer:直接把图像分成一个个patch,再过Transformer,比起ResNet编码提效3倍(真·Attention is all you need)

基于以上改进,最好的一版CLIP只在256个GPU上训练两周就好了,跟目前图像领域的其他大模型都差不多。

效果

开头已经展示得差不多了,再看看Non-cherry pick的预测结果:

对于图像领域,CLIP的贡献不可忽视,它可以缓解三个问题:

  1. Costly datasets:之前大部分模型用的数据集都是人标的,而CLIP的训练数据都是从网上找的,用纯文本作为label,减少了人力成本

  2. Narrow:根据有标注数据集训练的话输出是有限的,比如数据集只教模型预测猫和狗,那就没法再让模型去预测鸭子,而CLIP在常见图像上就不受限制

  3. Poor real-world performance:benchmark和真实情况都是有gap的,在benchmark上表现好不意味着真实情景也好。而CLIP不是从某个特定数据集学出来的,可以缓解这个问题。作者也通过实验证实,如果面向ImageNet学习的话,虽然评估效果会提高,但其他7个数据集上都不太好

总结

说CLIP是图像的GPT-2,但还是有些区别的,GPT-2是生成模型,而CLIP是判别模型,预计它之后在图像领域会作为预训练模型,有更多的应用。不过像官方博客说的,CLIP还存在一些缺陷:

  1. 虽然CLIP能很好地识别常见物体,但不会做更抽象或复杂的任务,比如数数、预测照片中车的距离。对于更细粒度的分类表现也不好,比如预测花的品种、对比模型车的不同

  2. 对于没见过的图像,CLIP的泛化不是很好

不过话说回来,这两个问题靠接着怼更好的数据也就解决了。。不知道DALLE的奇葩结果们能不能反哺一下。

数据真的是AI基石,另外对比学习在21年估计会继续热门,不说了,我赶紧去洗数据了。

说个正事哈

由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(1)点击页面最上方深度学习自然语言处理”,进入公众号主页。

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

感谢支持,比心

投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

推荐两个专辑给大家:

专辑 | 李宏毅人类语言处理2020笔记

专辑 | NLP论文解读

专辑 | 情感分析


整理不易,还望给个在看!

聊聊这两天刷屏的OpenAI新作,你注意到CLIP了吗相关推荐

  1. 聊聊这两年学习slam啃过的书!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源 | 3D视觉工坊 入坑2年多,零七零八买了7.8本书,正好最 ...

  2. 聊聊这两年我用到的面试套路和收获

    1 这篇文章,分享下在过去两年多的工作中,在面试方面的经历,当然,并不是被别人面试,而是面试别人. 最早应该在两年前,那时我刚工作不久,当时部门刚组建,在上海的团队加上我也不过三人,因此,一直在不断的 ...

  3. slam十四讲第二版 pdf_聊聊这两年学习slam啃过的书

    作者:Amber 来源:微信公众号|3D视觉工坊(系投稿) 「3D视觉工坊」技术交流群已经成立,目前大约有8000人,方向主要涉及3D视觉.CV&深度学习.SLAM.三维重建.点云后处理.自动 ...

  4. OpenAI新作Shap-e算法使用教程

    一.知识点   Shap-e是基于nerf的开源生成3d模型方案.它是由如今热火朝天的Open AI公司(chatgpt,Dell-E2)开发.开源的.Shap-e生成的速度非常快,输入关键词即可生成 ...

  5. 【创业说】零经验接手APP运营推广,聊聊这两个月我是怎么熬过来的

    编者按:本文来自一位创业者的匿名投稿(反复强调不要公开自己的身份),讲述了自己离职创业,从零开始做APP推广,所经历的各种推广方式,并且根据自己的情况评估了各个渠道的效果,创业容易推广不易,且行且珍惜 ...

  6. OpenAI新发现:GPT-3做小学数学题能得55分,验证胜过微调!

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 会做数学题的GPT-3,逻辑推理能力是上了一个高度,但还不能及格. ...

  7. 60亿击败1750亿、验证胜过微调:OpenAI发现GPT-3解决数学题,并非参数越大越好...

    视学算法报道 编辑:杜伟.陈 现在,OpenAI 的模型也具备解决小学数学应用题的能力了. 简单的小学数学应用问题,对于人类来说不算什么,但对于模型来说,可能是有难度的. 比如问题:安东尼有 50 支 ...

  8. AI“双子星”同日联动:DeepMind加速编程自动化,OpenAI新方法解开2道国际奥数题...

    本文约3200字,建议阅读10+分钟 目前为止,这些AI编程系统正在飞快地学习. 作者:刘媛媛.LZM 2022 年开年不久,全球人工智能领域两大明星公司不约而同在今天宣布了重要进展:OpenAI 称 ...

  9. 首次发现!AI脑回路演化向人类更进一步,OpenAI最新研究引热议,有学者评价:太吓人了...

    浩楠 晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI 两个月前轰动网络的AI设计大师CLIP,刚刚被OpenAI"扒开"了脑子. 没想到,这个性能强大的AI竟和人类思 ...

  10. OpenAI 将 k8s 扩展至 7500 个节点以支持机器学习

    [CSDN 编者按]最近,OpenAI 官方博客称,他们已将 Kubernetes 集群扩展到 7500 个节点,如此大规模的基础架构不仅可以满足 GPT-3.CLIP 和DALL·E 等大型模型的需 ...

最新文章

  1. Python中time模块详解
  2. java 线上运维_一次java应用线上运维实战
  3. 牛客题霸 [丑数] C++题解/答案
  4. 3.5. Ticket
  5. python车牌识别系统开源代码_天津谁做车牌识别系统供应商,伸缩栅栏门_郑州荣锋科技有限公司...
  6. docker基础入门和docker compose实战
  7. kali安装docker和portainer
  8. MySQL(14)--- WHERE 子句
  9. 使用HttpClient实现对第三方服务器的请求并接受返回数据
  10. 水泵综合性能测试系统软件,水泵综合性能测试系统
  11. Dotnet3.5 New一个对象就可以直接跟上大括号对类中的公开成员变量以及属性赋值...
  12. ElasticSearch全文搜索引擎之Windows集群搭建
  13. 开发移动网页应用的一些技术指导
  14. python因子分析法详细步骤_实用干货!因子分析超全步骤总结!
  15. 支付宝第三方登录接口调用
  16. linux7.6安装gcc,Centos7.6 安装gcc9
  17. window驱动签名相关以及WHQL(代码签名证书:赛门铁克和DigiCert证书)
  18. 计算机无法获得有效ip地址,无法获取ip地址,详细教您电脑无法获取ip地址的解决方法...
  19. c语言 交互式电子白板案例,交互式电子白板案例分析
  20. window global

热门文章

  1. reids高可用(灾难备份-持久化)
  2. keepalived+mysql双主高可用配置
  3. 遮罩层和弹出层(居中)
  4. Spark Streaming 源码详解
  5. 转载--#define 用法
  6. GitHub冲突解决
  7. Linux:程序设计
  8. Django中请求的生命周期
  9. mybatis ——xml方式与动态sql
  10. shell脚本--部署应用到tomcat并启动tomcat