ETH官方钱包

前往
大廳
主題

【筆記】[1hr Talk] Intro to Large Language Models —Andrej Karpathy

緩慢爬行(人類) | 2024-04-09 15:07:53 | 巴幣 0 | 人氣 83

一、LLM 是什麼

就兩個(gè) files :
1.參數(shù)資料
2.用來部署的 code (可以用任何語言編寫)

二、怎麼跑 LLM

拿這兩個(gè)文件,用你的筆電 compile code (不用連網(wǎng)),得到二進(jìn)制文件,並指向參數(shù),你就可以跟 LLM 互動(dòng)交流了。

三、參數(shù)從哪裡來

進(jìn)入第一階段:Pre-training
計(jì)算複雜度出現(xiàn)在這裡,model training 比 model inference(直接去跑)更難,
我們在做的事可以理解為對 Internet 內(nèi)容進(jìn)行壓縮,變成參數(shù),
不過,預(yù)訓(xùn)練是一種有損壓縮(不是無損),一種 gestalt ,因?yàn)樗菍ξ谋咀龈兄瑳]有完全 copy 內(nèi)容。
舉例中, LLaMA 的訓(xùn)練資料量等等的數(shù)字,和現(xiàn)在最先進(jìn)的模型偏差超過10倍,就想像他的10倍以上才是 GPT-4。

四、LLM 的神經(jīng)網(wǎng)路在做什麼

對壓縮資料進(jìn)行 token 的預(yù)測,用訓(xùn)練生成的分佈產(chǎn)生 dreams (有點(diǎn)像幻覺),
產(chǎn)生的 dreams 文本中逐字內(nèi)容在訓(xùn)練集中是找不到的,
所以你不知道哪些是事實(shí)上有的,哪些是 LLM 自己填充的。

五、LLM 如何運(yùn)作

transformer 裡有非常多參數(shù),要迭代地去調(diào)整某些參數(shù)讓 LLM 預(yù)測能力更好,
我們大概知道架構(gòu),但實(shí)際上不知道他內(nèi)部是怎麼運(yùn)作的,
把它想成是藝術(shù)品,而不是工程類的產(chǎn)物,我們對 LLM 內(nèi)部的理解程度不如對工程零件那麼高。

六、怎麼 train 一個(gè) assistant

我們不只要一個(gè)文件生成器,還要他可以回答我們的問題。
進(jìn)入第二階段:fine-tuning
找一群人,提供標(biāo)注指示,讓這些人提出問題並寫出答案,生出很多標(biāo)注文件。
預(yù)訓(xùn)練階段的文本潛在質(zhì)量低但資料量大,在這階段就是把質(zhì)量提高但用少量資料,例如10萬個(gè)高質(zhì)量對話,模型的格式就會(huì)改變,變成回答問題的助手,也就是 alignment 的過程。

七、總結(jié)訓(xùn)練大型語言模型

第一階段:上網(wǎng)爬10TB的文→拿到一堆GPU→把文字丟到類神經(jīng)網(wǎng)路→訓(xùn)練很久→得到基礎(chǔ)模型(很貴)

第二階段:寫標(biāo)注說明→收集10萬份的高質(zhì)量資料→訓(xùn)練一天→得到 fine-tune 模型(比較便宜)

接著部署、監(jiān)控、收集模型輸出,表現(xiàn)不好就回去寫標(biāo)注說明覆蓋舊的答案,把它插入訓(xùn)練資料,下次 fine-tune 時(shí)就可以針對這個(gè)問題改進(jìn)。

補(bǔ)充另一種標(biāo)注方法:comparisons
對於人類標(biāo)注者來說,比較候選答案比自己寫答案簡單,也就是從人類反饋中進(jìn)行 Reinforcement Learning(RLHF),在生成這些標(biāo)注文件時(shí),可以用人機(jī)協(xié)作的方式來增加效率和正確性,人工部分需求就更少了。

八、LLM 的發(fā)展趨勢

1. Scaling Law 的本質(zhì)是,模型預(yù)測下個(gè) token 的準(zhǔn)確性可以藉由參數(shù)量、訓(xùn)練資料大小來預(yù)測,也就是說,你擁有更大的模型就可以想像你擁有更高的準(zhǔn)確性,總之砸錢

2. LLM 解決問題時(shí)會(huì)使用工具(ex. Web Browsing, DALL-E),或是當(dāng)涉及到計(jì)算時(shí),直接用 code 寫出來或叫計(jì)算機(jī)出來算,所以多模態(tài)性是一個(gè)重要的方向,除了對模型輸入圖像、聲音和文字,同樣模型也能輸出圖像和聲音。

九、未來方向

1. LLM 在推論方式上即將發(fā)生改變,也就是從 Syetem 1 到 Syetem 2 的轉(zhuǎn)變(取自《快思慢想》),也就是對 token 的預(yù)測從直覺式、不經(jīng)大腦的方式,變成有去思考的方式。希望把時(shí)間轉(zhuǎn)換為準(zhǔn)確性,能夠思考、反思、改寫再回答,例如 Tree of Thought。

2. LLMs 的自我能力提升機(jī)制,目前 LLM 能力只停留在人類給的標(biāo)注文件上,還無法超過人類回答的準(zhǔn)確性,要達(dá)到機(jī)器自我提升還有段距離,目前還缺乏完善的評估標(biāo)準(zhǔn)或者是獎(jiǎng)勵(lì)函數(shù)。

3. 讓LLM成為特定任務(wù)的專家,例如提供特定文件、自己的訓(xùn)練資料,或其他客制化的方式去訓(xùn)練他。

十、總結(jié)

LLM 不只是 chatbot ,更是一種作業(yè)系統(tǒng),context window 可以類比成 RAM,他是語言模型的有限資源,在這其中傳遞相關(guān)資訊來完成任務(wù),其他還有multi-threading, multi-processing, speculative execution, user space/kernel space 等現(xiàn)今 OS 能做的都可以類比,這裡簡單帶過。總之,他跟目前 OS 生態(tài)很相似。

(最後講資安問題,就沒寫了。)

來源:

創(chuàng)作回應(yīng)

更多創(chuàng)作