5

大模型都会标注图像了,简单对话即可!来自清华&NUS

 8 months ago
source link: https://www.qbitai.com/2024/01/111443.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

大模型都会标注图像了,简单对话即可!来自清华&NUS

head.jpg克雷西 2024-01-04 09:01:47 来源:量子位

提出位置建模新方法

量子位 | 公众号 QbitAI

多模态大模型集成了检测分割模块后,抠图变得更简单了!

只需用自然语言描述需求,模型就能分分钟标注出要寻找的物体,并做出文字解释。

在其背后提供支持的,是新加坡国立大学NExT++实验室与清华刘知远团队一同打造的全新多模态大模型。

大模型都会标注图像了,简单对话即可!来自清华&NUS

随着GPT-4v的登场,多模态领域涌现出一大批新模型,如LLaVA、BLIP-2等等。

为了进一步扩展多模态大模型的区域理解能力,研究团队打造了一个可以同时进行对话和检测、分割的多模态模型NExT-Chat。

大模型都会标注图像了,简单对话即可!来自清华&NUS

NExT-Chat的最大亮点,是在多模态模型中引入位置输入和输出的能力。

其中位置输入能力指的是根据指定的区域回答问题(下方左图);位置输出能力指的则是定位对话中提及的物体(下方右图):

大模型都会标注图像了,简单对话即可!来自清华&NUS

即使是复杂的定位问题,也能迎刃而解:

大模型都会标注图像了,简单对话即可!来自清华&NUS

除了物体定位,NExT-Chat还可以对图片或其中的某个部分进行描述:

大模型都会标注图像了,简单对话即可!来自清华&NUS

分析完图像的内容之后,NExT-Chat可以利用得到的信息进行推理:

大模型都会标注图像了,简单对话即可!来自清华&NUS

为了准确评估NExT-Chat的表现,研究团队在多个任务数据集上进行了测试。

在多个数据集上取得SOTA

作者首先展示了NExT-Chat在指代表达式分割(RES)任务上的实验结果。

虽然仅仅用了极少量的分割数据,NExT-Chat却展现出了良好的指代分割能力,甚至打败了一系列有监督模型(如MCN,VLT等)和用了5倍以上分割掩模标注的LISA方法。

大模型都会标注图像了,简单对话即可!来自清华&NUS

△RES任务上NExT-Chat结果

接着,研究团队展示了NExT-Chat在REC任务上的实验结果。

如下表所示,相比于相当一系列的有监督方法(如UNITER),NExT-Chat都可以取得更优的效果。

一个有意思的发现是NExT-Chat比使用了类似框训练数据的Shikra效果要稍差一些。

作者猜测,这是由于pix2emb方法中LM loss和detection loss更难以平衡,以及Shikra更贴近现有的纯文本大模型的预训练形式导致的。

大模型都会标注图像了,简单对话即可!来自清华&NUS

△REC任务上NExT-Chat结果

在图像幻觉任务上,如表3所示,NExT-Chat可以在Random和Popular数据集上取得最优的准确率。

大模型都会标注图像了,简单对话即可!来自清华&NUS

△POPE数据集上NExT-Chat结果

在区域描述任务上,NExT-Chat也能取得最优的CIDEr表现,且在该指标打败了4-shot情况下的Kosmos-2。

大模型都会标注图像了,简单对话即可!来自清华&NUS

△RefCOCOg数据集上NExT-Chat结果

那么,NExT-Chat背后都采用了哪些方法呢?

提出图像编码新方式

传统方法的缺陷

传统的模型主要通过pix2seq的方式进行LLM相关的位置建模。

比如Kosmos-2将图像划分成32×32的区块,用每个区块的id来代表点的坐标;Shikra将物体框的坐标转化为纯文本的形式从而使得LLM可以理解坐标。

但使用pix2seq方法的模型输出主要局限在框和点这样的简单格式,而很难泛化到其他更密集的位置表示格式,比如segmentation mask。

为了解决这个问题,本文提出了一种全新的基于embedding的位置建模方式pix2emb。

pix2emb方法

不同于pix2seq,pix2emb所有的位置信息都通过对应的encoder和decoder进行编码和解码,而不是借助LLM本身的文字预测头。

大模型都会标注图像了,简单对话即可!来自清华&NUS

△pix2emb方法简单示例

如上图所示,位置输入被对应的encoder编码为位置embedding,而输出的位置embedding则通过Box Decoder和Mask Decoder转化为框和掩模。

这样做带来了两个好处:

  • 模型的输出格式可以非常方便的扩展到更多复杂形式,比如segmentation mask。
  • 模型可以非常容易的定位任务中已有的实践方式,比如本文的detection loss采用L1 Loss和GIoU Loss (pix2seq则只能使用文本生成loss),本文的mask decoder借助了已有的SAM来做初始化。

通过将pix2seq与pix2emb结合,作者训练了全新的NExT-Chat模型。

NExT-Chat模型

大模型都会标注图像了,简单对话即可!来自清华&NUS

△NExT-Chat模型架构

NExT-Chat整体采用了LLaVA架构,即通过Image Encoder来编码图像信息并输入LLM进行理解,并在此基础上添加了对应的Box Encoder和两种位置输出的Decoder。

为了解决LLM不知道何时该使用语言的LM head还是位置解码器的问题,NExT-Chat额外引入一个全新的token类型来标识位置信息。

如果模型输出了,则该token的embedding会被送入对应的位置解码器进行解码而不是语言解码器。

此外,为了维持输入阶段和输出阶段位置信息的一致性,NExT-Chat额外引入了一个对齐约束:

大模型都会标注图像了,简单对话即可!来自清华&NUS

△位置输入、输出约束

如上图所示,box和位置embedding会被分别通过解码器、编码器或解码器编码器组合,并要求前后不发生变化。

作者发现该方法可以极大程度促进位置输入能力的收敛。

而NExT-Chat的模型训练主要包括3个阶段:

  • 第一阶段:训练模型基本的框输入输出基本能力。NExT-Chat采用Flickr-30K,RefCOCO,VisualGenome等包含框输入输出的数据集进行预训练。训练过程中,LLM参数会被全部训练。
  • 第二阶段:调整LLM的指令遵循能力。通过一些Shikra-RD,LLaVA-instruct之类的指令微调数据使得模型可以更好的响应人类的要求,输出更人性化的结果。
  • 第三阶段:赋予NExT-Chat模型分割能力。通过以上两阶段训练,模型已经有了很好的位置建模能力。作者进一步将这种能力扩展到mask输出上。实验发现,通过使用极少量的mask标注数据和训练时间(大约3小时),NExT-Chat可以快速的拥有良好的分割能力。

这样的训练流程的好处在于:检测框数据丰富且训练开销更小。

NExT-Chat通过在充沛的检测框数据训练基本的位置建模能力,之后可以快速的扩展到难度更大且标注更稀缺的分割任务上。

论文地址:
https://arxiv.org/abs/2311.04498

版权所有,未经授权不得以任何形式转载及使用,违者必究。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK