凌敏
在人工智能領域,模型微調已成為提升模型性能、使其適應特定任務的關鍵技術。本文將全面系統(tǒng)地介紹模型微調的各個方面,幫助讀者深入理解這一重要技術。
一、什么是模型微調
模型微調是指在已經訓練好的預訓練模型基礎上,進行進一步的調整和優(yōu)化,以使模型的輸出更加符合特定的應用需求。從本質上講,微調也是模型訓練的一種形式,其過程與訓練一個全新的模型有諸多相似之處。
誰來做微調
微調工作通常需要由具備豐富經驗的研發(fā)人員或算法工程師來承擔。這一過程不僅需要扎實的技術功底,還離不開兩個核心要素:代碼實現能力和充足的算力支持。值得一提的是,雖然目前有一些平臺提供了可視化界面來輔助微調,但這些界面的功能往往較為有限,只能起到一定的輔助作用。
什么樣的模型可以微調
并非所有模型都適合進行微調,以下兩類模型是比較常見的微調對象:
大部分開源模型,例如LLaMA、qwen、glm等。這些模型具有開放的架構和參數,為用戶進行個性化調整提供了便利。
API中開放微調接口的閉源模型或平臺,如文心、智譜AI等。不過,開源模型和閉源模型在微調時存在明顯差異:開源模型經過微調后可以生成新的模型;而閉源模型的微調過程則是在平臺的服務器上進行,用戶無法直接獲取模型的原始參數。
影響微調的核心因素
微調的效果受到多個因素的綜合影響,其中最為核心的包括:
基座模型的選擇:基座模型的性能和特性在很大程度上決定了微調的上限。
微調方式的選擇:不同的微調方法適用于不同的場景和需求。
數據質量:高質量的數據是確保微調成功的關鍵基礎。
二、模型微調工作流程
第一步:需求分析與目標設定
這一階段主要由項目組或產品經理主導,是微調工作的起點和關鍵。
什么情況下需要微調
在實際應用中,以下幾種情況通常需要考慮對模型進行微調:
項目性質要求:例如甲方明確提出需求、出于資本化考慮或為了完成政績工程等。此外,微調也是快速獲得符合特定領域需求的大模型的常見手段,如礦山大模型、領域大模型等。
溝通方式和語言風格有特殊要求:當基座模型通過prompt控制無法穩(wěn)定實現特定的溝通方式或語言風格時,如AI兒童講故事場景。
基座模型缺少垂直領域數據:在醫(yī)療、軍事等對專業(yè)知識要求較高的領域,由于互聯網公開數據可能無法滿足需求,導致基座模型無法完成專業(yè)任務。
基座模型無法完成特定任務:例如需要模型實現自動化操作電腦、手機等功能。
微調之前需要考慮的問題
在決定進行微調之前,需要全面評估以下幾個方面:
是否已經充分嘗試了prompt(包括few-shot、cot等方式)和RAG技術?
是否能夠保障微調所需的數據量級和數據質量?
由于基座模型會不斷推出新版本,其能力也會不斷提升,是否考慮過需要重新微調的情況?
核心工作步驟
1)明確業(yè)務需求和微調模型的目標:
仔細審視所選的基座模型在實際場景中的表現,判斷是否真的需要微調。
檢查是否已經嘗試了各種prompt方法。
考慮是否對任務進行了合理拆解。
確認是否已經完善了RAG系統(tǒng)。需要注意的是,在大多數情況下,可能并不需要進行微調。
2)確定需要解決的具體問題。
3)設定預期的性能提升目標。
4)明確特定的業(yè)務指標或限制條件。
第二步:數據收集與準備
數據收集與準備工作主要由產品經理主導,這是微調工作的基礎。
數據收集
根據具體的需求,從企業(yè)的數據庫、日志文件、用戶交互記錄等多種來源收集相關數據。需要強調的是,在真實場景中收集真實數據至關重要,這將直接影響到微調的效果。
數據清洗
對收集到的數據進行清洗,去除其中的噪聲、錯誤和不一致性,確保數據的質量。高質量的數據是模型能夠有效學習的前提。
數據標注
如果采用監(jiān)督學習方法進行微調,則需要對數據進行標注。這一步可能需要雇傭外部團隊或利用內部資源來完成。準確的標注數據對于模型的訓練和性能提升具有重要意義。
數據劃分
將數據集劃分為訓練集、驗證集和測試集,以便對模型的性能進行評估:
訓練集:占比70-80%,用于模型的實際訓練和學習。
驗證集:占比10-15%,用于評估模型在訓練過程中的表現,以便及時做出調整。
測試集:占比10-15%,在模型訓練完成后用于最終評估模型的性能。
模型微調的數據量(LoRA微調)
模型尺寸與微調數量級之間存在一定的大致關系,如下表所示:
數據質量標準
以智能客服系統(tǒng)的對話場景模型微調為例,數據質量標準可以包括以下多個維度:
第三步:模型選擇
模型選擇通常由算法主導,產品經理也應積極參與。
前提考慮
在選擇模型之前,同樣需要考慮以下幾個問題:
是否已經充分嘗試了prompt(包括few-shot、cot等方式)和RAG技術?
是否能夠保障微調所需的數據量級和數據質量?
由于基座模型會不斷更新,是否考慮過需要重新微調的情況?
選擇模型的原則和方法
開源和閉源的選擇:原則上優(yōu)先選擇開源模型,但最終決策需要根據具體的業(yè)務場景來確定。
基座模型公司的選擇:例如智譜AI的glm系列模型,其中glm4的最強模型不開源,而阿里系的qwen模型是一個值得推薦的選擇。
模型尺寸的選擇:需要從效果和成本兩個方面綜合考慮,在項目中,可能需要根據不同的場景選擇不同尺寸的模型。一般來說,可以先嘗試最大尺寸的模型以獲取最佳效果,然后再根據實際需求降到最小可行尺寸。
基于場景的模型選擇
在實際項目中,模型的選擇需要綜合考慮效果和成本。一個項目可能包含多個場景,因此可能需要選擇不同的模型。通常需要通過實驗和經驗來確定最佳的模型選擇和微調方式,例如:
對于一些復雜任務,可能需要采用33b+的模型進行全量微調。
而對于另一些任務,可能采用110+的模型并凍結部分參數進行微調更為合適。
第四步:模型微調
模型微調由算法工程師實施,是整個工作流程的核心環(huán)節(jié)。
模型微調方式(本質上是SFT)
1)全模型微調:對整個模型的所有參數進行調整。
2)輕量化微調(Parameter-EfficientFine-tuning,PEFT):
低秩適應微調(Low-RankAdaptation,LoRA):這是最常用的微調技術之一。
prompttuning。
P-Tuning。
Prefix-Tuning。
3)凍結部分參數微調:只對模型的部分參數進行調整,其余參數保持凍結。
4)漸進微調:逐步調整模型的參數,以提高微調的效果和穩(wěn)定性。
5)多任務微調:同時對多個任務進行微調,以提高模型的泛化能力。
LoRA微調原理
LoRA微調的核心原理是只選擇原始模型的部分參數作為目標微調參數(通常r取4、8、16、32等),不更改模型的原始參數,而是在原始參數的基礎上增加一個偏移量,從而得到一套新的參數。這種方法具有高效、節(jié)省算力等優(yōu)點,因此在實際應用中最為常用。
QLoRA微調
QLoRA微調的主要目的是解決顯存占用量過大的問題。顯存占用量的計算方法如下:參數量×4×4倍(裝進來+轉起來)/(1024×1024×1024)=xG顯存。以7B模型為例,其參數量為7000000000,計算可得顯存占用約為11200000000字節(jié),即約104G,這需要5張NVIDIA4090顯卡(每張24G)。QLoRA通過將4個字節(jié)的浮點數改成1個字節(jié)的整數,直接將顯存占用降低到原來的四分之一,大大提高了模型微調的可行性。
第五步:模型評估
模型評估由產品經理主導,是確保模型滿足預期需求的關鍵環(huán)節(jié)。
評估手段:支持率
在特定場景下評估微調后的模型能力,支持率是一個重要的指標。通用領域的評估往往沒有實際意義。具體評估方法如下:
1)設計問答任務,使用微調前和微調后的模型分別回答問題,然后由人工在不知道回答來源的情況下進行偏好選擇。
2)評估標準:
如果微調后的模型支持率低于50%,說明這次微調不僅沒有提升模型能力,反而破壞了原有模型的能力。
如果支持率在50%左右,說明微調幾乎沒有取得進步。
如果支持率在50%-70%之間,微調的成果不夠理想。
如果支持率在70%-80%之間,說明這次微調是成功的。
如果支持率超過80%,表明在大多數場景下,這次微調都取得了顯著的提升。
第六步:模型部署
一旦模型通過評估,就可以由研發(fā)人員將其部署到生產環(huán)境中,使其能夠為實際業(yè)務提供服務。
第七步:監(jiān)控與維護
模型部署到生產環(huán)境后,需要由產品經理負責進行監(jiān)控與維護:
性能監(jiān)控:定期檢查模型的性能,確保其持續(xù)滿足業(yè)務需求。
更新與再訓練:隨著新數據的獲取或業(yè)務環(huán)境的變化,可能需要對模型進行再次訓練或微調,以適應新的情況。
第八步:反饋循環(huán)
產品經理需要設計反饋和監(jiān)督機制,建立一個有效的反饋循環(huán):收集模型使用過程中的反饋信息,用于指導未來的改進和優(yōu)化工作,使模型能夠不斷進化和完善。
三、數據工程
需要明確的是,微調不是一次性工程,持續(xù)的數據收集和體系化的數據處理比微調技術本身更為重要。
如何收集偏好數據(相當于人工標注)
點贊點踩:通過用戶對模型輸出的點贊或點踩行為來收集偏好數據。
多選項選擇:例如一次性給用戶展示4張圖,讓用戶選擇偏好的選項;或者讓模型生成兩個答案,讓用戶進行選擇。
客服工作臺輔助:在客服工作臺中,模型生成4個輔助回復,其中2個來自原模型,2個來自微調后的模型,讓客服選擇一個最合適的回復,從而收集偏好數據。
產品功能設計
數據收集能力:在產品功能設計上,一定要具備數據收集能力,以便及時獲取用戶反饋和偏好數據。
定向數據收集:針對特定場景,在產品功能上設計定向數據收集的機制,提高數據的針對性和有效性。
設計好數據管理平臺
利用LLM能力:讓數據管理平臺具備一定的智能,提高數據管理的效率和質量。
參考案例:如百度智能云的數據管理和數據標注平臺。
數據管理平臺產品框架
數據來源管理:管理自有數據、公開數據、用戶生成數據、專家撰寫的數據、模型合成數據、眾包收集數據等多種數據來源,并實現在線系統(tǒng)數據的直接導入和數據平臺與在線系統(tǒng)的實時對接。
體系化標注:包括標簽定義、標簽層次構建、打標任務管理和打標任務分層等,支持用戶打標、服務人員打標、專家打標、AI打標、交叉打標、交叉復檢和專家抽檢等多種標注方式。
數據去重與增強:通過prompt的相似度計算、數據來源整體質量分級等方法進行數據去重,同時采用同義詞替換、詞序打亂、反向翻譯、數據混合等技術進行數據增強。例如,將200條問答數據通過模型生成相同的提問,可擴展為400條數據;將數據翻譯成其他語言再翻譯回原語言,可實現表達方法的多樣性。
數據打包:實現訓練集、驗證集和測試集的自動化劃分,建立數據集與模型版本、模型評估結果的關聯,并按標簽評估數據的可用性和復用性。
模型評估:支持偏好打標、專家打分、用戶偏好收集等評估方式,并按標簽產出評估結果,實現評估與打標數據的復用。
多利用能力強大的模型輔助工作:例如利用強大的模型進行數據過濾、自動打標、交叉復檢、prompt的相似度計算、response質量對比、數據增強和模型評估等工作,提高數據工程的效率和質量。
四、后記
原則
如果沒有高質量的數據,微調實操的意義不大。數據質量是決定微調效果的關鍵因素,即使采用最先進的微調技術,若沒有高質量的數據支撐,也難以取得理想的效果。
不強調數據量的大小,但是數據質量一定要高。在數據工程中,應更加注重數據的質量而非數量,高質量的數據能夠使模型更加有效地學習到所需的知識和模式。
通過以上對模型微調的全面介紹,相信讀者已經對模型微調有了深入的理解。在實際應用中,需要根據具體的業(yè)務需求和場景,合理選擇微調方法和數據處理方式,以實現模型性能的有效提升。
《重回02死亡倒計時》_全集免費觀看完整版_中國大陸短劇_酷客影院
《重回02死亡倒計時》短劇國語高清全集免費在線觀看_農民影視重回02死亡倒計時未知重回中國大陸年代穿越想看更多的重回02死亡倒計時
正在播放重回02死亡倒計時|高清爽文短劇在線觀看-影子TV
《重回02死亡倒計時》短劇普通話高清在線觀看_殤情影院重回02死亡倒計時未知未知中國大陸短劇暫無簡介
《重回02死亡倒計時》免費在線觀看-短劇 星辰影院
《重回02死亡倒計時》短劇全集高清在線免費觀看-櫻花動漫重回02死亡倒計時
來源:紅網
作者:鐘辛修
編輯:徭白凝
本文為紅辣椒評論 原創(chuàng)文章,僅系作者個人觀點,不代表紅網立場。轉載請附原文出處鏈接和本聲明。