Web agent 学习 2:TextSquare: Scaling up Text-Centric VisualInstruction Tuning

学习论文:TextSquare: Scaling up Text-Centric Visual Instruction Tuning(主要是学习构建数据集)

递归学习了:InternLM-XComposer2: Mastering Free-form Text-Image Composition and Comprehension in Vision-Language Large Models(介绍模型结构细节)

论文译:1.放大以文本为中心的指令微调

2.掌握视觉语言大模型中的自由形式文本图像合成和理解

首先是第一篇论文:放大以文本为中心的指令微调

摘要部分主要是说:现有的多模态大模型受困于缺乏好的指令微调数据集,作者使用了一种叫“平方”的方法(自我提问、回答、推理和评估)制造了大规模、高质量的指令调优数据集Square-10M,并在其基础上训练出了textsquare模型,效果很好。

“以数据为中心的model”是什么意思?其实就是以往的模型重视算法(模型的结构啥的)但数据集比较随意。这些新模型的主要卖点不是模型有多奇妙,而是使用了更好的数据集。

VQA的意思是视觉问答。

本文的数据都是文本中心的,图片中有大量的文字。

本文的数据集构建流程如下:

(1)数据收集,用于收集具有不同属性的文本元素的大规模图像。

        在这一部分,作者收集了大量包含着许多文字的图片。

(2) 数据生成包括对收集到的数据进行自我提问、回答和推理(reasoning)。在这个阶段,MLLM被提示基于给定的图像以及其答案背后的推理来生成VQA对。

        这一部分就需要作者的Gemini登场了。reasoning就是要gemini解释一下为什么要这么回答。

(3)数据过滤,用于对生成的内容进行自我评估,旨在通过使用MLLM的评估能力来丢弃无意义的问题和错误答案。

        首先让gemini或者其他的什么大语言模型判断一下这些问题是否有意义,答案好不好。

        然后在回答阶段,作者会给gemini不同但其实是一个意思的提示。假如它一直给不一样的答案,那就不好。

        最后检查多上下文一致性。与上一步类似,我们通过在问题前准备不同的上下文信息来进一步验证VQA对。给定生成的问题,Gemini Pro在不同的上下文中生成三种类型的答案:(1)推理回答。Gemini Pro通过预先准备的详细解释(即推理阶段生成的内容)回答问题。(2) 上下文回答。Gemini Pro用预先准备好的思路或少量提示来回答问题。(3) 天真的回答。Gemini Pro在没有额外背景的情况下回答问题。如果生成的答案在语义上不一致,我们将丢弃VQA对

数据集搞完了,接下来介绍作者使用这个数据集训出来的模型。(不是上文那个gemini,这个工具人已经被抛弃了)

模型结构见此论文:Xiaoyi Dong, Pan Zhang, Yuhang Zang, Yuhang Cao, Bin Wang, Linke Ouyang, Xilin Wei, Songyang Zhang, Haodong Duan, Maosong Cao, et al. Internlm-xcomposer2: Mastering free-form text-image composition and comprehension in vision-language large model. arXiv preprint arXiv:2401.16420, 2024.

递归学习论文:InternLM-XComposer2: Mastering Free-form Text-Image Composition and Comprehension in Vision-Language Large Models

这个模型处理图像和文本。

图像encoder部分是用clip预训练的(就是用clip模型训练之后把图像encoder拆下来)当然也可使用开源的vit large模型。

语言模型部分使用了InternLM-2。

显然,这两个模型都是从别人身上扣下来的。他们在原本的模型里很正常,放到一起可能就不对头(不认识彼此的token啥的),我们要做的就是对齐图像特征与文字特征。这一部分要用的部件就是Partial LoRA——也就是Low-Rank Adaptation。

这就是给vision最后面(包括与LLM连接的那部分)加上几个全连接层,LLM固定住(太大了,训练不起),只训练vision和加上去的几个层,就可以让二者对齐了。最后可以解锁所有参数稍微训个几步。

模型结构大概就这样,现在回归主线。

在textsquare模型上,作者是这样训练的:TextSquare是通过使用Square-10M执行监督微调(SFT)来实现的。SFT过程包括三个阶段:在第一阶段,我们解冻所有三个组件(即视觉编码器、LLM和投影仪),并以490的分辨率训练模型。在第二阶段,输入分辨率增加到700,并且只有视觉编码器被训练以适应分辨率变化。在第三阶段,我们进一步以700的分辨率进行全参数微调。TextSquare证明,使用我们的Square-10M数据集,具有8B参数和正常大小图像分辨率的模型可以在以文本为中心的VQA上实现非凡的性能,超过了大多数可用的MLLM,甚至是闭源SOTA模型。

最后再说一下自己的数据集牛逼,完了。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值