PC-LoRA: Low-Rank Adaptation for Progressive Model Compression with Knowledge Distillation
作者: Injoon Hwang, Haewon Park, Youngwan Lee, Jooyoung Yang, SunJae Maeng
分类: cs.CV, cs.AI
发布日期: 2024-06-13
备注: Accepted at T4V@CVPR
💡 一句话要点
提出PC-LoRA,通过低秩适配实现模型压缩与知识蒸馏的同步进行
🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture)
关键词: 低秩适配 模型压缩 知识蒸馏 参数高效微调 深度学习 视觉模型 语言模型
📋 核心要点
- 现有参数高效微调方法依赖预训练权重,限制了模型压缩潜力,存在冗余。
- PC-LoRA的核心思想是在微调过程中逐步移除预训练权重,仅保留LoRA适配器。
- 实验表明,PC-LoRA在视觉和语言模型上均实现了显著的参数和FLOPs压缩。
📝 摘要(中文)
本文提出了一种名为渐进压缩LoRA(PC-LoRA)的方法,该方法利用低秩适配(LoRA)同时执行模型压缩和微调。PC-LoRA方法在训练过程中逐步移除预训练权重,最终只留下低秩适配器。因此,这些低秩适配器取代了整个预训练权重,从而同时实现了压缩和微调的目标。在各种模型上的经验分析表明,PC-LoRA在视觉模型(例如ViT-B)上实现了94.36%/89.1%的参数和FLOPs压缩率,在语言模型(例如BERT)上实现了93.42%/84.2%的参数和FLOPs压缩率。
🔬 方法详解
问题定义:论文旨在解决模型压缩和参数高效微调的问题。现有方法通常在微调过程中仍然依赖预训练权重,这限制了模型压缩的潜力,并且可能存在冗余参数。因此,如何能够在微调的同时实现高效的模型压缩是一个挑战。
核心思路:PC-LoRA的核心思路是在微调过程中逐步移除预训练权重,最终只保留低秩适配器(LoRA)。通过这种方式,LoRA适配器不仅学习了特定任务的知识,还取代了原始的预训练权重,从而实现了模型压缩。
技术框架:PC-LoRA的整体框架包括以下几个阶段:1) 初始化LoRA适配器并将其添加到预训练模型中。2) 在微调过程中,逐渐减小预训练权重的贡献,同时增加LoRA适配器的权重。3) 最终,预训练权重被完全移除,只留下LoRA适配器。这个过程可以通过控制一个权重衰减因子来实现。
关键创新:PC-LoRA的关键创新在于它将模型压缩和微调过程融合在一起,通过渐进式地移除预训练权重,使得LoRA适配器能够学习到足够的知识来替代原始权重。这与传统的LoRA方法不同,后者通常需要保留预训练权重。
关键设计:PC-LoRA的关键设计包括:1) 使用LoRA进行低秩适配,减少可训练参数的数量。2) 引入权重衰减因子来控制预训练权重的移除速度。3) 使用知识蒸馏技术来保证在压缩过程中模型的性能不会显著下降。具体的损失函数可能包括任务相关的损失以及知识蒸馏损失。
🖼️ 关键图片
📊 实验亮点
实验结果表明,PC-LoRA在ViT-B视觉模型上实现了94.36%的参数压缩率和89.1%的FLOPs压缩率,在BERT语言模型上实现了93.42%的参数压缩率和84.2%的FLOPs压缩率。这些结果表明,PC-LoRA能够在显著压缩模型大小的同时,保持模型的性能。
🎯 应用场景
PC-LoRA适用于资源受限的设备,例如移动设备和嵌入式系统,在这些设备上部署大型深度学习模型通常面临存储和计算资源的挑战。该方法可以应用于各种视觉和语言任务,例如图像分类、目标检测、自然语言处理等。通过减少模型的大小和计算复杂度,PC-LoRA可以提高模型的部署效率和降低功耗。
📄 摘要(原文)
Low-rank adaption (LoRA) is a prominent method that adds a small number of learnable parameters to the frozen pre-trained weights for parameter-efficient fine-tuning. Prompted by the question, ``Can we make its representation enough with LoRA weights solely at the final phase of finetuning without the pre-trained weights?'' In this work, we introduce Progressive Compression LoRA~(PC-LoRA), which utilizes low-rank adaptation (LoRA) to simultaneously perform model compression and fine-tuning. The PC-LoRA method gradually removes the pre-trained weights during the training process, eventually leaving only the low-rank adapters in the end. Thus, these low-rank adapters replace the whole pre-trained weights, achieving the goals of compression and fine-tuning at the same time. Empirical analysis across various models demonstrates that PC-LoRA achieves parameter and FLOPs compression rates of 94.36%/89.1% for vision models, e.g., ViT-B, and 93.42%/84.2% parameters and FLOPs compressions for language models, e.g., BERT.