# PUMA：面向高效统一多模态检索的层剪枝语言模型

> 哈尔滨工业大学（深圳）提出的PUMA方法通过层剪枝自蒸馏和模态自适应对比学习损失，解决了多模态大语言模型在统一多模态检索任务中的效率挑战，在大幅降低参数量的同时保持检索性能。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-06T18:33:35.000Z
- 最近活动: 2026-06-06T18:52:59.736Z
- 热度: 161.7
- 关键词: 多模态检索, 模型剪枝, 自蒸馏, 对比学习, 视觉语言模型, Qwen2-VL, LoRA, 机器学习, 计算机视觉
- 页面链接: https://www.zingnex.cn/forum/thread/puma-f25ccdc7
- Canonical: https://www.zingnex.cn/forum/thread/puma-f25ccdc7
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者：** 哈尔滨工业大学（深圳）iLearn Lab
- **作者：** Yibo Lyu, Rui Shao, Gongwei Chen, Yijie Zhu, Weili Guan, Liqiang Nie
- **来源平台：** GitHub
- **原始标题：** PUMA: Layer-Pruned Language Model for Efficient Unified Multimodal Retrieval with Modality-Adaptive Learning
- **原始链接：** https://github.com/iLearn-Lab/ACM-MM25-PUMA
- **论文链接：** https://arxiv.org/abs/2507.08064
- **发表会议：** ACM MM 2025
- **发布时间：** 2026年6月6日

## 研究背景与挑战

统一多模态检索（Unified Multimodal Retrieval, UMR）是多模态大语言模型（MLLM）的重要应用场景之一，它要求模型能够跨图像、文本等多种模态进行语义对齐和检索。然而，现有的MLLM在UMR任务中面临着严峻的效率挑战：

1. **参数量庞大**：主流MLLM通常包含数十亿参数，推理成本高
2. **计算开销大**：完整的模型前向传播需要大量计算资源
3. **部署困难**：在资源受限的实际应用场景中难以部署

如何在保持检索性能的同时大幅降低模型的计算开销，成为UMR实际应用中的关键问题。

## PUMA方法概述

哈尔滨工业大学（深圳）的研究团队提出了PUMA（Layer-Pruned Language Model for Efficient Unified Multimodal Retrieval），从模型结构和模型学习两个角度解决效率挑战：

### 1. 层剪枝自蒸馏（Layer-Pruned Self-Distillation）

从模型结构角度出发，PUMA通过结构性地剪枝模型，仅保留浅层网络，大幅减少了MLLM的参数量。这种方法不是简单地丢弃深层，而是通过自蒸馏机制，让剪枝后的浅层模型学习完整模型的知识，从而在减少参数的同时保持性能。

### 2. 模态自适应对比学习损失（MAC-Loss）

从模型学习角度出发，PUMA提出了Modality-Adaptive Contrastive Learning Loss（MAC-Loss）。该损失函数能够：

- **自适应分离难负样本**：将批次内的负候选样本自适应地分为更难学习的模态内负样本（intra-modality）和相对容易的跨模态负样本（inter-modality）
- **动态温度策略**：结合动态温度策略实现零成本的难负采样

这种设计使得模型能够更有效地学习跨模态对齐，同时避免了传统难负采样方法的额外计算开销。

## 技术细节与实现

### 模型架构

PUMA基于Qwen2-VL架构，通过层剪枝保留前k层，然后使用LoRA（Low-Rank Adaptation）进行微调。具体流程包括：

1. **层剪枝**：复制并保留模型的前k层
2. **自蒸馏训练**：使用完整模型作为教师模型，指导剪枝后的学生模型学习
3. **两阶段微调**：
   - 第一阶段：使用蒸馏损失进行初步微调
   - 第二阶段：使用MAC-Loss进行精细调整

### MAC-Loss机制

MAC-Loss的核心思想是根据样本的模态来源动态调整对比学习的难度：

- **模态内负样本**：与查询样本来自同一模态的负样本，通常更难区分
- **跨模态负样本**：与查询样本来自不同模态的负样本，相对容易区分

通过自适应地调整这两类负样本的权重，MAC-Loss能够让模型更关注那些真正困难的样本，同时避免在容易区分的样本上浪费计算资源。

## 实验设置与评测

### 数据集

实验使用了以下数据集：

- **M-BEIR**：大规模多模态检索基准数据集
- **预训练数据集**：来自SimCSE的预训练数据

### 评测指标

实验遵循UniIR的评测协议，主要指标包括：

- **召回率（Recall）**：评估检索的准确性
- **平均精度均值（mAP）**：综合考虑检索排序质量

### 实现细节

- 基础模型：Qwen2-VL-7B-Instruct
- 训练环境：Python 3.10
- 微调方法：LoRA
- 推理优化：支持多GPU并行推理

## 实验结果与性能分析

PUMA在多个多模态检索任务上进行了评测，主要发现包括：

1. **效率提升显著**：通过层剪枝，模型参数量大幅减少，推理速度明显提升
2. **性能保持**：在多个检索任务上，PUMA的性能接近甚至超过完整的MLLM
3. **MAC-Loss有效性**：模态自适应对比学习损失能够有效提升跨模态对齐质量

具体而言，PUMA在图像-文本检索、文本-图像检索等任务上均取得了有竞争力的结果，证明了层剪枝与自适应学习策略结合的有效性。

## 实际应用价值

PUMA的研究成果对多模态检索的实际应用具有重要意义：

1. **降低部署成本**：剪枝后的模型可以在资源受限的环境中部署
2. **提升响应速度**：更小的模型意味着更快的推理速度，适合实时应用
3. **扩展应用场景**：使得在边缘设备上运行多模态检索成为可能

## 代码开源与使用

研究团队已将PUMA的代码开源在GitHub上，提供了完整的训练和评测脚本：

```bash
# 创建conda环境
conda create -n puma python=3.10 -y
conda activate puma

# 克隆仓库并安装依赖
git clone https://github.com/iLearn-Lab/ACM-MM25-PUMA.git
cd ACM-MM25-PUMA
pip install -r requirements.txt

# 运行训练脚本
bash scripts/train/finetune_distill.sh
```

## 结语

PUMA通过层剪枝自蒸馏和模态自适应对比学习损失，为高效统一多模态检索提供了一个有效的解决方案。该方法不仅在学术上具有创新性，更在实际应用中展现了巨大的潜力。随着多模态AI系统的普及，像PUMA这样的效率优化方法将在降低部署成本、扩展应用场景方面发挥越来越重要的作用。
