感谢如此优秀的开源工作,仓库链接 Qwen-VL
权重分为 Qwen-VL && Qwen-VL-Chat,区别文档稍后介绍
训练过程
- 在第一阶段中主要使用224X224分辨率训练,训练数据主要来源是公开数据集,经过清洗,数据总量大约是1.4B,中文数据和英文j训练目标是视觉语言和文本语言对齐。使用的loss函数是交叉熵,训练过程:给定一个输入(例如图像or文本),预测整个词表中作为next token的概率(The language model, given an input (such as an image and some initial text), predicts the probability of each token in the vocabulary being the next token in the sequence.),实际标签转换为one-hot, 然后使用交叉熵损失函数计算两个的差(The actual distribution is represented by the true next token in the training data. In practice, this is often converted into a one-hot encoded vector, where the actual next token has a probability of 1, and all others have a probability of 0。The cross-entropy loss calculates the difference between these two distributions. It penalizes predictions that are confident but wrong and rewards predictions that are correct and confident.),在训练过程中,最小化loss
- 在第二计算多任务预训练中,模型权重全部放开训练,图像分辨率提高到了448X448,引入七种不同任务的数据集,数据格式如图:这一阶段的训练目标和第一阶段一样;这一阶段训练的权重在这里:Qwen-VL
- 第三阶段主要是增强模型的指令跟随能力。数据量:350K;混合数据训练;freeze vit ;专门构建了数据模板:ChatML,这一阶段训练的权重为 Qwen-VL-Chat
训练过程差异
第一阶段只训练视觉编码器和VL 适配器,而固定语言模型的做法,主要目的为了先让模型学会从图中提取信息,好处是,专注视觉理解,保持语言的理解能力,计算效率也高;
第二阶段放开模型训练,目的是综合优化视觉-语言理解能力,使其在多模态任务表现更佳,融合多模态信息