2024年7月7日 星期日

Google開源Gemma2 27B的重點分享

 


大家好,我是Jerry老師,今天又來分享一個最新的Google模型Gemma2 27B,這個是目前地表上離線版最好的模型,同時也可以商用,不過現在語言模型生命週期很短,很期待下一代的模型的開放。

 

Gemma2 ㄧ樣是decoder-only transformer 架構,而Context Length相較前一代提升到8192 tokens,並且採用Rotary Position Embeddings (RoPE)GeGLU,以及更深的網路。

 

其中有幾個重點是與Gemma1的不同包含如下:

·      Local Sliding Window and Global Attention

o   在每一層計算中採用加入Global+sliding window的做法,可以降低運算資源

o   這個技術來自於Longformer,有興趣的讀者可以讀這篇

·      Logit soft-capping

o   基於Gemini 1.5的概念,限制每一個attention layerfinal layer的邏輯數,加快輸出效率

o   同時取消採用傳統Flash Attention的做法

·      Post-norm and pre-norm with RMSNorm

o   這個跟上一代一樣的用法,但是做了一些正規化的動作

·      Grouped-Query Attention

o   這個也是上一代的用法,在論文中指出用這個方法的模型再縮小後,困惑度影響較小。

 

訓練資料的包含如下:

·      27B採用13 trillion Tokens,包含網路資料、論文等

·      9B則採用8 trillion Tokens

·      Tokenizer採用SentencePiece  byte-level encodings

·      同時自動去除個人資料、敏感資料

·      初始化訓練的機器是27B採用6144TPUv59B採用4096TPUv4

o   這部分跟之前Jerry老師分享的差不多,1B的模型差不多要256~512GPU

·      訓練方法採用ZeRO-3,來進行分散式訓練

 

通常做完基礎模型,還會需要進行指定任務的微調,這邊Google也做了以下的工作

·      Supervised fine-tuning (SFT)

o   把準任務給LLM開始做微調

·      Reinforcement Learning from Human Feedback (RLHF)

o   在微調後,透過RLHF提升準確率

·      Model merging

o   合成其他專業的模型超參數

·      Data filtering

o   一樣再度過濾個人資訊、敏感資訊

·      Formatting

o   將輸入與輸出的格式標準化

 

其中有趣的地方是,論文中有提到縮小模型後對於原本模型的影響,譬如說如果困惑度是60(初始化訓練),則縮小後的模型,會提高10%。但如果模型本身訓練的時候採用GQA,反而模型變化就不大,且推論速度可以更快。

 

接下來是大家在意的評測狀況



 

跟預期的一樣,參數較大的模型,還是勝出較小的模型,不過整體分數已經沒有差太多,我們可以從上面表格看到,70B模型在特定題目上,如MMLU只差5分左右。再來我們看到 Gemma2特別跟大陸的Qwen1.5(通義千問)去比較,可以發現分數比他好一些,但不同的是參數大小是Gemma2較小。我們可以看到目前整體來說,有機會模型參數小,分數能維持水準的模型並不多,而Gemma 2是其中一個。

 



 

從透過Chatbot Arena 的方式,進入Elo rating system評分後,唯一通過競賽的落地模型,只剩下Yi系列 Gemma系列,相當期待後續Gemma進入到70B之後的表現。

 

 

不過Gemma2的原生版本建議執行在TPUH100以後的機器,所以各家企業的GPU要提高到另一個層次才行了,還好有Colab,可以先看看有沒有機會抽到比較好的顯卡,至少要準備70GBVRAM

 

 

請到這裡享用程式碼 

論文中還有很多值得閱讀的內容,也留給大家品味一下

沒有留言:

張貼留言