AIxiv專欄是本站發布學術、技術內容的欄位。過去數年,本站AIxiv專欄接收通報了2,000多篇內容,涵蓋全球各大專院校與企業的頂尖實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或聯絡報道。投稿信箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com
本文介紹了香港科技大學(廣州)#本文介紹了香港科技大學(廣州) 的一篇關於大模型高效微調(LLM PEFT Fine-tuning)的文章“Parameter-Efficient Fine-Tuning with Discrete Fourier Transform”,
本文被ICML 2024 接收,程式碼已開源。
-
#論文網址:https://arxiv.org/abs/2405.03003
專案網址:https://github.com/Chaos96/fourierft背景
大型基座模型在自然語言處理(NLP)和電腦視覺(CV)領域都獲得了矚目的成就。微調(Finetuning)大型基座模型,使其更適應特殊的下游任務,成為了熱門研究主題。然而,在模型越來越大,下游任務越來越多元的今天,微調整個模型帶來的運算、儲存消耗已大到不再能被接受。 LoRA 採用低秩擬合微調增量的方案,成功降低了大量的此類消耗,但每個適應器(adapter)的大小仍然是不可忽視的。這激發了本文的核心問題:比起 LoRA,如何進一步大幅減少可訓練參數?此外,一個有趣的附加問題是能否採用更少的參數量得到高秩增量矩陣
方法
#傅立葉基底在各類別資料壓縮應用中廣泛使用,例如一維向量訊號和二維影像的壓縮。在這些應用中,稠密的空域訊號透過傅立葉變換被轉換為稀疏的頻域訊號。基於此原理,作者推測模型權重的增量也可以被視為一種空域訊號,其對應的頻域訊號可以透過稀疏表示來實現。
在這假設的基礎上,作者提出了一種新的方法,用於在頻域中學習增量權重訊號。具體來說,該方法透過隨機位置的稀疏頻域訊號來表示空域權重增量。在載入預訓練模型時,首先隨機選擇 n 個點作為有效的頻域訊號,然後將這些訊號拼接成一個一維向量。在前向傳播過程中,這個一維向量被用來透過傅立葉變換恢復空域矩陣;在反向傳播過程中,由於傅立葉變換的可導性,可以直接對此可學習的向量進行更新。這種方法不僅有效減少了模型微調時所需的參數數量,同時確保了微調效能。透過這種方式,作者不僅實現了對大規模基礎模型的高效微調,還展示了傅立葉變換在機器學習領域中的潛在應用價值。 得益於傅立葉變換基底的高資訊量,只需很小的 n 值即可達到與 LoRA 相當甚至超過 LoRA 的表現。一般來說,傅立葉微調的可訓練參數僅為 LoRA 的千分之一到十分之一。 實驗
#1. 自然語言理解
###作者在自然語言理解的GLUE 基準測試上對傅立葉微調方法進行了評估。基準對比方法包括全量微調(FF,Full Finetuning)、Bitfit、適應器微調(Adapter Tuning)、LoRA、DyLoRA 和 AdaLoRA。下表展示了各種方法在 GLUE 各個任務上的表現及其所需的訓練參數量。結果表明,傅立葉微調以最少的參數量達到了甚至超越了其他微調方法的性能。 ############
大模型的自然语言生成是目前模型微调的重要应用领域。作者在 LLaMA 系列模型、MT-Bench 任务和 Vicuna 任务上评估了傅立叶微调的性能。结果显示,傅立叶微调以极低的训练参数量达到了与 LoRA 相似的效果,进一步验证了傅里叶微调方法的通用性和有效性。
作者在 Vision Transformer 上测试了傅里叶微调的性能,涵盖了 8 个常见的图像分类数据集。实验结果表明,虽然在图像分类任务中傅立叶微调相较LoRA的压缩率提升并不比自然语言任务中显著,但其仍然以远小于 LoRA 的参数量超越了 LoRA 的效果。这进一步展示了傅立叶微调在不同应用领域中的有效性和优势。
在 GLUE 基准的 RTE 数据集上,FourierFT 可以实现明显高于 LoRA (通常为 4 或 8) 的增量的秩。
微调过程中,FourierFT 可以实现比 LoRA 更少的 GPU 消耗。下图为采用单张 4090 显卡在 RoBERTa-Large 模型上的巅峰内存消耗。
作者介绍了一种名为傅立叶微调的高效微调方法,通过利用傅里叶变换来减少大基础模型微调时的可训练参数数量。该方法通过学习少量的傅里叶谱系数来表示权重变化,显著降低了存储和计算需求。实验结果显示,傅立叶微调在自然语言理解、自然语言生成、指令调优和图像分类等任务上表现优异,与现有的低秩适应方法(如 LoRA)相比,傅立叶微调在保持或超过 LoRA 性能的同时,所需的可训练参数大幅减少。以上是ICML 2024 | 脫離LoRA架構,訓練參數大幅減少,新型傅立葉微調來了的詳細內容。更多資訊請關注PHP中文網其他相關文章!