【極速版 -- 大模型入門到進階】LORA:大模型輕量級微調

文章目錄


論文指路:LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS

🌊 有沒有低成本的方法微調大模型?

  • 2021年微軟提出 LORA :LOW-RANK ADAPTATION 低秩適配
    • 【什么是秩?】一個矩陣的秩是指矩陣中線性獨立的行或列的最大數目;也就是說 一個矩陣的秩越大,它包含的有效信息就越多

🌊 LoRA 的核心思想

  • LoRA通過優化在適應過程中 FC 層權重變化 ( Δ w ∈ R m × n \Delta w \in \mathbb{R}^{m\times n} ΔwRm×n) 的秩分解矩陣 ( A ∈ R m × r × B ∈ R r × n A \in \mathbb{R}^{m\times r} \times B\in \mathbb{R}^{r\times n} ARm×r×BRr×n),來間接調整神經網絡中部分層的權重 ( w w w) 。不修改預先訓練好的權重,而是通過引入一個低秩的矩陣來實現對這些層的適應調整
    • r < < min ? ( m , n ) r << \min(m,n) r<<min(m,n)
  • 用更小的參數空間存儲 模型參數變化量 Δ w \Delta w Δw
    • Δ w \Delta w Δw: 模型參數變化量,也就是對原參數 w w w 變化 Δ w \Delta w Δw 可以適配新任務。LoRA 用 A 和 B 計算獲得模型參數變化量 Δ w \Delta w Δw,疊加到原參數 w w w

🌊 LoRA 的初始化和 r r r 的值設定

  • 用隨機高斯分布初始化 A A A ,用 0 矩陣初始化 B B B, 保證訓練的開始此旁路矩陣依然是 0 矩陣
  • 對于一般的任務, r = 1 , 2 , 4 , . . . r = 1,2,4, ... r=1,2,4,... 就足夠了。而一些領域差距比較大的任務可能需要更大的 r r r

🌊 LoRA 實戰:LoraConfig參數詳解

目前 LORA 已經被 HuggingFace 集成在了 PEFT(Parameter-Efficient Fine-Tuning) 代碼庫里
所以,使用也非常簡單

from peft import get_peft_config, get_peft_model, LoraConfig, TaskType# preModel = ....from_pretrained(".. bert-base-uncased ..")  # 加載你的預訓練模型peft_config = LoraConfig(r=4,  # LoRA 維數lora_alpha=8,  # ΔW 按 α / r 縮放target_modules=["", "", ...],  # 對哪些模塊進行微調lora_dropout=0.1  # 默認值為 0
)
model = get_peft_model(preModel, peft_config)  # 預訓練模型 -> 加好了 LoRA 之后的模型

參考資料: 【LoRA&CN全解析】, 【知乎高贊-大模型輕量級微調】

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/73716.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/73716.shtml
英文地址,請注明出處:http://en.pswp.cn/web/73716.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【論文分析】無人機軌跡規劃,Fast-Planner:實時避障+全局最優的路徑引導優化算法

這篇論文《Robust Real-time UAV Replanning Using Guided Gradient-based Optimization and Topological Paths》由香港科技大學提出&#xff0c;主要針對無人機&#xff08;UAV&#xff09;在復雜環境中的實時軌跡重新規劃問題&#xff0c;提出了一種結合梯度優化和拓撲路徑搜…

禪道品牌全面戰略升級:開創項目管理國產化替代新格局

2025年&#xff0c;禪道軟件完成企業品牌戰略深度升級。此次升級&#xff0c;從產品力、服務力到生態圈構建等方面進行了全面優化&#xff0c;以更智慧的解決方案、更開放的生態布局&#xff0c;更安全的國產化解決方案&#xff0c;助力企業實現從“工具應用”到“價值創造”的…

PyTorch處理數據--Dataset和DataLoader

在 PyTorch 中&#xff0c;Dataset 和 DataLoader 是處理數據的核心工具。它們的作用是將數據高效地加載到模型中&#xff0c;支持批量處理、多線程加速和數據增強等功能。 一、Dataset&#xff1a;數據集的抽象? Dataset 是一個抽象類&#xff0c;用于表示數據集的接口。你…

Android 藍牙/Wi-Fi通信協議之:經典藍牙(BT 2.1/3.0+)介紹

在 Android 開發中&#xff0c;經典藍牙&#xff08;BT 2.1/3.0&#xff09;支持多種協議&#xff0c;其中 RFCOMM/SPP&#xff08;串口通信&#xff09;、A2DP&#xff08;音頻流傳輸&#xff09;和 HFP&#xff08;免提通話&#xff09;是最常用的。以下是它們在 Android 中的…

R002-云計算

1 概念 英文名&#xff1a;Cloud Computing 核心:云計算的核心概念就是以互聯網為中心&#xff0c;在網站上提供快速且安全的云計算服務與數據存儲&#xff0c;讓每一個使用互聯網的人都可以使用網絡上的龐大計算資源與數據中心 2.分類 基礎設施即服務&#xff08;IaaS)它向…

降維(DimensionalityReduction)基礎知識2

文章目錄 五、基于局部結構保持的降維1、Laplacian Eigenmaps&#xff08;拉普拉斯特征映射&#xff09;&#xff08;1&#xff09;鄰接矩陣&#xff08;2&#xff09;圖論基礎&#xff08;3&#xff09;Laplace算子1、散度&#xff08;Divergence&#xff09;2、拉普拉斯算子3…

物聯網中的物模型是什么意思,在嵌入式軟件開發中如何體現?

1. 物模型的概念 物模型&#xff08;Thing Model&#xff09;是物聯網中對物理設備或虛擬設備的抽象描述&#xff0c;定義了設備的屬性、事件和服務。它是設備與云平臺或其他設備之間交互的基礎&#xff0c;用于統一描述設備的能力和行為。 1.1 物模型的組成 屬性&#xff0…

【藍橋杯】單片機設計與開發,PWM

一、PWM概述 用來輸出特定的模擬電壓。 二、PWM的輸出 三、例程一&#xff1a;單片機P34引腳輸出1kHZ的頻率 void Timer0Init(void);unsigned char PWMtt 0;void main(void) {P20XA0;P00X00;P20X80;P00XFF;Timer0Init();EA1;ET01;ET11;while(1);}void Timer0Init(void) //1…

C#中,什么是委托,什么是事件及它們之間的關系

1. 委托&#xff08;Delegate&#xff09; 定義與作用 ?委托?是類型安全的函數指針&#xff0c;用于封裝方法&#xff0c;支持多播&#xff08;鏈式調用&#xff09;。?核心能力?&#xff1a;將方法作為參數傳遞或異步回調。 使用場景 回調機制&#xff08;如異步操作完…

從替代到超越,禪道國產化替代解決方案2.0發布!

3月22日&#xff0c;由禪道攜手上海惠艾信息科技、麥哲思科技共同舉辦的禪道?中國行北京站活動圓滿落下帷幕。 除深入探究AI賦能研發項目管理外&#xff0c;禪道在活動現場正式發布了《禪道國產化替代解決方案2.0》&#xff0c;助力企業全方位構建自主可控的研發項目管理新體…

【VirtualBox 安裝 Ubuntu 22.04】

網上教程良莠不齊&#xff0c;有一個CSDN的教程雖然很全面&#xff0c;但是截圖冗余&#xff0c;看蒙了給我&#xff0c;這里記錄一個整潔的教程鏈接。以備后患。 下載安裝全流程 UP還在記錄生活&#xff0c;看的我好羨慕&#xff0c;嗚嗚。 [VirtualBox網絡配置超全詳解]&am…

2025美國網絡專線國內服務商推薦

在海外業務競爭加劇的背景下&#xff0c;穩定高效的美國網絡專線已成為外貿企業、跨國電商及跨國企業的剛需。面對復雜的國際網絡環境和嚴苛的業務要求&#xff0c;國內服務商Ogcloud憑借其創新的SD-WAN技術架構與全球化網絡布局&#xff0c;正成為企業拓展北美市場的優選合作伙…

2.2.2 引入配置文件和定義配置類

本實戰通過三種方式實現Spring Boot中的配置加載與管理。首先&#xff0c;通過PropertySource加載自定義配置文件&#xff0c;結合ConfigurationProperties注解將配置文件中的屬性綁定到Java類中&#xff0c;實現配置的靈活管理。其次&#xff0c;利用ImportResource加載XML配置…

Django:構建高性能Web應用

引言&#xff1a;為何選擇Django&#xff1f; 在當今快速發展的互聯網時代&#xff0c;Web應用的開發效率與可維護性成為開發者關注的核心。Django作為一款基于Python的高級Web框架&#xff0c;以其"開箱即用"的特性、強大的ORM系統、優雅的URL路由設計&#xff0c;…

【銀河麒麟高級服務器操作系統 】虛擬機運行數據庫存儲異常現象分析及處理全流程

更多銀河麒麟操作系統產品及技術討論&#xff0c;歡迎加入銀河麒麟操作系統官方論壇 https://forum.kylinos.cn 了解更多銀河麒麟操作系統全新產品&#xff0c;請點擊訪問 麒麟軟件產品專區&#xff1a;https://product.kylinos.cn 開發者專區&#xff1a;https://developer…

《2核2G阿里云神操作!Ubuntu+Ollama低成本部署Deepseek模型實戰》

簡介&#xff1a; “本文為AI開發者揭秘如何在阿里云2核2G輕量級ECS服務器上&#xff0c;通過Ubuntu系統與Ollama框架實現Deepseek模型的高效部署。無需昂貴硬件&#xff0c;手把手教程涵蓋環境配置、資源優化及避坑指南&#xff0c;助力初學者用極低成本在云端跑通行業領先的大…

【bug解決】NameError: name ‘fused_act_ext‘ is not defined

問題 使用basicsr庫做超分的時候發現NameError: name fused_act_ext is not defined這個問題&#xff0c;一直不斷重復的使用pip uninstall basicsr 和 BASICSR_EXTTrue pip install basicsr 發現一直沒有執行編譯過程&#xff0c;導致一直推理失敗 原因 之前已經安裝過basi…

Anaconda開始菜單里添加JupyterLab快捷方式

Anaconda開始菜單里添加JupyterLab快捷方式 在 Windows 系統安裝 Anaconda 后&#xff0c;發現開始菜單只有 Jupyter Notebook&#xff0c;卻找不到Jupyter Lab入口。其實這是因為最新版 Anaconda 默認未預裝 Lab 組件&#xff0c;本篇介紹一種添加 Jupyter Lab入口到開始菜單…

【Qt】modbus客戶端筆記

Qt 中基于 Modbus 協議的通用客戶端學習筆記 一、概述 本客戶端利用 Qt 的 QModbusTcpClient 實現與 Modbus 服務器的通信&#xff0c;具備連接、讀寫寄存器、心跳檢測、自動重連等功能&#xff0c;旨在提供一個可靠且易用的 Modbus 客戶端框架&#xff0c;方便在不同項目中集…

解決Vmware 運行虛擬機Ubuntu22.04卡頓、終端打字延遲問題

親測可用 打開虛擬機設置&#xff0c;關閉加速3D圖形 &#xff08;應該是顯卡驅動的問題&#xff0c;不知道那個版本的驅動不會出現這個問題&#xff0c;所以干脆把加速關了&#xff09;