行业资讯

大语言模型的视觉大考验:挑战与实力

2024-01-26

大语言模型的视觉大考验:挑战与实力

芯格瑞 Slab

 2024年01月26日 18:00 北京

S-Lab编译选自arxiv

编辑:杨轶卿 祁景博

理解一个视觉概念,比如“青蛙”,意味着什么?仅仅知道它的皮肤颜色、脚的数量、眼睛的位置以及它跳跃时的外观足够吗?虽然有关青蛙外观的某些信息可以从文本中获取,但普遍认为,要在视觉上理解这个概念,人们需要观察青蛙的图像,最好是从不同的角度和在各种真实场景中观察。然而,从文本中学习有关不同概念的视觉“含义”有多大程度上是可能的呢?

S-Lab公司是一家专注于软件测试领域的企业,拥有一支高度专业的软件测试团队。我们致力于利用先进的人工智能软件,其中包括强大的大模型技术,以及及时且精准的发现您软件中的潜在缺陷。通过我们的软件测试服务,我们助力您确保产品的质量,从而为其顺利上市提供有力支持。无论是检测功能性问题、性能瓶颈还是安全漏洞,S-Lab公司将为您提供全面而可靠的软件测试解决方案,确保您的软件在市场上脱颖而出。

尽管语言模型操作的是文本数据,但已经证明语言模型的表示包含有关形状和颜色等命名感知概念的信息,并且已经发现它们可以线性地转换为视觉模型学到的表示。这些实验表明,独立地,视觉模型和语言模型以相似的方式表示世界的各个方面。虽然通过研究预先选择的一组属性的模型表示可以告诉我们模型编码的信息,但这限制了一次只能研究一组固定属性,并需要访问模型的内部参数。相反,如图1所示,我们提出以下问题:

1.语言模型对视觉世界了解多少?

2.我们能否使用仅基于文本的模型训练自然图像的视觉系统?

为了回答这些问题,我们通过测试预训练的语言模型在呈现(绘制)和识别(看到)现实世界视觉概念方面的能力来评估它们对视觉世界的信息包含情况。这使我们能够测量它们对任意属性以及同时对属性进行建模的能力,而无需为一组固定的特征逐一训练分类器。尽管预训练语言模型在使用像素生成图像方面存在局限,但提供的例子表明,像GPT-4这样的模型可以生成能够呈现对象(如独角兽)的代码。我们通过通过文本提示→代码→图像的过程测量语言模型生成越来越复杂的视觉概念的能力。图1显示了语言模型生成的复杂场景的示例。我们发现语言模型在生成由多个对象组成的复杂视觉场景方面表现出奇异的好,有效地对它们之间的空间关系进行建模。然而,语言模型未能捕捉到视觉世界的某些方面,包括对象的纹理、精确的形状,以及图像中与其他对象的表面接触等属性。

接下来,我们评估语言模型识别(看到)感知概念的能力(图1的第I部分(b))。我们通过收集以代码表示的人类绘画,并询问语言模型它们表示什么。代码描述了形状的有序序列、它们的位置和颜色。我们发现,与人类不同,人类创造困难而验证容易,而模型则难以解释/识别描述它们自己能够有效生成的详细场景的代码。

此外,我们展示了通过基于文本的修正可以提高语言模型的视觉生成能力。我们通过在语言模型和自身之间关闭反馈循环来实现这一点。首先,我们使用语言模型生成代码来说明一个概念。随后,通过将模型的生成条件设置为先前生成的代码,并提示“改进生成的代码”,反复调用模型。我们发现对模型进行这样的迭代调用会导致视觉呈现的改进,如图1(第I部分(c))所示。

 

图1. LLM的视觉检查。I. 测试语言模型的视觉知识。我们建议一组测试来检查语言模型的视觉能力,包括(a)编写呈现复杂视觉概念的代码的能力,(b)从代码中识别视觉概念,(c)用仅文本自我反馈纠正呈现代码的能力。II. 我们测试LLM是否能够生成用于训练高性能视觉系统的数据,该系统可用于对自然图像进行语义判断。

最后,我们研究了LLM生成的图像是否可以作为预训练视觉模型的数据源,并将它们与合成生成的图像和自然图像进行比较。通过仅从文本构建一个在自然图像测试中表现良好的预训练视觉表示系统,我们展示了文本模型捕捉到与自然图像中相似的视觉世界方面的能力。

总的来说,本文的主要贡献有:

1.视觉能力数据集:引入一个分层次的视觉类别数据集,包含形状、物体和场景描述,用于测试语言模型的视觉能力。

2.生成:测试和量化LLM的生成能力,展示仅使用文本模型可以生成详细和多样化的场景。我们还展示通过使用基于文本的反馈可以提高生成图像的质量。

3.识别:分析LLM是否能够识别图像生成代码以及生成它。我们使用众包方式测试这一能力,使用人类生成的超出分布范围的样本。

4.在没有自然图像的情况下进行自然图像任务的训练:我们展示LLM生成的图像对于训练视觉骨干网络是有用的,在与其他程序生成的图像数据集结合时实现了最先进的性能。

5.视觉能力数据集:从点到场景

 

图2. 视觉能力数据集。我们收集了一个包括形状、物体和场景等视觉概念的数据集,并要求LLMs使用文本 → 代码 → 图像生成过程生成相应的图像。猜猜场景的标题。

我们通过在概念层次上测量语言模型的能力,即创建、识别和修改图像渲染代码,来评估LLM的视觉能力。由此产生的图像数据集也用作本文后半部分用于预训练视觉模型的语料库。我们构建了三个包含逐渐增长复杂性的视觉概念文本描述的数据集。从简单的形状及其组合开始,到对象,最终到由详细的自然语言描述构成的复杂场景。数据集的样本可在图2和补充材料(SM)中找到。

(i) 形状及其组合:第一个数据集包含来自不同类别的形状的组合,如点、线、2D形状和3D形状,具有32种不同的属性,如颜色、纹理、位置和空间排列。完整数据集包含超过40万个示例,我们在实验中采样了1500个用于测试。

(ii) 对象:第二个数据集包含ADE20K数据集中最频繁的1,000个对象。与形状相比,对象更难生成和识别,因为它们包含许多形状的复杂组合。

(iii) 场景:最后一个数据集包含描述多个对象的各种地方的复杂场景说明。为此,我们从MS-COCO数据集中随机均匀采样了1,000个场景描述。

 

图3. 图像-文本一致性。由不同LLMs生成的图像的中位CLIP图像-文本检索百分位数。我们包括Stable Diffusion作为Oracle。几率是50%。

1.1.用代码表示图像

在数据集中,视觉概念用语言描述。例如,我们可以将一个场景描述为“一个阳光明媚的夏日海滩,蓝天和宁静的海洋。”我们通过用这些描述引导LLM并测量它们生成能够编译成渲染描绘场景图像的代码的能力来测试LLM的视觉能力。为什么使用代码?虽然LLM可以顺序输出像素值以生成图像,但它们目前的能力是有限的。另一方面,代码可以提供对视觉世界的描述性而简洁的表示。它可以用于表示更高级的感知属性,而语言模型已经在代码的示例上进行了训练。在本文中,不同编程语言中的代码将作为与LLM进行交互和生成视觉场景的主要方式。

 

图4. 真实性 vs. 多样性。使用两种采样策略,LLMs能够绘制同一概念的多样化插图。

1.2. 测试的模型和编程语言

在这项研究中,我们评估了四个语言模型,每个模型在四种不同的编程语言上进行了测试。

(i) 语言模型:我们评估了GPT-3.5(text-davinci-003和GPT-3.5-turbo模型)和GPT-4。Llama2(chat 70B)、GPT-J和GPT-2等模型在可靠生成可执行的图像渲染代码方面表现不佳,因此被排除在主要论文的分析之外,但包含在SM中。

(ii) 编程语言:为了验证模型的视觉能力不受特定编程语言的限制,我们使用了四种具有不同表达能力的编程语言。它们是:python-matplotlib、python-turtle、Processing(基于Java构建)和TikZ(基于Tex构建)。模型在不同编程语言中生成和识别相同视觉概念的能力表明,该模型可能对该概念具有一致且与语言无关的表示。

2.1.LLM的视觉检查

在这一部分,我们评估LLM的视觉能力。模型在三个任务上进行评估:

(i) 生成/用文本绘制:评估LLM生成与特定概念相对应的图像渲染代码的能力。

(ii) 识别/用文本看:测试LLM在识别以代码表示的视觉概念和场景方面的性能。我们测试每个模型对人类绘画的代码表示。

(iii) 使用文本反馈修正绘画:评估LLM通过自动生成的自然语言反馈迭代修改生成的代码的能力。

2.2.生成:用文本绘制

实验设置。为了测试LLM能够可视化什么,我们评估它们在四种编程工具中生成我们的视觉层次数据集概念的代码的能力。提供给LLM的提示是:

提示:“在编程语言[编程语言名称]中编写代码,绘制一个[概念]”。然后,我们通过编译相应编程语言中的代码来渲染图像。有关实验协议的其他细节可以在SM中找到。

评估协议。我们使用以下指标评估使用文本生成的图像的视觉质量和多样性。

 

图5. 多样性。LLMs能够生成同一概念的多样而有意义的实例,展示了它们能够表示超越单一固定原型的概念的能力。

(1) 保真度:我们计算生成图像与其地面真实描述之间的保真度,通过检索图像的最佳描述。我们首先使用它们的CLIP分数计算每个图像与同一类别(形状/对象/场景)内所有潜在描述之间的一致性。然后,我们报告地面真实描述在百分比中的排名(例如,100%的得分意味着地面真实概念排名第一)。在SM中,我们通过人类感知研究增强了这个度量,并展示了CLIP排名反映了人类偏好,这得以从它们的高相关性(r = 0.82,p-val = 1.25e−09)中证明。

(2) 多样性:为了评估模型呈现多样内容的能力,我们使用LPIPS-diversity分数[45],该分数针对表示相同视觉概念的图像对进行评估。

(3) 真实性:对于从ImageNet [13]中均匀采样的1,000个图像的集合,我们使用Frechet Inception Distance(FID)来量化自然图像和由LLM生成的图像分布之间的差异。

基准:作为一个Oracle,我们包括由文本到图像模型(Stable Diffusion)生成的图像,并报告它们在所有评估指标上的得分。

LLM能够可视化什么?我们发现LLM可以可视化来自视觉层次的现实概念。LLM生成图像的示例可以在图1、2、5以及SM中找到。LLM能够生成非平凡的视觉组合,如图2所示;该模型组合了两个不相关的概念(“汽车形状的蛋糕”),生成了视觉现象(“模糊图像”),并成功解释了空间关系(例如“一排水平排列的自行车”)。不出所料,随着从形状到场景的概念复杂性逐渐增加,模型的能力会下降,如图3所示的不同类别中的中位图像-文本检索CLIP分数。对于绘制包含多个对象的复杂场景等更复杂的视觉概念,GPT-3.5和GPT-4在使用Processing和TikZ绘制具有复杂描述的场景方面比使用python-matplotlib和python-turtle更准确。对于对象和场景,CLIP分数表明包含“人物”、“车辆”和“户外场景”等概念的绘制是最容易的(详细分析见SM)。这种呈现复杂场景的能力来自于呈现代码的表达能力,模型在每个编程语言中的编程能力以及其对涉及的不同概念的内部表示的质量。

 

表1. 人类绘画的识别。模型难以正确分类人类绘画到其类别中。虽然GPT-3.5在场景类别上能够正确分类图像,其他模型在几乎只能超过偶然的情况下正确分类图像。

LLM不能呈现什么?在某些情况下,即使是相对简单的概念对于模型来说也很难绘制。我们确定了几种常见的失败模式:

(a) 语言模型特别难以处理组合了一组形状和特定空间组织的概念。

(b) 绘画粗糙且缺乏细节。这是Davinci的常见失败情况,特别是在使用matplotlib和turtle编码时。

(c) 描述是不完整的、损坏的,或者只表示概念的子集(在场景类别中很常见)。一个有趣的独立失败案例是绘制数字。对于所有模型和语言,我们发现这个任务是具有挑战性的。详见SM中对失败案例的讨论以及提示对模型生成的影响。

多样性和真实性。语言模型展现了生成相同概念的不同样本的能力,如图5所示。为了生成相同场景的不同样本,我们比较了两种策略:

(i) 从模型中重复采样 

(ii) 采样参数化函数,允许通过更改参数创建概念的新绘画。模型呈现视觉概念多样实现的能力反映在图4中的高LPIPS-diversity分数中。生成不同图像的能力表明LLM可以以多种方式表示视觉概念,而不仅仅是有限的原型集。LLM生成的图像远非像自然图像一样真实,与Stable Diffusion Oracle相比,模型在FID度量上得分较低(图4)。然而,有趣的是现代模型比老模型排名更高,这表明它们可能正在逐渐朝着越来越真实的世界表示迈进。

2.3.识别:用文本看

识别图像的内容需要推断元素(如点、笔画、颜色和形状)在空间上如何组合,从而形成对象,这些对象本身又组成复杂的场景。评估模型识别图像渲染代码的能力能够深入了解其在解释高维度视觉场景表示方面的能力,包括那些与其“记忆”的原型非常不同的场景。虽然互联网上的代码可能是测试这些模型的良好来源,但它包含了注释、打印语句和符号名称,揭示了关于代码表示的基本语义信息,并且可能实际上不需要对用于创建绘画的步骤进行复杂的推理。此外,我们希望确保用于评估识别的代码是新的,并且不是任何测试模型的训练集的一部分。因此,我们收集了自己的数据集,其中包含了如图6所示的代码表示的绘画。

 

图6. 人类绘画。使用我们的绘图界面由用户制作的通过CLIP分数过滤的绘画示例。每个收集的绘画都被转换成使用代码,然后包含在LLM的识别测试中。

数据集。尽管大多数人在使用“Paint”等应用程序绘制图像方面表现出色,但编写代表图像的代码更加复杂且需要更多技巧。为了测试模型的识别能力,我们收集了一个人类绘画及其相应代码表示的数据集。该数据集是在类似于Pictionary游戏或Google的“Quick Draw!”应用程序的设置下构建的。用户被提示在两分钟的时间限制内使用绘图界面绘制来自Visual Aptitude数据集的概念。该界面以Processing编程语言记录他们的绘图步骤。形状被排除在分析之外,并使用保真度分数对生成的图像进行了质量过滤。该界面旨在模仿使用processing进行绘图表达的组件,并鼓励用户在规定的时间内描绘整个提示,而不是详细但不完整的插图。我们每个类别收集了600张图像,其中162张对象图像和113张场景图像通过了保真度检查(排名≤40),并用于评估。有关更多详细信息,请参阅SM。

评估协议。我们通过测量模型在多类别分类设置中分类图像的能力来评估模型识别代码表示的视觉概念的能力。在这个测试中,模型通过使用代码和一个包含一个准确描述代码的视觉概念列表的提示,被要求匹配视觉概念到正确的条目。对模型的提示是:

提示:“以下列表中的哪个概念能够由[代码]表示?[概念1,概念2,...]”。

基准:偶然基线的成功取决于期望结果的概率。这由1/N给出,其中N是结果的数量。对于具有五个标签的多类别分类设置,这是0.2。

分析。人类绘画呈现了一种独特的识别挑战,因为代表给定概念的图像具有很大的多样性。

语言模型在空间推理方面的能力非常有限。表1显示,GPT-3.5在场景设置中超过了偶然基线,表明模型的视觉识别能力是非平凡的,使其能够(有限地)识别表示人类绘画的代码。尽管模型能够做到这一点的确切机制尚不清楚,但这项任务要求模型识别对象、它们的属性和空间排列。错误地归因于任何信息都可能导致完全不同的视觉场景。尽管模型无法完美地识别所有图像,但展示的识别能力是非平凡的。模型可能会在无法识别的概念上失败,而在其他方面它们可以很好地绘制。与人类不同,人类可以将某物绘制得很好,这就自动意味着能够很好地识别相同的概念,而模型可能无法识别它们无法渲染的概念。这与“创造很难,验证很容易”的概念相矛盾。如SM所示,识别中的失败展示了模型无法识别的图像是视觉概念的非典型描绘,表明模型在从代码中识别感知概念的能力上可能存在局限性。

2.4.文本反馈:使用文本进行纠正

模型生成图像的能力在一定程度上受到提示的限制。未能生成与特定概念相对应的图像不一定意味着它对该特定概念的“知识”缺乏,而更可能是其缺乏直接的可访问性。直接系统性的指导和文本反馈是否有助于提高模型的视觉能力?如果是这样,是否可以自动化这个过程?

 

图7. 使用文本反馈改进的视觉生成。由于反馈,模型在视觉生成方面的改进通常是逐渐的,随着反馈过程逐渐添加一些特征。在一定程度上,根据先前迭代生成的代码进行条件处理确保了模型受限于修改当前图像的方面。

实验协议。生成器语言模型的视觉能力可以通过将其与自身配对来提高。这个过程充当了通过提示促使的“自我对话”,并帮助在多轮生成中确定模型对特定视觉概念的内部表示。此外,对模型的生成进行有选择的逐步纠正可以让我们了解模型是否已经记忆了与视觉概念相对应的固定“原型”,或者其表示是否可以通过反复提示来改进其绘图。

提示:“以下[代码]不能准确表示[概念]。你如何做得更好?”。

评估协议。为了评估模型绘图能力的提高,我们使用了在第2.1节中描述的保真度分数。

基线:为了评估模型的绘图改进是否源于文本反馈或重复模型调用,我们进行了“可变性”基线。我们为相同概念生成20个独立的输出,并报告每个概念的最佳图像的中位CLIP百分位数。平均可变性分数在图8中报告。

 

图8. 文本反馈提高了视觉生成能力:生成质量的提高显示为随反馈迭代次数增加的中位CLIP百分位数。具有文本校正的模型胜过从同一概念的多个随机样本中选择最佳图像。

仅通过文本反馈就可以提高视觉能力。我们在图7中展示了使用迭代反馈生成的图像的示例。随着多轮反馈,视觉质量和对视觉概念的忠实度显著提高。图8显示,GPT-3.5,作为一个较弱的生成器,通过来自自身的文本反馈几乎可以变得与GPT-4一样能干。因此,模型可以通过多轮的自我验证来从整体上得到更好的答案。事实上,在经过20轮的反馈后,GPT-3.5的平均性能接近于GPT-4。有关数据集的进一步分析和可视化,请参阅SM。

3.从文本中学习视觉系统

最后,我们测试LLM生成的图像是否可以用于训练适用于自然图像的通用视觉系统。这与现有的大量工作相关,该工作通过使用仅由过程中生成的图像进行预训练来研究相同的现象。

训练和评估协议。我们使用无监督对比学习,允许使用未标记的图像集对视觉主干进行预训练,并遵循的训练和评估协议。我们使用ResNet50,使用LLM生成的图像数据集进行MoCo-v2方法的200个时期的训练,批量大小为256。为了比较,我们使用4种不同的过程生成方法生成了相同大小和图像分辨率的数据集。训练后,我们评估在每个数据集上训练的模型的性能,使用两种方法:

(i)在ImageNet-1k分类上对冻结主干进行线性层训练100个时期。

(ii)在ImageNet-100上使用5最近邻检索。后者特别引人注目,因为最近邻检索显示,仅使用LLM生成的数据进行训练的模型为自然图像提供了强大的表示,无需训练线性层。这可以从图9中 qualitatively 看出。

基线和数据集。我们将LLM生成的图像与现有的过程生成图像进行比较。这些包括简单的生成程序,如deadlevaves、分形和StyleGAN,每个都由一个生成高度多样化的图像的单个程序组成。我们还考虑了Shaders-21k数据集,这是一个大型的过程图像程序集合,每个程序产生一个高度多样化的图像家族。我们的LLM生成的数据集包含了使用第4.1节中描述的不同LLM生成的所有可用图像,共80k张图像。我们通过使用MixUP(在其他合成图像 中表现出效果)随机采样六个数据点的凸组合,达到了总共130万张图像。作为一个消融实验,我们报告了一个排除了从训练中排除GPT-4图像的实验(总80k中的31k子集)。SM中报告了额外的数据集细分(即每个LLM单独)。

分析。表2显示,仅使用LLM生成的图像训练的模型优于像dead-leaves或fractals等简单数据集,但仍然不如替代方案。通过对数据的视觉检查,我们将这种劣势归因于LLM生成的大多数图像缺乏纹理,正如本文和SM中的图所观察到的那样。为了克服这一点,我们将Shaders21k数据集,该数据集生成富有纹理的图像与从LLM中采样的样本相结合。这是通过以50%的机会从任一数据集中进行采样并应用MixUP来完成的。如表2所示,这些模型优于所有基于过程生成的替代方案,表明:

(i)LLM生成的图像与纹理相结合是自然图像的强大表示。

(ii)通过将Shaders-21k的程序与从LLM中采样的程序相结合,可以提高整体性能,正如[5]所预测的那样。我们还注意到,使用或不使用GPT-4图像的模型达到的性能几乎相同。我们在这一节的结论是,LLM,仅处理文本输入和输出,可以生成具有有用视觉属性的图像,这些属性与以前的过程生成方法相辅相成。

 

图9. 在ImageNet-100上的最近邻检索。对于随机初始化的网络和使用所有我们的LLM生成的图像训练的网络在ImageNet-100上的最近邻。

 

表2. 学习视觉系统。使用不同的真实和程序生成的数据集,包括LLM生成的图像,对使用ResNet-50预训练的ImageNet-1k上的Top-1线性评估和ImageNet-100上的5-NN进行评估。

S-Lab公司在软件测试具有对大模型人工智能软件的测试能力,并能够根据客户的需求为其定制化测试方案,准确捕捉软件中的不足,并协助优化,确保产品达到最高水平。选择S-Lab,您将拥有一支强大的合作伙伴,使您的产品在激烈的市场竞争中脱颖而出,成为行业内的佼佼者。

结论

我们展示了LLM学习了真实世界的视觉属性,并可以以过程图像代码的形式描绘它们。我们首先分析了它们生成的样本的特性,并展示了通过模型本身的文本反馈可以进一步改善模型的能力。最后,我们展示了这些模型生成的图像可以用于训练自然图像的有用视觉主干,与替代方法相得益彰。

学术引用:

Connor Anderson and Ryan Farrell. Improving fractal pretraining. CoRR, abs/2110.03091, 2021.

Sharma, Pratyusha, et al. "A Vision Check-up for Language Models." arXiv preprint arXiv:2401.01862 (2024).

Mostafa Abdou, Artur Kulmizev, Daniel Hershcovich, Stella Frank, Ellie Pavlick, and Anders Søgaard. Can language models encode perceptual structure without grounding? a case study in color. In Conference on Computational Natural Language Learning, 2021. 3.

John L Barron, David J Fleet, and Steven S Beauchemin. Performance of optical flow techniques. International journal of computer vision, 12:43–77, 1994.

Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep Residual Learning for Image Recognition. In Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition, pages 770–778. IEEE, 2016. 8.

阅读 20

  • Copyright © 2024- 2026 国测格瑞科技(北京)有限公司  
    All Rights Reserved.
  •   备案号:京ICP备2025154226号-1
  • 地址:北京市北京经济技术开发区(通州)嘉创二路55号1幢2层