用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩

金磊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

别再怕图片搜索结果牛头不对马嘴了,你可以试试这个精准图片搜索,来自OpenAI最新的技术CLIP

只需一句“大白话”描述,便能给出想要的图片。

例如输入:

The word love written on the wall

就会得到这样的结果:

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第1张图片

可以说是相当的精准了!这就是今天在Reddit上爆火的一个项目。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第2张图片

这个项目利用到的,便是OpenAI前不久频频刷屏的DALL·E中的核心模块——CLIP,一个负责重排序(rerank)的模型。

这个项目使用谷歌Colab Notebook,而且在线、免费,包含200万图片数据集,最重要的是效果还非常的精准。

不禁引得网友直呼“Amazing”。

简单几步,“大白话”在线精准搜图

这个项目之所以如此火爆,操作简单是很重要的一个原因之一。

首先要做的,就是点开该项目在Colab Notebook中的地址(见文末链接),登陆自己的账号。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第3张图片

至于环境配置、包或库的调用,这个项目非常贴心的已经做好了,只需要依次点击cell左侧的小三角,等待运行完成即可。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第4张图片

最后,来到包含如下代码的cell:

search_query = “Two dogs playing in the snow”

点击运行这个cell,便可得到搜索图片的结果,例如:

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第5张图片

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第6张图片

当然,这个程序似乎很懂人,若是输入“当你的代码跑通时的情绪”:

The feeling when your program finally works

得到的结果,和正常人想象中的应该是一致的:

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第7张图片

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第8张图片

为什么CLIP搜图能如此精准?

OpenAI前不久推出的DALL·E,主要能实现的功能就是 可以按照文字描述、生成对应图片

而其呈现给我们的最终作品,其实是它生成大量图片中的一部分。

在中间过程中,其实也有排名、打分的帅选过程。

这部分的任务,便是由CLIP来完成:

越是它看得懂、匹配度最高的作品,分数就会越高,排名也会越靠前。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第9张图片

这种结构,有点像是利用生成对抗文本,以合成图像的GAN

不过,相比于利用GAN扩大图像分辨率、匹配图像-文本特征等方法,CLIP则选择了直接对输出进行排名。

据研究人员表示,CLIP网络的最大意义在于,它缓解了深度学习在视觉任务中,最大的两个问题。

首先,它降低了深度学习需要的数据标注量

相比于手动在ImageNet上,用文字描述1400万张图像,CLIP直接从网上已有的“文字描述图像”数据中进行学习。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第10张图片

此外,CLIP还能“身兼多职”,在各种数据集上的表现都很好(包括没见过的数据集)。

但此前的大部分视觉神经网络,只能在训练的数据集上有不错的表现。

例如,CLIP与ResNet101相比,在各项数据集上都有不错的检测精度,然而ResNet101在除了ImageNet以外的检测精度上,表现都不太好。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第11张图片

具体来说,CLIP用到了零样本学习(zero-shot learning)、自然语言理解和多模态学习等技术,来完成图像的理解。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第12张图片

例如,描述一只斑马,可以用“马的轮廓+虎的皮毛+熊猫的黑白”。这样,网络就能从没见过的数据中,找出“斑马”的图像。

最后,CLIP将文本和图像理解结合起来,预测哪些图像,与数据集中的哪些文本能完成最好的配对。

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第13张图片

网友:机器人(bot)可能不太高兴

在惊叹CLIP用“大白话”搜索图片效果之余,一位Reddit网友还发现了一个比较有意思的搜索结果。

他在文本描述的代码部分输入:

What image best represents how you feel right now?

这句话在我们人类眼中,应当是询问AI的语气了,然后出来的图片结果是这样的:

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第14张图片

还有这样的:

用“大白话”精准搜图,OpenAI的CLIP惊艳了所有人 | 在线可玩_第15张图片

嗯,看来是被“玩多了”,AI宝宝有点小脾气了。

参考链接:
https://www.reddit.com/r/MachineLearning/comments/l52qe6/p_use_natural_language_queries_to_search_2/

项目地址:
https://colab.research.google.com/github/haltakov/natural-language-image-search/blob/main/colab/unsplash-image-search.ipynb#scrollTo=OswqrzaeMy1J

本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。

加入AI社群,拓展你的AI行业人脉

量子位「AI社群」招募中!欢迎AI从业者、关注AI行业的小伙伴们扫码加入,与50000+名好友共同关注人工智能行业发展&技术进展

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见~

你可能感兴趣的:(人工智能,深度学习,计算机视觉,编程语言,机器学习)