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