LLM 與LLaMA 3.2 介紹
LLM 與LLaMA 3.2 介紹¶
語言模型,大框架是大家常聽到的神經網絡(Neural Network),像我們打開Chatgpt
詢問"去日本要注意甚麼",一陣子後,得到回答"帶著開心的心",機器也遵循著接收訊息,處理訊息,回復訊息的流程處理訊息,很類似人類的反應。
接收訊息-> Input layer,我們把資料輸入
處理訊息->Hidden layer 運算可能性
回復訊息-> Output Layer 把答案回傳
而transformer ,是基於上述NN的優化,現在許多的語言模型都是基於transformer架構再優化。
一樣可以拆解成簡化成幾大功能
接收訊息: Embedding(Input/Output),Positional Encoding
處理訊息: Encoder(圖左大方框),Decoder(圖右大方框)
回復訊息: Output
Embedding 是一開始的接收分成Input跟Output兩種,例如我們在翻譯語言,聽到英文轉成中文,這樣說們就需要兩種不同的系統。機器對於不同語言也需要分別的系統,把外界輸入的token轉化成訓練要用的vector向量
Positional Encoding: 語言具有連續性,例如
小林很會打球,我們應該找他去
在這段話,小林與他 指的都是同一個人,假想一個人患有失憶症,每次的字對他來說都是新的,那就無法把小林跟他關聯起來,而會問 "蝦 要找誰幹嘛?",因此我們需要在資料上加入位置,讓機器在往後訓練時可以了解輸入的前後關係
把上面歸類在接收訊息,是因為這些過程對於機器是準備要用來下一階段處理訊息的資料,但可以這過程一樣是對使用者輸入做到計算改動的。
說Encoder 跟decoder前,可以看到兩個都具有類似的部分
Feed Forward 跟Multi-Head Attention
Multi-Head Attention:¶
前面提到position encoding 可以讓機器知道順序前後關係,這就像我們可以有短期記憶去記得"他" 指的是小林,但如果我們說了很長一段話,如下圖,這會導致要訓練的資料變得很大,並且我們還會涵蓋很多不重要的資料也被拿去訓練,以人類的角度而已,我們只會去記"重點" ,例如下圖說了一些無關的話,我們通常只會去記 小林:球衣好,眼鏡/小白:隱形眼鏡,技術一般
這時候我們可以透過Self-attention(介紹),目的是在輸入相當多的情況下,我們透過與前後資料關聯性運算(透過再一層hidden layer),拿到新的Array,這時候的Array 權重就會包含前後文字的計算,以人類的說法,我們找到了"重點"。 這時候又有個問題,如與LLM對話示意圖,裡面包含了兩大資訊類別,天氣狀況與不同人的能力特點,如果注意力只有一個,卻要同時做很多件事,我們一定會焦頭爛額導致表現不好,model也一樣,因此我們需要model能夠同時且專注在不同的類別上,這時候就需要Multi-Head Attention。
Multi-Head Attention,model再計算array時,會再去拆分出不同的矩陣類別,就類似人類有分身術,A專心聽天氣,B專心紀錄人員表現,這樣一來問天氣時,A記得答案,人員相關,B記得,以model來說最終輸出還是只有一個array,但這個array已經將不同類別權重個別紀錄,比其一個attention,通常表現會更好。
Feed Forward:¶
就好像經過思考後,我們要把想說的話依照順序順清楚,以model來說,經過前面的計算,這時候要把特定位置array給輸出,這時候已經不需要不需要再考慮前後位置,只需要注意各自負責的位置
介紹完核心功能後,encoder 可以想成我們思考輸入的資料是甚麼,保存這個想法在某處,再透過decoder,去拿出這個想法,轉成文字。
前面這麼多的流程,現在終於可以回復訊息了,我們已經釐清要說的話,他每個位置可能要放甚麼文字,現在就可以填空真的把字一個一個放到我們要回的話,然後輸出~
LLaMA3.2
終於來到另一個介紹,在百家爭鳴的今天,重新訓練一支語言模型是很燒錢的事,比較有名的像是GPT, BERT, Gemini, 而LLaMA3.2是目前Meta發布的最新大型語言模型,主要有四個model
文字輸出only: 1B 跟3B
圖像文字: 11B跟90B
功能越多當然檔案就越大,並且LLaMA可以供大眾下載到自己的環境,直接離線運行,可以放在手機,電腦或是IoT等邊緣裝置。
下一章會介紹LLaMA 3.2的實作運用
參考資料
whitepaper-foundational-llm-and-text-generation
https://learn.deeplearning.ai/courses/introducing-multimodal-llama-3-2/lesson/5/prompt-format
Comments
Loading comments…
Leave a Comment