【啟動AI Maker世代 】2024 MAI 開發者社群大會(5/16-17)
|

LoRA微調三步驟:以大語言模型MT5為例

   
作者:高煥堂

LoRA微調三步驟是:

  • Step-1:觀察&測試原模型(如MT5)的input和output格式。
  • Step-2:準備Training data,建立自己的Dataset類別,並拿原模型實際訓練。
  • Step-3:將LoRA外掛到MT5-Small,並進行協同訓練及測試。

在本篇文章中,將以MT5-small預訓練大模型為例,並以Python源碼(Source Code)來說明之。

簡介LoRA

當今大家非常關心於LLM大模型的巨大參數量,帶來的很高的訓練成本,因而限制了諸多下游任務的應用。換句話說,由於大語言模型(LLM)的參數量巨大,許多大公司都需要訓練數月,因此許多專家們提出了各種資源消耗較小的訓練方法,而其中最常用的就是:LoRA。

由於LoRA的模型參數非常輕量,對於下游任務而言,每一個下游任務只需要獨立維護自身的LoRA參數即可。因之,可以節省*.ckpt和*.onnx的儲存空間。同時,在訓練時可以凍結原模型(如MT5)的既有參數,只需要更新較輕量的LoRA參數即可。可大幅提升模型的訓練效能。

使用LoRA時,我們並不需要對原有大模型進行訓練及調整參數,只需要訓練橙色區域中的A和B兩部分的參數即可。

一般而言,LoRA 可以應用於神經網路中權重矩陣的任何子集,以減少可訓練參數的數量。然而,在 Transformer 模型中,為了簡單性和參數效率,LoRA 通常僅應用於注意力(Attention)區塊。

簡介MT5

每個Transformer模型都基於龐大的語料庫,進行很長時間的模型預訓練。這個預訓練階段,讓模型對任何上下文中的任何單詞都能掌握其涵義。T5的核心主張是:將所有 NLP 任務都轉化成 Text-to-Text (文本到文本)任務。如下圖:

本文為會員限定文章

立即加入會員! 全站文章無限看~

                               

已經是會員? 按此登入

只需不到短短一分鐘...

輸入您的信箱與ID註冊即可享有一切福利!

會員福利
1

免費電子報

2

會員搶先看

3

主題訂閱

4

好文收藏

高煥堂

Author: 高煥堂

擁有40多年軟硬體整合設計經驗,專精Android終端平台、AI、Docker容器、VR、AI(人工智慧)、IC軟硬整合技術與大數據應用。 近5年來,從事於AI普及化教育工作,目前擔任銘傳大學AI課程、長庚智慧醫療研究所AI課程授課老師。也擔任永春國小、東園國小、立志中學、君毅中學、永春高中等學校的AI師資培育工作。

Share This Post On
468 ad

Submit a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *