SeVa: 首个无监督范式,用于视觉语言大模型的人类偏好对齐 !

技术

点击下方卡片,关注 「AI视界引擎」 公众号

picture.image img

本文将介绍我们的最新工作: Self-Supervised Visual Preference Alignment 。该工作首次发现并验证 了:我们能通过无监督的方式构造偏好样本对来解决视觉语言模型的偏好对齐问题整个过程无需GPT-4或者是人类参与打标签!

paper已于4月放上arixv ,以下是论文链接:https://arxiv.org/abs/2404.10501

代码也已经整理好并开源,欢迎各位大佬多多Star:https://github.com/Kevinz-code/SeVa

本文基于的是LLaVa-1.5-7B/13B来完成的。

先直接上Demo感受一下,做偏好对齐 前后模型输出的变化:picture.image

图2 用SeVa的方法对LLaVA做Alignment前后,模型的输出变化

unset

unset0 前言unset

unset

目前视觉语言大模型(简称VLM,本文专注于多模理解)基本上在流程上非常的成熟:Pretrain + SFT + Alignment (Optional)。 去年下半年开始,工业界和学术界主要聚焦在多模态大模型的数据(数据构造,配比,打标签)模型结构(Connector,打开模型权重等) 的设计上,目标是提升VLM的理解能力(传统QA+多模态benchmark)。但是,我们自己发现部分开源大模型(包括内部使用的),虽然在bmk上有不错的性能,但在用户体感方面会比较欠缺:不遵循指令,产生幻觉回答,违背3H准则(helpfulness, harmless, honest)。因此,我们想聚焦于多模态大模型的Alignment方向,来探索该领域,为研究者提供一些新的insight。

我们认为,多模态对齐的一大难点在于偏好数据的构造。 目前的事实是:纯NLP领域的偏好数据非常昂贵且稀缺 (一般需要GPT-4或者人类的参与),Vision-Language领域的偏好数据还没有形成一个成熟的pipeline(数据构造方式数据质量数据的效果 都还没完全得到验证)。因此,本文首次提出一套自动化构造偏好数据的pipeline用于Alignment的训练。 我们通过严格的实验,从多个角度展示了该pipeline对多模理解和用户友好性的提升。

unset

unset1 简要概括SeVaunset

unset

本文发现了Vision-Language-Models (VLM)对于图像层面的augmentation非常敏感(轻微的图像增广会使得VLM对同一个Question产生错误且不同的回答 )。因此本文将原始图像产生的回答作为正样本 ,将增广后的图像产生的回答作为负样本, 用于构造DPO的数据集并训练。本文验证了,仅仅使用8k构造的无监督的数据 能够显著提高VLM的Instruction following能力(OCR, chain-of-though, helpfulness),降低幻觉,并且在多模态等benchmark上提升明显

picture.image 图3 SeVa的6行伪代码实现

本文还进行了诸多关于SeVa的细化和分析,有很多有意思的结论

  • SeVa能够被视作一种特殊的对比学习方法。
  • SeVa构造的数据进行DPO训练后,模型会产生更长token的输出,并且抗干扰能力更强。
  • 正负样本之间的margin很重要 ,过大或过小都会sup-optimal。
  • alignment过程中的LoRA参数 非常关键。

unset

unset2 SeVa的动机unset

unset

我们基于之前的一些研究猜想,VLM对于图像层面的扰动会比较敏感(不同于传统视觉领域的contrastive learning,图像增广之后的两个view会拥有相似的semantic特征)。我们将多种图像层面的augmentations分别作用于LLaVA-1.5的测试阶段,并在3个常规的多模态benchmark上运行,得到的结果如下:

picture.image img

图4 在3个常规多模态bmk上对LLaVA做不同图像层面的test-time-augmentation (TTA),得到的测试准确率。

我们不难发现,图像扰动会大幅降低 模型的回答准确率,或者是叫做错误的回答。 那么,如果我们将原始图像+question产生的responses作为偏好学习中的正样本 ;将增广后的图像+question产生的responses作为偏好学习中的负样本, 就能轻而易举的构造出任意数量且廉价的偏好样本集合(不需要任何人类或者是GPT-4的标注) 用于多模态大模型的Alignment的训练**。** 因此**,** 我们随即通过实验验证了该想法的合理性,如下表所示:

picture.image img

表1 6种不同的图像增广产生的DPO正负样本数据用于训练。在MMVet,MMB,POPE上的结果。

我们发现,不同augmentation都能构造出有效的DPO数据,即使是RandomFl。同时我们也观察到,过于强或者是过于弱的augmentation都会导致sub-optimal的性能。因此,我们最终的结论是:

"self-generated augmentation pairs are suitable preference sample to improve multi-modal abilities, and hard negatives are most preferred." (来自原文, 自生成的DPO样本是能够普遍提升多模态性能,但是那些难的负样本才是最有效的

unset

unset3 SeVa的流程图、实现细节、与对比学习的联系unset

unset

流程图

流程图比较容易理解,之前已阐述过(见图3)。

picture.image img

图5 SeVa的流程图

实现细节:

数据:LLaVA665k (用其中的TextVQA和OCRVQA来构造DPO数据)

模型:基于LLaVA-v1.5-7B, LLaVA-v1.5-13B

训练:用LLaVA-v1.5的pretrained+SFT作为DPO的初始化权重,结合LoRA训练LLM。r默认在512/1024。

与对比学习的关系

我们系统的阐述了在DPO训练中用到的偏好分布对比损失 之间的关系。他们的形式在一定程度上是一致的,但是核心区别在于负样本的定义(见论文appendix和Sec3.3)。和对比学习统一之后的好处是,我们能够轻易的通过对比学习的思路,在DPO中添加更多由SeVa构建的负样本对。从而能够推导出一个更加general的DPO的形式(见appendix)

picture.image img

图6 SeVa与对比学习的联系

unset

unset4 SeVa主实验结果unset

unset

多模态benchmark

我们的方法在9个benchmark上都几乎能够做到稳定的提升。其中,在GPT-4评估的benchmark MMVet, LLaVA-bench上提升显著,在幻觉的指标上POPE, SHR上也有稳定的性能提升

picture.image img

表2 SeVa在多模态和VQA评估基准上的效果

SeVa与SFT的比较

这里的实验是想验证,SeVa DPO的范式比起cont. SFT微调VLM上具有更大的优势。比如,更短的训练时间,更少量的数据,无监督的pipeline,以及性能的优势。换句话说,此表也证明了Preference Alignment在某些情况会远远超过SFT的效率

picture.image img

表3 SeVa(DPO范式)和continual SFT的比较

unset

unset5 更多关于SeVa和DPO的探索unset

unset

更加稳定的输出

我们发现经过DPO之后,SeVa的输出会更加的与模型得到的Question更加的接近 。同时,SeVa每次回答的一致性也更高,对于不同temperature的扰动更加的鲁棒

picture.image 表4 GPT-4评估的consistency-score

DPO带来的输出变化

通过可视化,我们发现,SeVa的输出结果比原始LLaVA(未经过DPO训练)更加的优质(在win-lose的比例上明显占优)。同时,经过DPO之后,SeVA产生了普遍比LLaVA更长更详细的回答。以上两个方面的可视化也解释了为什么SeVa能够更加的与人类的偏好对齐

picture.image img

图7 SeVa和LLaVA的定量对比

难的负样本是最优的

我们通过控制data augmentation中的diffusion steps的步数。我们发现,DPO需要的负样本和正样本之间需要一个非常合理的margin(过大或者过小都会导致学习的不稳定)。 换句话说,过于简单的负样本会倾向于和正样本一致,而过难的负样本可能不具备学习的意义(这种负样本可能是完全和图片不相关的回答)

picture.image 图 8 Hard negative matter


欢迎大家的讨论!更多细节见原论文

论文:2404.10501 (arxiv.org)

代码:Kevinz-code/SeVa


文档作者:朱可

文档知乎链接 :[SeVa: 首个无监督范式,用于视觉语言大模型的人类偏好对齐 - 知乎 (zhihu.com)]

点击上方卡片,关注 「AI视界引擎」 公众号

0
0
0
0
关于作者
关于作者

文章

0

获赞

0

收藏

0

相关资源
如何构建企业级云原生计算基础设施
云原生大数据是大数据平台新一代架构和运行形态。通过升级云原生架构,可以为大数据在弹性、多租户、敏捷开发、降本增效、安全合规、容灾和资源调度等方向上带来优势。本议题将依托字节跳动最佳实践,围绕云原生大数据解决方案进行展开。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论