|
一鍵注冊,加入手機(jī)圈
您需要 登錄 才可以下載或查看,沒有帳號(hào)?立即注冊 
x
詹士 發(fā)自 凹非寺
量子位 | 公眾號(hào) QbitAI “從0到1手搓GPT”教程來了!
視頻1個(gè)多小時(shí),從原理到代碼都一一呈現(xiàn),訓(xùn)練微調(diào)也涵蓋在內(nèi),手把手帶著你搞定。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-1.jpg (31.12 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
該內(nèi)容剛發(fā)出來,在Twitter已吸引400萬關(guān)注量,HackerNews上Points也破了900。
連馬斯克也下場支持。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-2.jpg (11.47 KB, 下載次數(shù): 11)
下載附件
2023-1-23 22:43 上傳
評(píng)論區(qū)更是一片鑼鼓喧天鞭炮齊鳴,網(wǎng)友們紛紛馬住。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-3.jpg (20.89 KB, 下載次數(shù): 9)
下載附件
2023-1-23 22:43 上傳
有人評(píng)價(jià),Andrej確實(shí)是一位出色的“事物解釋者”,也熱心于回答大家的問題。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-4.jpg (31.46 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
還有網(wǎng)友更夸張,稱該教程簡直是來“救命”。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-5.jpg (12.2 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
那么,這位活菩薩是誰?
正是前特斯拉AI總監(jiān),李飛飛高徒——Andrej Karpathy。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-6.jpg (16.43 KB, 下載次數(shù): 9)
下載附件
2023-1-23 22:43 上傳
教程具體說了什么?
這就來展開講講。
從零構(gòu)建GPT,總共幾步?
視頻教程先從理論講起。
第一部分主要關(guān)于建立基準(zhǔn)語言模型(二元)以及Transformer核心注意力機(jī)制,以及該機(jī)制內(nèi)節(jié)點(diǎn)之間的信息傳遞,自注意力機(jī)制理論也有涉及。
該part內(nèi)容長度超過1小時(shí),不僅有概念解釋,還教你如何使用矩陣乘法、添加softmax歸一化,可謂“夯實(shí)基礎(chǔ)”式講解。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-7.jpg (55.16 KB, 下載次數(shù): 8)
下載附件
2023-1-23 22:43 上傳
接著講述構(gòu)建Transformer。
這當(dāng)中涉及了多頭注意力(包括如何插入自注意力構(gòu)建塊)、多層感知機(jī)(MLP)、殘差連接、歸一化方法LayerNorm以及如何在Transformer中添加Dropout notes…….
然后,作者會(huì)帶大家訓(xùn)練一個(gè)模型,當(dāng)中會(huì)用到一個(gè)名為nanoGPT的庫,可調(diào)用GPT-2參數(shù),快速完成GPT模型的訓(xùn)練。
教程中,作者還將所得模型與Open AI的GPT-3比較。兩者規(guī)模差距達(dá)1萬-100萬倍,但神經(jīng)網(wǎng)絡(luò)是相同的。另一個(gè)將拿來比較的是人盡皆知的ChatGPT,當(dāng)然,我們目前所得只是預(yù)訓(xùn)練模型。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-8.jpg (36.01 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
在上述內(nèi)容引導(dǎo)下,我們已得一個(gè)10M參數(shù)規(guī)模的模型,在一個(gè)GPU上訓(xùn)練15分鐘,喂給1MB大小的莎士比亞文本數(shù)據(jù)集,它就能像莎士比亞一樣輸出。
比如下面兩張圖,你能分辨哪個(gè)是真人莎士比亞寫的嗎?
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-9.jpg (69.16 KB, 下載次數(shù): 11)
下載附件
2023-1-23 22:43 上傳
評(píng)論區(qū)有人好奇選什么GPU資源。作者也分享了下——自己用的是Lambda的云上GPU,這是他目前接觸按需計(jì)費(fèi)GPU中,最簡單的渠道。
光說不練不行,作者還給出一些課后練習(xí),總共四道題,包括:
- N維張量掌握挑戰(zhàn);
- 在自己選擇的數(shù)據(jù)集上訓(xùn)練GPT;
- 找一個(gè)非常大的數(shù)據(jù)集,基于它訓(xùn)練Transformer,然后初始化再基于莎士比亞數(shù)據(jù)集微調(diào),看能否通過預(yù)訓(xùn)練獲得更低的驗(yàn)證損失?
- 參考Transformer相關(guān)論文,看看之前研究中哪些操作能進(jìn)一步提升性能;
神器nanoGPT也剛發(fā)布
前文提及,作者之所以能快速完成訓(xùn)練GPT,有賴于一個(gè)名nanoGPT的庫。
這也是本教程作者前幾天剛發(fā)布的利器,由2年前的minGPT升級(jí)而來,只是換了個(gè)更“標(biāo)題黨”的名字,自稱納米級(jí)(nano)。目前,其在GitHub所獲star已超8k,網(wǎng)友連連點(diǎn)贊。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-10.jpg (62.86 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
據(jù)作者介紹,該庫里面包含一個(gè)約300行的GPT模型定義(文件名:model.py),可以從OpenAI加載GPT-2權(quán)重。
還有一個(gè)訓(xùn)練模型PyTorch樣板(文件名:train.py),同樣也是300多行。
對想上手的AI玩家來說,無論是從頭開始訓(xùn)練新模型,還是基于預(yù)訓(xùn)練進(jìn)行微調(diào)(目前可用的最大模型為1.3B參數(shù)的GPT-2),各路需求均能滿足。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-11.jpg (48.05 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
△ 一個(gè)訓(xùn)練實(shí)例展示
據(jù)作者目前自己的測試,他在1 個(gè) A100 40GB GPU 上訓(xùn)練一晚,損失約為 3.74。如果是在4個(gè)GPU上訓(xùn)練損失約為3.60。
如果在8個(gè)A100 40GB節(jié)點(diǎn)上進(jìn)行約50萬次迭代,時(shí)長約為1天,atim的訓(xùn)練降至約3.1,init隨機(jī)概率是10.82,已將結(jié)果帶到了baseline范圍。
李飛飛高徒教你從0到1構(gòu)建GPT,馬斯克點(diǎn)贊-12.jpg (37.67 KB, 下載次數(shù): 10)
下載附件
2023-1-23 22:43 上傳
對macbook或一些“力量”不足的小破本,靠nanoGPT也能開訓(xùn)。
不過,作者建議使用莎士比亞(shakespeare)數(shù)據(jù)集,該數(shù)據(jù)集前文已提及,大小約1MB,然后在一個(gè)很小的網(wǎng)絡(luò)上運(yùn)行。
據(jù)他自己親身示范,創(chuàng)建了一個(gè)小得多的Transformer(4層,4個(gè)head,64嵌入大小),在作者自己的蘋果AIR M1本上,每次迭代大約需要400毫秒。
(GitHub上nanoGPT鏈接附在文末,有需要的朋友自?。?br />
One More Thing
此番教程作者Karpathy Andrej在圈內(nèi)早已頗有名氣,他在斯坦福時(shí),師從華人AI大牛李飛飛,后又曾工作于Open AI。
此前,Karpathy就在致力于讓更多人接觸了解神經(jīng)網(wǎng)絡(luò)和相關(guān)數(shù)據(jù)集。2020年8月,他就曾發(fā)布nanoGPT前一代,MinGPT,同樣旨在讓GPT做到小巧、簡潔、可解釋,同樣主打——300行代碼解決問題。
Karpathy另一個(gè)身份是前特斯拉AI核心人物。
在馬斯克麾下,他歷任特斯拉高級(jí)AI主管、特斯拉自動(dòng)駕駛AutoPilot負(fù)責(zé)人、特斯拉超算Dojo負(fù)責(zé)人、特斯拉擎天柱人形機(jī)器人負(fù)責(zé)人…
2022年7月,Karpathy Andrej離職,在業(yè)內(nèi)引發(fā)不小討論。當(dāng)時(shí)他就表示,未來將花更多時(shí)間在AI、開源技術(shù)教育上。
這回發(fā)布的從0開始構(gòu)建GPT課程,正是他教學(xué)計(jì)劃的一部分。
https://github.com/karpathy/nanoGPT
https://www.youtube.com/watch?v=kCc8FmEb1nY
參考鏈接:
[1]https://twitter.com/karpathy/status/1615398117683388417?s=46&t=69hVy8CNcEBXBYmQHXhdxA
[2]https://news.ycombinator.com/item?id=34414716
—完—
@量子位 · 追蹤AI技術(shù)和產(chǎn)品新動(dòng)態(tài)
深有感觸的朋友,歡迎贊同、關(guān)注、分享三連?'?' ??
----------------------------- |
|