📢 Gate廣場 #MBG任务挑战# 發帖贏大獎活動火熱開啓!
想要瓜分1,000枚MBG?現在就來參與,展示你的洞察與實操,成爲MBG推廣達人!
💰️ 本期將評選出20位優質發帖用戶,每人可輕鬆獲得50枚MBG!
如何參與:
1️⃣ 調研MBG項目
對MBG的基本面、社區治理、發展目標、代幣經濟模型等方面進行研究,分享你對項目的深度研究。
2️⃣ 參與並分享真實體驗
參與MBG相關活動(包括CandyDrop、Launchpool或現貨交易),並曬出你的參與截圖、收益圖或實用教程。可以是收益展示、簡明易懂的新手攻略、小竅門,也可以是現貨行情點位分析,內容詳實優先。
3️⃣ 鼓勵帶新互動
如果你的帖子吸引到他人參與活動,或者有好友評論“已參與/已交易”,將大幅提升你的獲獎概率!
MBG熱門活動(帖文需附下列活動連結):
Gate第287期Launchpool:MBG — 質押ETH、MBG即可免費瓜分112,500 MBG,每小時領取獎勵!參與攻略見公告:https://www.gate.com/announcements/article/46230
Gate CandyDrop第55期:CandyDrop x MBG — 通過首次交易、交易MBG、邀請好友註冊交易即可分187,500 MBG!參與攻略見公告:https://www.gate.com/announcements
背誦不等於理解,深度解析大模型背後的知識儲存與擷取
來源:機器之心
隨著模型規模的增大,人們開始探索大模型是如何掌握大量知識的。一種觀點認為這歸功於“無損壓縮”,即模型通過大量訓練,記憶更多內容以提高預測精度。但「無損壓縮」 真的能讓大模型理解這些知識嗎? 朱澤園(MetaAI) 和李遠志(MBZUAI) 的最新研究《語言模型物理學Part 3.1:知識的儲存與提取》深入探討了這個問題。
對於人類,有句話叫「書讀百遍,其意自現」。這句話雖不適用於所有知識,但對於簡單知識,只要我們能記住相關書籍,就能輕鬆回答相關問題。例如,只要我們記住古詩“靜夜思”,就能輕鬆回答“詩裡把月光比作了什麼?”;只要我們記住百度百科關於“出師表/ 創作背景” 那一段,就能輕鬆回答“出師表的創作時間是什麼?」。那麼,大模型是否也能做到這一點呢?
GPT-4 雖然能理解並複述與問題相關的段落,但為何它無法像人類一樣回答簡單的問題呢?是因為模型不夠大,記憶力不足,還是訓練後的微調不夠?都不是!文章指出,即使自然語言模型夠大,訓練時間夠長,微調也夠充分,但它仍可能無法回答人類認為簡單的問題。這其中的深層原因,與知識在預訓練資料集(pretrain data) 中的呈現方式有關。同一知識,需要在預訓練資料集中多次出現,且具有足夠的“多樣性”,微調後才更容易被提取出來。
為了證實這一點,兩位作者創建了一個包含100k 個人物傳記的資料集,每個人物都有一個傳記條目,包含人名和六個固定屬性:出生日期,出生地,大學專業,大學名稱,工作地點,工作單位。他們設計了BioS 和BioR 兩種資料集,BioS 的每個句子選自50 種固定模板,BioR 則用LLaMA-30B 進行改寫,更逼真,多樣性更大。兩種資料集的結果一致,以下以BioS 為例,展示一個範例條目:
一個自然語言模型即使完美地預訓練(pretrain) 了100k 個人的自傳,也無法透過QA 微調(finetuning) 準確回答「Anya 本科念了哪所學校」 這樣的問題。如圖2 所示,即使使用50k 的人作為QA 微調訓練數據,嘗試各種微調方法,包括LoRA,模型在剩下的50k 人上的正確率也只有10%。即使使用了682M 的模型(比人數大7000 倍),訓練了1350 遍,作者甚至加入了WikiBook 等標準NLP 預訓練數據,正確率也沒有提升。可見「大力出奇蹟」 並沒有發生。
因此,大模型不一定能掌握或提取「無損壓縮」 的知識。那麼GPT-4 是如何掌握知識的呢?為了研究這個問題,兩位作者對預訓練集進行改變── 作者稱之為知識增強:
1.多樣性- multiM:為每個人創建M 個傳記條目,使用不同的敘述語言但保留相同的資訊(每句話一共有100 種敘述方法,每條傳記的每句話從中選取一種)
2、隨機排列- permute:對傳記句子進行隨機排列
3.全名- fullname:將傳記裡所有代名詞、姓、名替換全名
作者把原始資料集稱為bioS single,並試驗了15 種知識增強組合。例如,bioS multi5+permute 表示每人有5 個傳記,語序打亂。以下是bioS multi5+permute 的範例:
對於人和大模型,記住bioS single 和bioS multi5+permute 兩個資料集的難度幾乎相同(它們資訊量相同,並且每句話都是選自50 個模板)。那麼,如果在這個新的知識增強資料集上進行預訓練(pretrain),然後QA 微調,會有什麼新的表現嗎?
图 3 显示,bioS single 预训练模型的 QA 正确率仅为 9.7%,而 bioS multi5+permute 预训练模型的正确率高达 96.6%。这个显著的提升与模型的微调、大小或训练时间无关,而是与知识在预训练 (pretrain) 中的呈现方式有关,即知识如何被大模型 “背诵”。
研究也發現,將傳記分為名人(celebrity) 和少數群體(minority),只要名人傳記有知識增強,即使少數群體沒有,模型對少數群體的知識提取正確率也會大幅提升—— 當然,最好的效果還是需要對所有數據進行知識增強。
那麼為何背誦不同數據後,模型的問題回答能力差異大呢?為何反覆背誦名人傳記,可以讓少數族群的知識擷取能力也增強?原因是由於模型採取了不同的記憶方式。
作者透過兩種線性探針(linear probing) 深入探討了模型的記憶知識的原則。我們來看其中一種叫P 探針(P-probing) 的方法。
在P 探針中,我們輸入傳記條目到預訓練模型,訓練一個線性分類器預測六個目標屬性(如大學、專業等)。我們想看模型是否能在早於屬性的位置提取這些資訊。如果分類器在人名後立即顯示對「工作單位」 有高準確率,表示模型直接學習了「Anya 的雇主是Meta」。如果只在傳記結尾達到高準確率,可能模型用了有缺陷的記憶方法,例如「某人生日是1996 年10 月2 日,大學是MIT,因此雇主是Meta」。
P 探針的試驗設計是這樣的。找出每個傳記中6 個屬性首次出現的位置,然後在這些位置的前一個位置,訓練一個線性分類器來預測每個目標屬性。這就產生了36 個分類任務。
P 探針試驗結果顯示,自然語言模型在預訓練時可以透過人名記住資訊以實現壓縮,也可以透過其他資訊(如「在MIT 就讀並且生日是1996 年10 月2 日的人的工作單位是...”)記憶。雖然第二種記憶方式對人來說“不自然”,但對模型來說兩種方法的壓縮比無異。如果模型採用第二種方式記住訊息,訓練結束後將無法透過微調回答問題。而透過知識增強,預訓練模型會逐漸傾向於學會使用第一種記憶方式。
有人可能會爭論,上述「知識提取」 失敗可能是由於自回歸(autoregressive) 語言模型如GPT 的單向性。實際上,雙向語言模型如BERT 在知識提取上更差,對「Meta Platform」 這類多詞組知識只能存儲,無法提取。有興趣的讀者可以參考論文第6 章。
總的來說,語言模型是否能回答“知識提取” 問題,不僅取決於“無損壓縮”,還與“如何在模型中壓縮” 有關。論文強調,預訓練過程中對關鍵但少見的資料進行知識增強是必要的(如使用ChatGPT 進行多次改寫)。如果沒有這一步,無論如何努力微調,已預訓練完的模型雖然無損壓縮了訓練數據,但是還是可能再也無法提取那些知識了!
結語
如何理解自然語言模型的工作原理?大多數研究者透過與GPT-4 等模型對話,推測其能力。然而,《語言模型物理學》系列論文的作者提出了一種更精確的方法,透過精細設計訓練資料和可控實驗,探究Transformer 的內部機制,解釋其處理AI 任務的能力。
在《Part 3.1:知識的儲存與提取》中,作者精確地測試了模型對不同資料的反應,找到了模型學習知識與能力與訓練資料的準確關係。
他們也發布了《Part 3.2:知識的操作》,進一步研究了模型如何在特定情況下操作知識。例如,如果大模型記住了《靜夜思》,能否透過微調使其推理出《靜夜思》的最後一句是「低頭思故鄉」?我們很快講為大家帶來後續報道。