“大模型本質就是兩個文件!”特斯拉前AI總監(jiān)爆火LLM科普,時長1小時,面向普通大眾
特斯拉前AI總監(jiān)Andrej Karpathy的新教程火了。
這次,他專門面向普通大眾做了一個關于大語言模型的科普視頻。
時長1小時,全部為“非技術介紹”,涵蓋模型推理、訓練、微調和新興大模型操作系統(tǒng)以及安全挑戰(zhàn),涉及的知識全部截止到本月(非常新)。
△視頻封面圖是Andrej用Dall·3畫的
視頻上線油管僅1天,就已經有20萬播放量。
有網友表示:
我剛看了10分鐘就已經學到了很多東西,我以前從未用過視頻中講的這樣的例子來解釋LLM,它還弄清了我以前看到過的很多“混亂”的概念。
在一水兒的夸課程質量高之外,還有相當多的人評價Andrej本人真的非常擅長簡化復雜的問題,教學風格也總是讓人印象深刻。
不止如此,這個視頻還可以說是體現(xiàn)了他對本職專業(yè)滿滿的熱愛。
這不,據Andrej本人透露,視頻是他在感恩節(jié)假期錄的,背景就是他的度假酒店(手動狗頭)。
做這個視頻的初衷呢,也是因為他最近在人工智能安全峰會上做了個演講,演講內容沒有錄像,但有很多觀眾都表示喜歡其內容。
于是他就干脆直接進行了一些微調,再講一遍做成視頻給更多人觀看。
那么,具體都有些啥——
咱們一一給大伙呈上。
Part 1: 大模型本質就是兩個文件
第一部分主要是對大模型整體概念的一些解釋。
首先,大模型是什么?
Andrej的解釋非常有趣,本質就是兩個文件:
一個是參數(shù)文件,一個是包含運行這些參數(shù)的代碼文件。
前者是組成整個神經網絡的權重,后者是用來運行這個神經網絡的代碼,可以是C或者其他任何編程語言寫的。
有了這倆文件,再來一臺筆記本,我們就不需任何互聯(lián)網連接和其他東西就可以與它(大模型)進行交流了,比如讓它寫首詩,它就開始為你生成文本。
那么接下來的問題就是:參數(shù)從哪里來?
這就引到了模型訓練。
本質上來說,大模型訓練就是對互聯(lián)網數(shù)據進行有損壓縮(大約10TB文本),需要一個巨大的GPU集群來完成。
以700億參數(shù)的羊駝2為例,就需要6000塊GPU,然后花上12天得到一個大約140GB的“壓縮文件”,整個過程耗費大約200萬美元。
而有了“壓縮文件”,模型就等于靠這些數(shù)據對世界形成了理解。
那它就可以工作了。
簡單來說,大模型的工作原理就是依靠包含壓縮數(shù)據的神經網絡對所給序列中的下一個單詞進行預測。
比如我們將“cat sat on a”輸入進去后,可以想象是分散在整個網絡中的十億、上百億參數(shù)依靠神經元相互連接,順著這種連接就找到了下一個連接的詞,然后給出概率,比如“mat(97%)”,就形成了“貓坐在墊子上(cat sat on a mat)”的完整句子(神經網絡的每一部分具體如何工作目前還不清楚)。
需要注意的是,由于前面提到訓練是一種有損壓縮,神經網絡給出的東西是不能保證100%準確的。
Andrej管大模型推理為“做夢”,它有時可能只是簡單模仿它學到的內容,然后給出一個大方向看起來對的東西。
這其實就是幻覺。所以大家一定要小心它給出的答案,尤其是數(shù)學和代碼相關的輸出。
接下來,由于我們需要大模型成為一個真正有用的助手,就需要進行第二遍訓練,也就是微調。
微調強調質量大于數(shù)量,不再需要一開始用到的TB級單位數(shù)據,而是靠人工精心挑選和標記的對話來投喂。
不過在此,Andrej認為,微調不能解決大模型的幻覺問題。
本節(jié)最后,是Andrej總結的“如何訓練你自己的ChatGPT”流程:
第一步稱為預訓練,你要做的是:
1、下載10TB互聯(lián)網文本;
2、搞來6000塊GPU;
3、將文本壓縮到神經網絡中,付費200萬美元,等待約12天;
4、獲得基礎模型。
第二步是微調:
1、撰寫標注說明;
2、雇人(或用scale.ai),收集10萬份高質量對話或其他內容;
3、在這些數(shù)據上微調,等待約1天;
4、得到一個可以充當?shù)昧χ值哪P停?br>5、進行大量評估。
6、部署。
7、監(jiān)控并收集模型的不當輸出,回到步驟1再來一遍。
其中預訓練基本是每年進行一次,而微調可以周為頻率進行。
以上內容都可以說是非常小白友好。
Part 2: 大模型將成為新“操作系統(tǒng)”
在這一部分中,Karpathy為我們介紹了大模型的幾個發(fā)展趨勢。
首先是學會使用工具——實際上這也是人類智能的一種表現(xiàn)。
Karpathy以ChatGPT幾個功能進行了舉例,比如通過聯(lián)網搜索,他讓ChatGPT收集了一些數(shù)據。
這里聯(lián)網本身就是一次工具調用,而接下來還要對這些數(shù)據進行處理。
這就難免會涉及到計算,而這是大模型所不擅長的,但通過(代碼解釋器)調用計算器,就繞開了大模型的這個不足。
在此基礎上,ChatGPT還可以把這些數(shù)據繪制成圖像并進行擬合,添加趨勢線以及預測未來的數(shù)值。
利用這些工具和自身的語言能力,ChatGPT已經成為了強大的綜合性助手,而DALL·E的集成又讓它的能力再上一個臺階。
另一項趨勢,是從單純的文本模型到多模態(tài)的演變。
現(xiàn)在ChatGPT不只會處理文本,還會看、聽、說,比如OpenAI總裁Brockman曾經展示了GPT-4利用一個鉛筆勾勒的草圖生成了一個網站的過程。
而在APP端,ChatGPT已經可以流暢地和人類進行語音對話。
除了功能上的演進,大模型在思考方式上也要做出改變——從“系統(tǒng)1”到“系統(tǒng)2”的改變。
這是2002年諾貝爾經濟學獎得主丹尼爾·卡尼曼的暢銷書《思考,快與慢》中提到的一組心理學概念。
簡單來說,系統(tǒng)1是快速產生的直覺,而系統(tǒng)2則是緩慢進行的理性思考。
比如,當被問及2+2是幾的時候,我們會脫口而出是4,其實這種情況下我們很少真正地去“算”,而是靠直覺,也就是系統(tǒng)1給出答案。
但如果要問17×24是多少,恐怕就要真的算一下了,這時發(fā)揮主導作用的就變成了系統(tǒng)2。
而目前的大模型處理文本采用的都是系統(tǒng)1,靠的是對輸入序列中每個詞的“直覺”,按順序采樣并預測下一個token。
另一個發(fā)展的關鍵點是模型的自我提升。
以DeepMind開發(fā)的AlphaGo為例(雖然它不是LLM),它主要有兩個階段,第一階段是模仿人類玩家,但靠著這種方式無法超越人類。
但第二階段,AlphaGo不再以人類作為學習目標——目的是為了贏得比賽而不是更像人類。
所以研究人員設置了獎勵函數(shù),告訴AlphaGo它的表現(xiàn)如何,剩下的就靠它自己體會,而最終AlphaGo戰(zhàn)勝了人類。
而對于大模型的發(fā)展,這也是值得借鑒的路徑,但目前的難點在于,針對“第二階段”,還缺乏完善的評估標準或獎勵函數(shù)。
此外,大模型正朝著定制化的方向發(fā)展,允許用戶將它們定制,用于以特定“身份”完成特定的任務。
此次OpenAI推出的GPTs就是大模型定制化的代表性產品。
而在Karpathy看來,大模型在將來會成為一種新型的操作系統(tǒng)。
類比傳統(tǒng)的操作系統(tǒng),在“大模型系統(tǒng)”中,LLM作為核心,就像CPU一樣,其中包括了管理其他“軟硬件”工具的接口。
而內存、硬盤等模塊,則分別對應大模型的窗口、嵌入。
代碼解釋器、多模態(tài)、瀏覽器則是運行在這個系統(tǒng)上的應用程序,由大模型進行統(tǒng)籌調用,從而解決用戶提出的需求。
Part 3: 大模型安全像“貓鼠游戲”
演講的最后一部分,Karpathy談論了大模型的安全問題。
他介紹了一些典型的越獄方式,盡管這些方式現(xiàn)在已經基本失效,但Karpathy認為,大模型的安全措施與越獄攻擊之間的較量,就像是一場貓鼠游戲。
比如一種最經典的越獄方式,利用大模型的“奶奶漏洞”,就能讓模型回答本來拒絕作答的問題。
例如,假如直接問大模型凝固汽油彈怎么制作,但凡是完善的模型都會拒絕回答。
但是,如果我們捏造出一個“已經去世的奶奶”,并賦予“化學工程師”的人設,告訴大模型這個“奶奶”在小時候念凝固汽油彈的配方來哄人入睡,接著讓大模型來扮演……
這時,凝固汽油彈的配方就會脫口而出,盡管這個設定在人類看來十分荒謬。
比這更復雜一些的,還有Base64編碼等“亂碼”進行攻擊。
這里“亂碼”只是相對人類而言,對機器來說卻是一段文本或指令。
比如Base64編碼就是將二進制的原始信息通過一定方式轉換為字母和數(shù)字組成的長字符串,可以編碼文本、圖像,甚至是文件。
在詢問Claude如何破壞交通標志時,Claude回答不能這樣做,而如果換成Base64編碼,過程就呼之欲出了。
另一種“亂碼”叫做通用可轉移后綴,有了它,GPT直接就把毀滅人類的步驟吐了出來,攔都攔不住。
而進入多模態(tài)時代,圖片也變成了讓大模型越獄的工具。
比如下面這張熊貓的圖片,在我們看來再普通不過,但其中添加的噪聲信息卻包含了有害提示詞,并且有相當大概率會使模型越獄,產生有害內容。
此外,還有利用GPT的聯(lián)網功能,造出包含注入信息的網頁來迷惑GPT,或者用谷歌文檔來誘騙Bard等等。
目前這些攻擊方式已經陸續(xù)被修復,但只是揭開了大模型越獄方法的冰山一角,這場“貓鼠游戲”還將持續(xù)進行。
完整視頻:https://www.youtube.com/watch?v=zjkBMFhNj_g