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

    文章

    32

    浏览量

    7060
  • GPT
    GPT
    +关注

    关注

    0

    文章

    368

    浏览量

    16287

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

    一种新的动态微观语言竞争社会仿真模型

    语言竞争传播演化现象是典型的不能假设、无法进行真实性实验的社会科学问题,而建立在社会仿真模型基础上的计算实验是可行的方案。利用基于Agent的社会圈子网络理论并引入语言的内部词汇结构给出一种
    发表于 11-23 15:41 ?6次下载

    一种改进的视觉词袋方法

    视觉词袋模型广泛地应用于图像分类与图像检索等领域.在传统词袋模型中,视觉单词统计方法忽略了视觉
    发表于 12-28 17:36 ?3次下载

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

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

    一种基于框架特征的共指消解方法

    一种基于框架特征的共指消解方法,该方法通过融合汉语框架语义信息并采用多种分类算法实现共指消解。框架语义篇章语料集上的实验结果表明,将汉语
    发表于 03-19 11:35 ?7次下载
    <b class='flag-5'>一种</b>基于<b class='flag-5'>框架</b>特征的共指消解方法

    一种基于BERT模型的社交电商文本分类算法

    随着网络购物的高速发展,网络商家和购物者在网络交易活动中产生了大量的交易数据,其中蕴含着巨大的分析价值。针对社交电商商品文本的文本分类问题,为了更加高效准确地判断文本所描述商品的类别,提出了一种
    发表于 04-13 15:14 ?8次下载
    <b class='flag-5'>一种</b>基于BERT<b class='flag-5'>模型</b>的社交电商文本<b class='flag-5'>分类</b>算法

    一种问题框架模型驱动技术现结合的方法

    ,仍是个亟待解决的问题。文中提出了一种问题框架模型驱动技术相结合的方法,其可将问题模型转换为UML( Unified Modeling
    发表于 04-23 10:48 ?4次下载
    <b class='flag-5'>一种</b>问题<b class='flag-5'>框架</b>与<b class='flag-5'>模型</b>驱动技术现结合的方法

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

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

    介绍一种新的全景视觉里程计框架PVO

    论文提出了PVO,这是一种新的全景视觉里程计框架,用于实现场景运动、几何和全景分割信息的更全面建模。
    的头像 发表于 05-09 16:51 ?2254次阅读
    介绍<b class='flag-5'>一种</b>新的全景<b class='flag-5'>视觉</b>里程计<b class='flag-5'>框架</b>PVO

    语言模型中的语言与知识:一种神秘的分离现象

    自然语言处理领域存在着个非常有趣的现象:在多语言模型中,不同的语言之间似乎存在着一种隐含的对齐
    发表于 02-20 14:53 ?877次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b>中的<b class='flag-5'>语言</b>与知识:<b class='flag-5'>一种</b>神秘的分离现象

    基于视觉语言模型的导航框架VLMnav

    本文提出了一种视觉语言模型(VLM)转换为端到端导航策略的具体框架。不依赖于感知、规划和控制之间的分离,而是使用VLM在
    的头像 发表于 11-22 09:42 ?845次阅读

    语言模型开发框架是什么

    语言模型开发框架是指用于训练、推理和部署大型语言模型的软件工具和库。下面,AI部落小编为您介绍大语言
    的头像 发表于 12-06 10:28 ?569次阅读

    文详解视觉语言模型

    视觉语言模型(VLM)是一种多模态、生成式 AI 模型,能够理解和处理视频、图像和文本。
    的头像 发表于 02-12 11:13 ?1866次阅读
    <b class='flag-5'>一</b>文详解<b class='flag-5'>视觉</b><b class='flag-5'>语言</b><b class='flag-5'>模型</b>

    ?VLM(视觉语言模型)?详细解析

    视觉语言模型(Visual Language Model, VLM)是一种结合视觉(图像/视频)和语言
    的头像 发表于 03-17 15:32 ?4629次阅读
    ?VLM(<b class='flag-5'>视觉</b><b class='flag-5'>语言</b><b class='flag-5'>模型</b>)?详细解析