0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种新的基于视觉语言模型的零镜头分类框架

jf_pmFSk4VX 来源:GiantPandaCV 作者:Garfield 2022-10-20 09:56 次阅读

1. 论文信息

标题:Visual Classification via Description from Large Language Models

作者:Zihao Xu, Hao he, Guang-He Lee, Yuyang Wang, Hao Wang

原文链接:http://wanghao.in/paper/ICLR22_GRDA.pdf

代码链接:https://github.com/ZrrSkywalker/PointCLIP

2. 引言

b4537fd0-5013-11ed-a3b6-dac502259ad0.png

论文首先介绍了一个非常有意思的图:为什么人们把图中的物体分类为母鸡?因为如果我们人类需要证明我们给出的答案是正确的,你可以给它的喙命名,描述它的羽毛,或者讨论我们与母鸡联系在一起的任何其他特征。

人们很容易用文字来描述类别的视觉特征,并利用这些文字描述来辅助感知,用于分类检测等各种感知任务。然而,生成这样的模式的语言描述本身就已经非常具有挑战,很难以完成了,更不用说利用它们进行感知任务,这在机器学习领域还是一个比较大的挑战。

在成对的图像-文本数据的大型语料库上进行训练视觉语言模型(Vison-Language Model),例如CLIP ,最近取得了巨大成功,在图像分类等领域取得了巨大的成就。标准的zero-shot分类的程序设定——计算查询图像和每个类别单词的embeddings之间的相似度,然后选择最高的。这种zero-shot的设定在许多流行的基准测试中显示了令人印象深刻的性能。

与单词相比,这种结构化的描述显然是一个合理的出发点,因为这种基于语义的方法可以依赖于这样一个事实,即在互联网环境种,“母鸡”这个词往往出现在母鸡的图片附近。

其实本文主要的insight是,其实我们可以使用语言作为视觉识别的internal representation,这为计算机视觉任务创建了一个可解释的方案。使用语言使我们能够灵活地与任何单词进行比较,而不是只使用一个类别名称来在多模态信息种进行查询。如果我们知道应该使用什么特性,我们可以让VLM检查这些特性,而不仅仅是依照类名进行查询。

要找一只母鸡,要找它的喙、羽毛以及其他的特征。通过基于这些特性的判断,我们可以获得视觉信息种的额外线索,鼓励查看我们想要使用的特性。在这个过程中,我们可以清楚地了解模型使用什么来做出决策,显然这是有助于。然而,手工编写这些特性可能代价高昂,而且不能扩展到大量的类。我们可以通过向另一个模型请求帮助来解决这个问题。

大型语言模型(large language model),如GPT-3 ,显示了对各种主题的显著的世界知识。它们可以被认为是隐性知识库,以一种可以用自然语言轻松查询的方式喧闹地浓缩了互联网的集体知识。因为人们经常写东西看起来像什么,这包括视觉描述符的知识。

因此,我们可以简单地问一个LLM,通过LLM来查询物体的特征。与从大型语言模型获得的类描述符相比,我们提供了一种用视觉语言模型替代当前零目标分类范式的方法。这不需要额外的训练,也不需要推理期间的大量计算开销。通过构造,这提供了某种程度的内在可解释性;我们可以知道一张图片被标记为老虎,因为模型看到的是老虎的条纹,而不是因为它有一个尾巴而把他分类成老虎。

3. 方法

b4b17bb2-5013-11ed-a3b6-dac502259ad0.png

首先来描述下本文定义识别范式和经典的语言识别模型的区别,如上图,论文提出的方法首先对模型类别的特征进行分解:

where is the set of descriptors for the category and is the log probability that descriptor pertains to the image . Our approach will represent the descriptors also through a natural language sentence.

如何得到这些先验的特征分配呢?当然不是去根据手工标注,我们可以去问GPT-3。当类别D(c)的字典包含许多与观察到的图像x高度匹配的描述符时,该模型s(c, x)将输出一个高分。图2说明了这种分类方法。我们使用加法,以便在图像中可以缺少一些描述符,并通过类的描述符数量进行规范化,以允许不同的类拥有不同数量的描述符。由于描述符是相加的,并且用自然语言表示,因此模型是自然可解释的。要理解为什么模型预测c类,我们可以简单地阅读哪些描述符得分高。

b4bcb4c8-5013-11ed-a3b6-dac502259ad0.png

问题的模式,如上所示。而获取的答案也非常有意思:

b4cb7256-5013-11ed-a3b6-dac502259ad0.png

可以发现,利用GPT-3来预测的效果还是非常不错的。描述符通常包括颜色、形状、物体部件、数量和关系,但也可以用自然语言表达任何东西,这些特征灵活性区分了它们,使每个类别的描述符丰富而微妙。

虽然语言模型的训练集中没有图像,但它们可以在没有视觉输入的情况下成功地模仿视觉描述。用于训练语言模型的语料库包含有视觉知识的人所写的描述。这些描述,在规模上聚合,为视觉识别提供了强有力的基础。

下一步就是GROUNDING DESCRIPTORS, 也就是说利用“{category_name} which (is/has/etc) {descriptor}”这种prompt的方式,来使得CLIP的描述更加细粒度,使得模型的text embedding具有更强的泛化能力。可以发现,这个方法等于只是重新设计了一种获取prompt的方式。

4. 实验

b4f2383c-5013-11ed-a3b6-dac502259ad0.png

论文评估提出的方法在执行图像分类的能力,同时也为其决策提供解释。虽然大多数可解释性方法都在基准性能上做出了妥协,但在表1中演示了我们的方法在此基础上进行了改进。

与将图像与类名的embedding进行比较的CLIP相比,论文提出的方法在imagenet1上平均提高了3%以上的性能。ImageNetV2分布移位基准的改进表明,这些改进不是由于对ImageNet分布的过拟合。最后,我们演示了对鸟类细粒度分类的CUB基准的约1-2%的改进,表明该技术在通用识别环境之外具有前景。我们假设,由于GPT-3不能产生特定于鸟类分类的生态位描述符,所以在CUB上的收益减少了。

b518990a-5013-11ed-a3b6-dac502259ad0.png

可以看到可视化还是提供了比较充分的对于类别特征的解释的。

b55ed186-5013-11ed-a3b6-dac502259ad0.png

论文也提供了基于描述符的检索信息,可以发现也会有非常显著的性能改进。

5. 结论

论文提出了一种新的基于视觉语言模型的零镜头分类框架。作者利用大型语言模型中关于视觉类别的语言知识,为每个类别生成文本描述符,将图像与这些描述符进行比较,而不是直接估计图像与类别名称的相似性。使用GPT-3和CLIP,作者显示了非常promising的结果。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Clip
    +关注

    关注

    0

    文章

    29

    浏览量

    6574
  • GPT
    GPT
    +关注

    关注

    0

    文章

    302

    浏览量

    14884

原文标题:通过大型语言模型的描述进行视觉分类

文章出处:【微信号:GiantPandaCV,微信公众号:GiantPandaCV】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何利用Transformers了解视觉语言模型

    模型称为 “视觉语言模型是什么意思?一个结合了视觉语言模态的
    发表于 03-03 09:49 754次阅读
    如何利用Transformers了解<b class='flag-5'>视觉</b><b class='flag-5'>语言</b><b class='flag-5'>模型</b>

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    学习能力。这些模型以生成能力强和灵活性强为特点,逐渐演变成一种通用计算平台。其参数多样性、生成能力和涌现性使其不仅在自然语言处理领域表现出色,还能适应多种复杂任务。参数多样性让模型能学
    发表于 05-04 23:55

    【大语言模型:原理与工程实践】大语言模型的基础技术

    模型仍以Transformer为基础进行训练。Transformer是一种基于自注意力机制的编码器-解码器结构,其核心由编码器和解码器组成,每个部分均由多个相同层堆叠而成。自注意力机制使
    发表于 05-05 12:17

    基于隐马尔可夫模型的音频自动分类

    信号的时间统计特性,因此,提出一种基于隐马尔可夫模型的音频分类算法,用于语音、音乐以及它们的混合声音的分类.实验结果表明,隐马尔可夫模型的音
    发表于 03-06 23:50

    机器视觉镜头选择

    机器视觉为工业控制系统增加了新的维度,它可以提供装配线上件的尺寸、位置和方向。而合适的镜头选择对于机器视觉能否发挥应有的作用是非常重要的。 在绝大多数机器
    发表于 10-22 15:57

    Web框架使用哪些编程语言

    ,JavaScript是一种运行在浏览器中的解释型的编程语言,可以轻松实现跨平台、跨浏览器驱动网页以及与用户交互的功能,JavaScript开发很多Web框架,如Angular.js、Ember.js以及
    发表于 03-28 16:53

    基础python学习之Django框架设计思想

    部门之间的配合来完成工作,这些部门就形成了个公司的组织架构。从某种意义上来说,公司就是一种框架。那么对应到软件设计上来说,软件框架是由其中的各个模块组成的,每个模块负责特定的功能,模
    发表于 07-20 14:39

    如何去实现一种ThreadX内核框架的设计呢

    ThreadX内核模板框架是怎样去设计的?如何去实现一种ThreadX内核框架的设计呢?
    发表于 11-29 07:08

    一种较通用的界面切换框架分享,绝对实用

    一种较通用的界面切换框架分享,绝对实用
    发表于 12-27 06:02

    一种基于Deep U-Net的多任务学习框架

    提出了一种基于Deep U-Net的多任务学习框架,用于GE-MRI左心房分割,该框架同时执行心房分割和消融前后分类。虽然论文已经很老了,但是改论文提出的多任务和后处理方法到现在还是可
    发表于 11-10 15:35

    LabVIEW进行癌症预测模型研究

    ,然后将得到的特征向量输入到SVM中进行分类。 LabVIEW是一种视觉编程语言,与传统的文本编程语言不同,更适合于进行复杂数据分析和预测
    发表于 12-13 19:04

    一种成分取证的理论分析模式的分类框架

    一种成分取证的理论分析模式的分类框架
    发表于 03-20 11:04 0次下载

    一种新的目标分类特征深度学习模型

    为提高低配置计算环境中的视觉目标实时在线分类特征提取的时效性和分类准确率,提出一种新的目标分类特征深度学习
    发表于 03-20 17:30 0次下载
    <b class='flag-5'>一种</b>新的目标<b class='flag-5'>分类</b>特征深度学习<b class='flag-5'>模型</b>

    OpenCV中支持的非分类与检测视觉模型

    前面给大家分别汇总了OpenCV中支持的图像分类与对象检测模型视觉视觉任务除了分类与检测还有很多其他任务,这里我们就来OpenCV中支持的
    的头像 发表于 08-19 09:10 939次阅读

    机器人基于开源的多模态语言视觉模型

    ByteDance Research 基于开源的多模态语言视觉模型 OpenFlamingo 开发了开源、易用的 RoboFlamingo 机器人操作模型,只用单机就可以训练。
    发表于 01-19 11:43 135次阅读
    机器人基于开源的多模态<b class='flag-5'>语言</b><b class='flag-5'>视觉</b>大<b class='flag-5'>模型</b>