生成性人工智能

带有VILA的NVIDIA硬件上的可视化语言模型

装饰性图像。

可视化语言模型最近有了显著的发展。然而,现有技术通常只支持一个图像。他们无法在多个图像之间进行推理,无法支持上下文学习或理解视频。此外,它们不会优化推理速度。 

我们开发了VILA(维拉)这是一个可视化语言模型,具有整体的预培训、指令调优和部署管道,帮助NVIDIA客户在其多模式产品中取得成功。VILA在图像QA基准和视频QA基准上都实现了SOTA性能,具有强大的多图像推理能力和上下文学习能力。它还针对速度进行了优化。 

与其他VLM相比,它使用1/4的令牌,并使用4位AWQ量化,而不会丢失准确性。VILA有多种大小,从支持最高性能的40B到可部署在NVIDIA Jetson Orin等边缘设备上的3.5B。

我们设计了一个高效的培训渠道,仅用两天时间就用128台NVIDIA A100 GPU对VILA-13B进行了培训。除此研究原型外,我们还证明了VILA具有更多数据和GPU小时数的可伸缩性。 

为了提高推理效率,VILA与TRT-LLM兼容。我们使用4位AWQ量化了VILA,在单个NVIDIA RTX 4090 GPU上,VILA-14B以10ms/token的速度运行。

VILA培训食谱

像Llava这样的现有方法使用视觉指令调整来扩展具有视觉输入的LLM,但缺乏对视觉语言预处理过程的深入研究,在该过程中,模型学习对两种模式执行联合建模。 

三个阶段的图:投影仪训练、交织图文数据预训练和视觉文本联合监督微调。
图1。VILA的训练配方

模型体系结构

多模态LLM可以分为基于交叉注意力的设置和基于自回归的设置。 

后一个标记器将图像转换为视觉标记,与文本标记连接,并作为LLM的输入(即将视觉输入视为外语)。它是纯文本LLM的自然扩展,通过使用类似于RAG的视觉嵌入来增加输入,并且可以处理任意数量的交错图像-文本输入。 

因此,由于其灵活性和易于量化/部署,我们将重点放在了自动累进体系结构上。 

图1显示了自回归VLM由三个组件组成:a可视编码器,一个法学硕士、和投影机这将嵌入与这两种模式联系在一起。该模型接受视觉和文本输入,并生成文本输出。

解除LLM冻结至关重要

有两种常用的方法可以用视觉输入来增强预处理的纯文本LLM:在视觉输入标记上微调LLM,或冻结LLM,并只训练视觉输入投影仪作为提示调谐。 

后者很有吸引力,因为冷冻LLM可以防止预处理、纯文本LLM的降解。尽管如此,更新基本LLM对于继承一些吸引人的LLM属性(如上下文学习)至关重要。 

我们观察到以下情况:

  • 尽管使用了高容量设计,但在SFT期间仅培训投影仪会导致性能不佳。在SFT期间,对LLM进行微调更有意义。 
  • 有趣的是,在预训练期间冻结LLM不会影响零快照性能,但会降低上下文学习能力。 
  • 当使用小容量投影仪(线性层而不是变压器块)时,精确度稍好(与c和d相比)。我们假设,更简单的投影仪会迫使LLM在处理视觉输入时学习更多,从而实现更好的泛化。 

鉴于这些观察结果,我们在随后的研究中,在预训练和指令调整期间,使用了一个简单的线性投影层来微调LLM。

交错的图像-文本数据至关重要

我们的目标是增加LLM以支持视觉输入,而不是训练一个只对视觉语言输入有效的模型。必须保留LLM的纯文本功能。 

数据管理和混合是预训练和指令调整的关键因素。有两种数据格式:

  • 图文对(即图像及其标题):<im1><txt1>,<im2><txt2>
  • 交错的图像-文本数据:<txt1><im1><txt2>

图文对

使用COYO数据集中的图像-文本对进行预训练可能会导致灾难性遗忘。纯文本准确性(MMLU)下降了17.2%。 

值得注意的是,四镜头的准确度甚至比零镜头还要差,这表明该模型无法正确地对视觉语言输入进行上下文学习(可能是因为它在预处理期间从未看到多个图像)。 

我们认为,灾难性的遗忘是由于基于文本的字幕的分布造成的,这些字幕通常简短明了。

交错的图像-文本

另一方面,与纯文本语料库相比,使用像MMC4这样的交错图像-文本数据集具有更紧密的分布。当使用交错数据进行预处理时,MMLU上的退化仅为~5%。 

通过适当的指令调整,可以完全恢复这种降级。它还实现了上下文中的视觉学习,与零射击相比,具有更高的4射击精度,这是VILA的一大亮点。

数据混合

数据混合改进了预处理,以将两者的优点结合在一起。混合交错语料库和图像-文本对可以在语料库中引入更多多样性,同时还可以防止严重退化。 

MMC4+COYO培训进一步提高了视觉语言基准测试的准确性。

使用联合SFT恢复LLM降级

尽管交错数据有助于保持纯文本功能,但精确度仍下降了5%。 

维护纯文本功能的一种潜在方法是添加纯文本语料库(LLM预培训中使用的语料库)。然而,即使对于开源模型,这样的文本语料库通常也是专有的。还不清楚如何对数据进行二次抽样以匹配视觉语言语料库的规模。

幸运的是,我们发现纯文本功能只是暂时隐藏,不会被忘记。尽管使用的规模比文本预训练语料库小得多(通常为万亿规模),但在SFT期间添加纯文本数据可以帮助消除退化。 

我们观察到,在纯文本SFT数据中进行混合可以消除纯文本能力的退化,并提高视觉语言能力。我们推测,纯文本指令数据提高了模型的指令允许能力,这对视觉语言任务也很重要。 

有趣的是,混合COYO数据的好处在联合SFT中更为显著。我们相信,通过联合SFT,当用简短字幕进行预处理时,模型不再遭受纯文本退化的影响,从而释放出更好的视觉多样性的全部好处。

图像分辨率很重要,而不是标记的数量

将分辨率从224提高到336可以将TextVQA的准确性从41.6%提高到49.8%。 

然而,分辨率越高,每张图像的标记数就越多(336×336对应于576个标记/图像),计算成本也就越高,考虑到有限的上下文长度,这对视频理解来说更为糟糕。我们有一种LongLoRA技术来扩展上下文长度,我们计划将其结合起来。它还限制了情境学习的演示次数。 

幸运的是,原始分辨率比视觉标记/图像的数量更重要。我们可以使用不同的投影仪设计来压缩视觉标记。我们尝试了一个下采样投影仪,它简单地将每个2×2标记连接到一个单独的标记中,并使用线性层来融合信息。在336分辨率下,它将#标记减少到144,甚至小于224+线性设置。 

尽管如此,尽管与336+线性设置相比,TextVQA的准确率仍低3%,但其准确率更高(46%对41.6%),这表明图像标记中存在大量冗余。其他数据集(如OKVQA和COCO)上的差距较小,因为它们通常需要更高级别的语义。 

在最初的出版物中,我们没有在主要结果中应用任何令牌压缩。然而,在这个版本中,我们为所有大小的模型都包含了这种令牌压缩技术。

数据质量比数据数量更重要

我们的实验表明,将预处理数据从25M扩大到50M并没有带来太多好处。然而,添加~1M的高质量数据可以提高基准测试结果。因此,数据质量比数据数量重要得多。 

为了用高性能但有限的计算资源训练VILA,我们更关注数据质量,而不是数据量。例如,根据CLIP评分,我们只选择了COYO-700M数据集中前5%的文本图像对。我们还过滤了视频卡数据集的高质量数据,并将其添加到我们的数据集混合中。

VILA部署

VILA易于量化并部署在GPU上。它用可视化令牌增强了LLM,但没有改变LLM体系结构,后者保持了代码库的模块化。 

我们使用4位AWQ量化了VILA,并将其部署在NVIDIA RTX 4090和Jetson Orin上视觉语言智能和Edge AI 2.0

AWQ量化算法适用于多模态应用,因为AWQ不需要反向传播或重建,而GPTQ则需要。因此,它对新模式具有更好的泛化能力,并且不会超出特定的校准集。我们只量化了模型的语言部分,因为它支配着模型大小和推理延迟。视觉部分占用的延迟不到4%。 

在零快照和各种少快照设置下,AWQ优于现有方法(RTN、GPTQ),证明了不同模式和上下文学习工作量的通用性。

性能

模型VQA-V2型GQA公司VQA–T公司科学QA–IMME公司种子-IMMMU值MMMU测试
LLaVA-NeXT-34B型83.767.169.581.8163175.951.144.7
维拉1.5-40B84.364.673.587.4172775.751.946.9
表1。LLaVA Next-34B与VILA1.5-40B的比较
模型精密度VQA-V2型GQA公司VQA–T公司科学QA–IMME公司种子-IMMMU值MMMU测试
标高1.5-13B第16页82.864.36580.1157072.637.933.6
VILA1.5-13B村整数482.764.564.779.7153172.637.834
拉玛-3-VILA1.5-8B第16帧80.961.966.379.9157771.436.936
拉玛-3-VILA1.5-8B整数480.361.765.479159471.13636.1
表2。量化前后图像QA基准的模型评估结果
模型精密度英伟达A100 GPUNVIDIA RTX 4090公司NVIDIA Jetson Orin公司
VILA1.5-13B村第16帧51OOM公司6
VILA1.5-13B村整数411610621
拉玛-3-VILA1.5-8B第16页755710
Llama-3-别墅15-8B整数416915029
表3。不同平台上的推理速度(令牌/秒)

视频字幕性能

VILA具有上下文学习能力:在没有明确描述任务(描述公司、分类和计数以及世界知识)的情况下,通过少量快照示例进行提示,VILA可以自动识别任务并做出正确的预测。

图中显示,VLM可以根据前面给出的示例提供答案。
图2。情境学习示例

VILA具有良好的泛化和推理能力。它可以理解迷因,对多个图像或视频帧进行推理,并处理驾驶场景中的拐角情况。

VILA的四个示例。1) VILA可以通过四个图像理解迷因。2) VILA可以理解视频。3) VILA正在进行多图像推理,以了解用户何时吃午饭。4) VILA理解图像中不寻常的部分。
图3。多图像推理示例

NVIDIA GTC 2024 VILA

在NVIDIA GTC 2024上,我们宣布了VILA,以实现从边缘到云的高效多模式NVIDIA-AI解决方案。

在边缘,VILA使用AWQ有效地量化为四位,可用于下载,支持在NVIDIA Jetson Orin Nano和Jetson AGX Orin平台上进行实时推断。这大大解决了边缘机器人和自动车辆应用程序所面临的能量和延迟预算有限的挑战。有关综合教程,请参见视觉语言智能和Edge AI 2.0

VILA和NVIDIA Visual Insight Agent

VILA增强了云中的NVIDIA Visual Insight Agent(VIA)框架,使您能够创建AI代理。这些代理通过回答诸如“工厂第三通道发生了什么?”之类的问题来协助运营团队例如,具有生成能力的人工智能代理可以立即提供见解,解释说,“下午3:30,箱子从货架上倒下来,挡住了过道。” 

使用VIA框架,您可以制作人工智能代理,通过视觉语言模型处理大量实时或存档的视频和图像数据。无论是在边缘还是在云端实现,这一先进的一代视觉AI代理都将改变几乎所有行业。它们使您能够使用自然语言总结、搜索视频内容并从中获得可操作的见解。 

有关更多信息,请参阅保持同步:NVIDIA将数字孪生兄弟与实时AI结合用于工业自动化

图中显示了一个框架,可以将摄像头输入、视频或静态图像输入到可视AI代理中进行分析并输出报告。
图4。NVIDIA VIA框架

结论

VILA提供了一种有效的设计方法,可以将LLM扩展到视觉任务,从训练到推理迎合。VILA利用解冻LLM、交错图像-文本数据管理和仔细的文本数据重新借贷的全部力量,在保持纯文本功能的同时,已经超越了视觉任务的最先进方法。 

VILA在多图像分析、上下文学习和零/少快照任务中证明了强大的推理能力。我们希望VILA能够帮助NVIDIA建立更好的多模式基础模型,在NVIDIAMetropolis、视听、机器人、生成性人工智能等领域具有不同的应用。

有关更多信息,请参阅VILA:关于可视化语言模型的预培训纸张和/高效大型模型/VILAGitHub回购。

讨论(1)

标签