

BLIP 和 BLIP2 的模型结构与训练方式对比
BLIP 和 BLIP2 是两种用于视觉语言任务的预训练模型,它们在模型结构和训练方式上有显著的区别和联系。以下是对两者的详细对比分析:
1. 模型结构对比
BLIP 的模型结构
- 核心架构:多模态编码器-解码器混合(MED),包含以下三个功能模块:
- 单模态编码器:分别编码图像和文本,通过图像-文本对比损失(ITC)对齐视觉和语言表示。
- 基于图像的文本编码器:在文本编码器中插入交叉注意力层,通过图像-文本匹配损失(ITM)学习图像和文本的细粒度对齐。
- 基于图像的文本解码器:将双向自注意力层替换为因果自注意力层,通过语言建模损失(LM)生成文本描述。
- 特点:
- 统一的视觉语言模型,支持多种任务(理解与生成)。
- 通过共享参数实现多任务学习。
BLIP2 的模型结构
- 核心架构:引入 Querying Transformer (Q-Former) 作为桥接模块,连接冻结的图像编码器和冻结的大语言模型(LLM)。
- Q-Former:包含两个Transformer子模块:
- 图像Transformer:与冻结的图像编码器交互,提取视觉特征。
- 文本Transformer:作为文本编码器和解码器,支持文本生成和理解。
- 冻结的图像编码器:如 ViT-L/14 或 ViT-g/14,用于提取图像特征。
- 冻结的LLM:如 OPT 或 FlanT5,用于生成语言。
- Q-Former:包含两个Transformer子模块: