赞
踩
1. 数据方面
提供了大量的开源数据集的整合,如果想要构建开源数据集,可以从这篇文章的数据部分着手依次收集。
提供了VL的训练需要纯文本语料的思路,之前的VL训练,无论是预训练还是微调都着重于多模态数据集的训练;这里通过实验发现必须保证纯文本训练数据,才能保证大语言模型性能不衰退,通过实验,大致确认了图文对和纯文本的训练比例在3:7上。
和llava系列不同,DeepSeek-VL有大量的自有数据的参与,这和Qwen类似。如果需要构建特殊方向的能力,大量的自有数据是有必要的。
视觉模型可以处理1024*1024的输入,并且在一个固定的token budget,且计算的训练代价较低。
亮点分析:
1. 首先指出了传统的视觉编码器存在的输入像素问题,一般的clip基础的视觉编码大模型输出的分辨率都比较低,最高位512*512,这种输入无法处理图像的微小细节,也无法实现富文本OCR的识别。
2. 这里采用的策略和Vary类似,额外叠加一个高分辨率的视觉编码器,然后让图片分别通过原始的低像素视觉编码器和新的高分辨率视觉编码器。将两个视觉编码器的输入embedding统一到同一个维度之后进行concat操作,实现高像素和低像素信息的融合。
整理的训练首先从语言模型开始,在VL的预训练中,从头开始训练LLM模型,然后仔细控制视觉训练和语言训练两个模态。
在传统的两阶段训练中,第一阶段用于对齐图像编码器输入的embedding空间和大语言模型输入的embedding输入空间。在这个阶段中,往往只训练视觉适配器,而冻结视觉编码器和大语言模型。在第二阶段,用于训练全量的模型参数。
和传统的两阶段训练方式不同,这里的训练分为三个阶段。
第一阶段和传统的第一阶段类似,用大量的图文对训练视觉适配器,对齐视觉embedding特征和大语言模型的输入embedding空间。第二阶段是联合训练语言能力和多模态能力,用大量的图文交互对和纯文本语料训练视觉适配器和大语言模型,目标是不降低大语言模型的能力。第三阶段是进行全量参数的微调训练,让模型更好的适配chat环境。
Vision-Language pretraining Data and VisionLanguage Supervised Fine-Tuning Data
视觉语言(VL)预训练数据由来自各种来源的视觉-文本数据组成,旨在增强模型的基础跨模态理解能力;而视觉语言(VL)监督微调数据相对较小,旨在教会模型完成特定的下游任务。按设计,VL预训练数据用于在训练阶段1中预热视觉语言适配器,并在阶段2中共同预训练视觉语言模型;VL监督微调数据在训练阶段3中使用,即视觉语言监督微调。
交织的图像-文本数据使模型能够更好地进行多模态输入的上下文学习,我们利用了三个公共数据集MMC4、Wiki和Wikihow。
图像字幕数据来自三个高质量图像-文本配对数据集:Capsfusion、TaiSu和Detailed Caption。
表格和图表数据使模型能够学习通用表格和图表图像理解的能力。它包括各种公共数据源,包括Chart2text、Geo170K、Unichart、Ureader、M-paper、ScienceQA、ScreenQA、SciGraphQA-295K、Paper2figure100k、Widget Captioning、Screen2words和Refexp。
Web Code数据使模型能够从图形界面或视觉图中重建代码。利用Websight进行UI反渲染,论文采用了类似于MATCHA中视觉图反渲染的策略。这涉及处理大约146万个Jupyter笔记本从Stack数据集(Kocetkov et al., 2023)中提取这些笔记本,并收集所有图表及其相应的 preceding代码段,论文成功策划了一个包含200万对图像和代码的集合。为了提高数据质量,论文过滤了110万个实例,每个实例包含一个单一图像和至少5行代码,构成了论文的主要训练数据集。
文档光学字符识别(OCR)数据有助于在文档级别识别光学字符,即使是在具有挑战性的现实世界中场景也是如此。据论文所知,目前还没有公开可用的涵盖英文和中文文档的大型数据集。尽管存在公开可访问的小型数据集Latex-OCR(Blecher,2024),但论文还构建了一个全面的英文和中文文档OCR数据集。它由两部分组成:1):arXiv文章:论文从140万篇arXiv文章中收集源代码和编译的PDF文件。利用Nougat中的预处理工具,论文将这些文章转换成成对的图像和文本;2):电子书和教育材料:论文从Anna’s Archive中清理了86万本英文和18万本中文电子书,以及数百万K-12教育考试题目。随后,论文使用HTML渲染工具将这些不同模板的HTML文件转换成成对的图像和文本格式。
场景文本OCR数据增强了模型从环境中集成文本的图像中识别和提取文本的能力。该数据集由多个公共数据集组成,包括ArT、MLT-17、LSVT、UberText、Coco-text、RCTW-17、ReCTS、TextOCR、OpenVINO和HierText。
Text-only corpus serves to maintain proficiency in language-centric tasks. In this study, weemploy the same text corpus with DeepSeek-LLM
数据的配比如下
在论文研究中使用的有监督的微调数据集涵盖了多种多模态和语言数据源,包括著名的开源共享 gpt4v 数据集,如 ShareGPT4V、LAION-GPTV、LVIS-Instruct4V、textOCR-GPT4V、LLaVA1.6-GPT4V和 IconQA。此外,论文还整合了从预训练数据集中提取的部分表格和图表数据,如 Ureader、ScreenQA、Geo170K和 ScienceQA。此外,论文还集成了来自 Screen-to-code任务的 UI Code 数据集。为了提高论文的多模态 SFT 数据的质量,论文还精心整理了一部分高质量的自家多模态 SFT 数据,其中一些是中文语言的。
论文自有的指令微调数据集经过精心设计,以反映现实世界的使用场景并涵盖广泛的任务。论文首先从各种在线来源收集了一组多样化的真实测试用例,采用 GPT-4V 和 Gemini进行问答。这些测试用例随后被仔细分析和组织成一个全面分类,涵盖了多个类别,如识别、转换、分析、推理、评估和安全,如表 3 所示。这个结构化的分类为选择每个测试图像的代表性提示提供了指导,确保论文的指令微调数据集既实用又与现实世界应用相关。此外,这个分类也被用来构建平衡和全面的评估数据集,这使论文能够有效评估模型在不同任务和类别上的性能。通过遵循这种系统化方法,确保了自家的多模态 SFT 数据涵盖的类别与分类良好对齐,并代表现实世界的使用场景。
下面是自有数据按照上面提到的类别进行分类的一些例子
微调的数据配比如下
论文系统包含三个模块:混合视觉编码器、视觉适配器和语言模型。
采用SigLIP作为视觉编码器,以从视觉输入中提取高级语义特征表示。然而,论文观察到单个SigLIP编码器难以全面解决所有现实世界的问题。CLIP家族的视觉编码器,包括SigLIP,主要是为语义视觉表示而设计的,但面临着模糊编码的挑战,导致视觉上不同的图像被编码为相似,这被称为"CLIP盲对"Tong等人(2024)。同时,CLIP家族模型的输入分辨率相对较低(例如,224 x 224, 336 x 336, 384 x 384, 512 x 512),这阻碍了它们处理需要更详细低级特征的任务,如密集OCR和视觉定位任务。
为了解决这些局限性,论文额外使用了一个基于SAM-B的仅视觉编码器,这是一个预训练的ViTDet图像编码器,以处理高分辨率的1024 x 1024图像输入。除了SAM-B编码器外,论文保留了低分辨率的384 x 384图像输入的SigLIP-L视觉编码器。因此,论文的混合视觉编码器结合了SAM-B和SigLIP-L编码器,高效地编码高分辨率的1024 x 1024图像,同时保留了语义和详细信息。
在SAM-B生成的大小为64 x 64 x 256的特征图的情况下,VL适配器最初将其插值到96 x 96 x 256的大小。随后,它使用步长为2的两个卷积层,产生一个24 x 24 x 1024的特征图,并将其重塑为576 x 1024。与此同时,由SigLIP-L生成的576 x 1024低分辨率特征图与高分辨率特征相连接,生成576个具有2048维的视觉标记。这些视觉标记具有显著增强高级语义视觉识别和低级视觉定位任务的能力。然后它们经过GeLU激活,并通过嵌入层与语言模型建立联系。
使用两层的混合多层感知器(MLP)来连接视觉编码器和大型语言模型(LLM)。首先,分别使用不同的单层MLP处理高分辨率特征和低分辨率特征。随后,这些特征沿着它们的维度进行连接,然后通过另一层MLP转换为LLM的输入空间。
语言模型基于DeepSeek LLM,其微架构设计主要遵循LLaMA的设计,采用预规范化结构(Pre-Norm)和RMSNorm函数,并在前馈网络(FFN)中使用SwiGLU作为激活函数,中间层维度为83
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。