LoRA (低秩自適應- arxiv.org/abs/2106.09685) 是一種經濟高效微調大型語言模型(LLM) 的流行技術。但2024 年湧現出大量新的參數高效微調技術,各種LoRA 替代方案層出不窮:SVF、SVFT、MiLoRA、PiSSA、LoRA-XS ?…… 其中大多數都基於我非常喜歡的一種矩陣技術:奇異值分解(SVD)。讓我們深入探討。
LoRA
LoRA 的最初見解是,微調模型的所有權重是過度操作。相反,LoRA 凍結模型,只訓練一對小的低秩“適配器”矩陣。請參見下面的插圖(其中W 是Transformer LLM 中任何權重矩陣)。
由於需要計算和存儲的梯度要少得多,因此可以節省內存和計算週期。例如,這是一個使用LoRA 微調以模擬海盜說話方式的Gemma 8B 模型:只有2200 萬個參數可訓練,85 億個參數保持凍結狀態。
LoRA 非常流行。它甚至已作為單行API 進入Keras 等主流ML 框架:
<code>gemma.backbone.enable_lora(rank=8)</code>
但是LoRA 是最好的嗎?研究人員一直在努力改進該公式。實際上,選擇較小的“適配器”矩陣的方法有很多種。由於它們大多數巧妙地利用了矩陣的奇異值分解(SVD),讓我們暫停一下,進行一些數學運算。
SVD:簡單的數學
SVD 是理解矩陣結構的一個好工具。該技術將矩陣分解為三個:W = USV T ,其中U 和V 是正交的(即基變換),S 是排序的奇異值的對角矩陣。這種分解總是存在的。
在“教科書式”SVD 中,U 和V 是方陣,而S 是一個矩形矩陣,對角線上是奇異值,後面是零。實際上,您可以使用方陣S 和矩形U 或V——參見圖片——截斷的部分只是乘以零。這種“經濟型”SVD 是常用庫(例如numpy.linalg.svd)中使用的。
那麼我們如何利用這一點更有效地選擇要訓練的權重呢?讓我們快速瀏覽五種最近基於SVD 的低秩微調技術,並附帶註釋說明。
SVF
LoRA 最簡單的替代方法是對模型的權重矩陣使用SVD,然後直接微調奇異值。奇怪的是,這是最新的技術,稱為SVF,發表在Transformers² 論文中(arxiv.org/abs/2501.06252v2)。
SVF 在參數方面比LoRA 經濟得多。此外,它使微調模型具有可組合性。有關這方面的更多信息,請參見此處我的Transformers² 說明,但是組合兩個SVF 微調模型只是一個加法運算:
SVFT
如果您需要更多可訓練參數,SVFT 論文(arxiv.org/abs/2405.19597) 探討了多種方法,首先是在對角線上添加更多可訓練權重。
它還評估了其他多種替代方案,例如將它們隨機分散到“M”矩陣中。
更重要的是,SVFT 論文證實,擁有比對角線更多的可訓練值是有用的。請參見下面的微調結果。
接下來是幾種將奇異值分成兩組“大”和“小”的技術。但在我們繼續之前,讓我們暫停一下,進行更多SVD 數學運算。
更多SVD 數學
SVD 通常被視為分解成三個矩陣W=USV T ,但它也可以被認為是許多秩1 矩陣的加權和,由奇異值加權:
如果您想證明這一點,請一方面使用USV T形式和矩陣乘法的公式來表達單個矩陣元素W jk ,另一方面使用Σ s i u i v i T形式,使用S 是對角線的事實進行簡化,並註意它是一樣的。
在此表示中,很容易看出您可以將總和分成兩部分。並且由於您可以始終對奇異值進行排序,因此您可以將其分成“大”和“小”奇異值。
回到三矩陣形式W=USV T ,這就是分割的樣子:
基於此公式,兩篇論文探討瞭如果您只調整大的奇異值或只調整小的奇異值會發生什麼,即PiSSA 和MiLoRA。
PiSSA
PiSSA(主奇異值和奇異向量自適應,arxiv.org/abs/2404.02948)聲稱您應該只調整大的主值。機制如下所示:
摘自論文:“PiSSA 旨在通過調整主要奇異分量來近似完全微調,這些分量被認為捕捉了權重矩陣的本質。相反,MiLoRA 旨在適應新任務,同時最大限度地保留基礎模型的知識。”
PiSSA 論文還有一個有趣的發現:完全微調容易過度擬合。使用低秩微調技術,您可能會在絕對值上獲得更好的結果。
MiLoRA
另一方面,MiLoRA(次要奇異分量LoRA arxiv.org/abs/2406.09044)聲稱您應該只調整小的主值。它使用與PiSSA 類似的機制:
令人驚訝的是,MiLoRA 似乎佔據了上風,至少在微調數學數據集時是這樣,這些數據集可能與原始預訓練相當一致。可以說,PiSSA 應該更適合將LLM 的行為從其預訓練中進一步彎曲。
LoRA-XS
最後,我想提到LoRA-XS (arxiv.org/abs/2405.17604)。與PiSSA 非常相似,但機制略有不同。它還顯示出比LoRA 少得多的參數也能獲得良好的結果。
該論文提供了數學解釋,說明在兩種情況下這種設置是“理想的”:
- 從SVD 中截斷底部的主要值仍然可以很好地近似權重矩陣
- 微調數據分佈接近預訓練數據分佈
在我看來,兩者都值得懷疑,所以我不會詳細介紹數學。一些結果:
根本假設似乎是奇異值分為“大”和“小”兩種,但事實是這樣嗎?我在Colab 上快速檢查了Gemma2 9B。底線:99% 的奇異值在0.1 – 1.1 範圍內。我不確定將它們分成“大”和“小”是否有意義。
結論
還有許多其他參數高效的微調技術。值得一提的是:
- DoRA (arxiv.org/abs/2402.09353),它將權重分成大小和方向,然後調整這些權重。
- AdaLoRA (arxiv.org/abs/2303.10512),它具有復雜的機制,可以為給定的可訓練權重預算找到最佳調整秩。
我的結論:為了超越具有10 倍參數的LoRA 標準,我喜歡Transformers² 的SVF 的簡單性。如果您需要更多可訓練權重,SVFT 是一種簡單的擴展。兩者都使用所有奇異值(全秩,無奇異值修剪),並且仍然很便宜?。祝您微調愉快!
注意:所有插圖均由作者創作或從arxiv.org 論文中提取,用於評論和討論。
以上是您是否仍在使用Lora來微調LLM?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

高效保存ChatGPT對話記錄的多種方法 您是否曾想過保存ChatGPT生成的對話記錄?本文將詳細介紹多種保存方法,包括官方功能、Chrome擴展程序和截圖等,助您充分利用ChatGPT對話記錄。 了解各種方法的特點和步驟,選擇最適合您的方式。 [OpenAI最新發布的AI代理“OpenAI Operator”介紹](此處應插入OpenAI Operator的鏈接) 目錄 使用ChatGPT導出功能保存對話記錄 官方導出功能的使用步驟 使用Chrome擴展程序保存ChatGPT日誌 ChatGP

现代社会节奏紧凑,高效的日程管理至关重要。工作、生活、学习等任务交织在一起,优先级排序和日程安排常常让人头疼不已。 因此,利用AI技术的智能日程管理方法备受关注。特别是利用ChatGPT强大的自然语言处理能力,可以自动化繁琐的日程安排和任务管理,显著提高生产力。 本文将深入讲解如何利用ChatGPT进行日程管理。我们将结合具体的案例和步骤,展示AI如何提升日常生活和工作效率。 此外,我们还会讨论使用ChatGPT时需要注意的事项,确保安全有效地利用这项技术。 立即体验ChatGPT,让您的日程

我們將解釋如何將Google表和Chatgpt聯繫起來,以提高業務效率。在本文中,我們將詳細解釋如何使用易於使用的“床單和文檔的GPT”附加組件。無需編程知識。 通過CHATGPT和電子表格集成提高業務效率 本文將重點介紹如何使用附加組件將Chatgpt與電子表格連接。附加組件使您可以輕鬆地將ChatGpt功能集成到電子表格中。 gpt for shee

專家們預測AI革命的未來幾年,專家們預測專家們都在強調了總體趨勢和模式。例如,對數據的需求很大,我們將在後面討論。此外,對能量的需求是D

Chatgpt不僅是文本生成工具,而且是一個真正的合作夥伴,可顯著提高作家的創造力。通過在整個寫作過程中使用chatgpt,例如初始手稿創建,構思想法和風格變化,您可以同時節省時間並提高質量。本文將詳細說明在每個階段使用Chatgpt的特定方法,以及最大化生產力和創造力的技巧。此外,我們將研究將Chatgpt與語法檢查工具和SEO優化工具相結合的協同作用。通過與AI的合作,作家可以通過免費想法創造獨創性

使用chatgpt的數據可視化:從圖創建到數據分析 數據可視化以易於理解的方式傳達複雜信息,在現代社會中至關重要。近年來,由於AI技術的進步,使用Chatgpt的圖形創建引起了人們的關注。在本文中,我們將解釋如何以易於理解的方式使用Chatgpt創建圖形,甚至對於初學者。我們將介紹免費版本和付費版本(Chatgpt Plus),特定創建步驟以及如何顯示日語標籤以及實際示例之間的差異。 使用chatgpt創建圖形:從基礎到高級使用 chatg

通常,我們知道AI很大,而且越來越大。快速,越來越快。 但是,具體來說,並不是每個人都熟悉行業中一些最新的硬件和軟件方法,以及它們如何促進更好的結果。人民

ChatGPT對話記錄管理指南:高效整理,充分利用你的知識寶庫! ChatGPT對話記錄是創意和知識的源泉,但不斷增長的記錄如何有效管理呢? 查找重要信息耗時費力?別擔心!本文將詳細講解如何有效“歸檔”(保存和管理)你的ChatGPT對話記錄。我們將涵蓋官方歸檔功能、數據導出、共享鏈接以及數據利用和注意事項。 目錄 ChatGPT的“歸檔”功能詳解 ChatGPT歸檔功能使用方法 ChatGPT歸檔記錄的保存位置和查看方法 ChatGPT歸檔記錄的取消和刪除方法 取消歸檔 刪除歸檔 總結 Ch


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Atom編輯器mac版下載
最受歡迎的的開源編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。