針對 Transformer,谷歌 DeepMind 一項新的發現引起了不小争議:
它的泛化能力,無法擴展到訓練數據以外的内容。
目前這一結論還沒有進一步得到驗證,但已經驚動了一衆大佬,比如 Keras 之父 Francois Chollet 表示,如果消息爲真,将成爲大模型界的一件大事。
谷歌 Transformer 是今天大模型背後的基礎架構,我們所熟悉的 GPT 裏的 "T" 指的就是它。
一系列大模型表現出強大的上下文學習能力,可以快速學習示例并完成新的任務。
但現在,同樣來自 Google 的研究人員似乎指出了它的緻命缺陷——超出訓練數據也就是人類已有知識之外,全都無能爲力。
一時間,不少從業者認爲 AGI 再次變得遙不可及。
然而,也有網友找出論文中更多關鍵卻被忽略的細節,比如隻做了 GPT-2 規模的試驗,訓練數據也不是語言等。
随着時間的推移,更多認真研究了這篇論文的網友則指出,研究結論本身沒什麽問題,但人們卻基于此做出過度的解讀。
而論文引發網友熱議之後,其中一名作者也出來做了兩點澄清:
首先實驗中使用的是簡單 Transformer,既不 " 大 " 也不是語言模型;
其次,模型是可以學習新任務的,隻是無法泛化到新類型的任務
此後,又有網友在 Colab 中重複了這一實驗,卻得到了完全不同的結果。
那麽,我們就先來看看這篇論文,還有提出不同結果的 Samuel,到底都說了什麽。
新函數幾乎無法預測
實驗中,作者在基于 Jax 的機器學習框架上訓練了規模接近 GPT-2、隻包含解碼器的 Transformer。
其中包括了 12 層,8 個注意力頭,嵌入空間維度爲 256,參數量約爲 950 萬。
爲了測試它的泛化能力,作者使用了函數作爲測試對象——将線性函數和正弦函數一起作爲訓練數據喂模型。
這兩種函數對于此時的模型來說是已知,預測的結果自然也很好,但當研究者把線性函數和正弦函數進行了凸性組合時,問題就出現了。
凸性組合并沒有那麽神秘,作者構建出了形如 f ( x ) =a · kx+ ( 1-a ) sin ( x ) 的函數,在我們看來不過是兩個函數按比例簡單相加。
但我們之所以會這麽認爲,正是因爲我們的大腦擁有這方面的泛化能力,而大模型就不一樣了。
别看就是簡單相加,對于隻見過線性和正弦函數的模型來說,這就是一種全新的函數。
對于這種新函數,Transformer 給出的預測可以說是毫無準确性可言(圖 4c)——于是作者就認爲模型在函數上沒有泛化能力。
爲了進一步驗證自己的結論,作者調整了線性或正弦函數的權重,但即使這樣 Transformer 的預測表現也沒有顯著的變化。
隻有一點例外——當其中一項的權重接近 1 時,模型的預測結果和實際就比較吻合了。
但權重爲 1 意味着,陌生的新函數直接變成了訓練時見過的函數,這樣的數據對于泛化能力來說顯然沒有什麽意義。
進一步實驗還顯示,Transformer 不僅對于函數的種類十分敏感,甚至同種函數也可能變成陌生條件。
研究人員發現,哪怕是單純的正弦函數,隻是改變其中的頻率,模型的預測結果也會發生線束變化。
隻有當頻率接近訓練數據中的函數時,模型才能給出比較準确的預測,當頻率過高或過低時,預測結果出現了嚴重的偏差……
據此,作者認爲,條件隻要稍微有點不一樣,大模型就不知道怎麽做了,這不就是說明泛化能力差嗎?
作者在文中也自述了研究中存在的一些局限性,如何将函數數據上的觀察應用到 token 化的自然語言問題上。
團隊也在語言模型上嘗試了相似的試驗但遇到一些障礙,如何适當定義任務族(相當于這裏的函數種類)、凸組合等還有待解決。
而 Samuel 這邊的模型規模更小,僅有 4 層,在 Colab 上訓練 5 分鍾後就可以泛化到線性與正弦函數的組合。
不能泛化又如何
綜合全文來看,Quora CEO 這篇文章的結論非常窄,隻在很多假設下才能成立。
斯隆獎得主、UCLA 教授顧全全說,這篇論文本身的結論不存在争議,但不應該被過度解讀。
結合先前的研究,Transformer 隻是無法泛化到與預訓練數據 " 明顯不同 " 的内容,而實際上,大模型的泛化能力通常用任務多樣性和任務複雜性來衡量。
如果仔細追究 Transformer 的泛化能力,恐怕要讓子彈再飛一會兒了。
但是,就算真的缺乏泛化能力,又能怎麽樣呢?
英偉達 AI 科學家 Jim Fan 就說,這種現象其實沒啥奇怪的,因爲 Transformer本來就不是萬金油,大模型表現得好,是因爲訓練數據剛好是我們關心的内容。
Jim 進一步補充道,這就好像是在說,用一千億張貓狗的照片訓練視覺模型,接着讓模型去識别飛機,然後發現,哇,居然真的不認識诶。
不隻是大模型,人類在遇到一些未知任務時也不一定能有解決方案,這是否也說明人類缺乏泛化能力呢?
所以,在目标導向之下,無論是大模型還是人類,最終的目的還是要回到解決問題上來,而泛化隻是一種手段。
借用這個表情包的說法,既然泛化能力欠缺,那就把它訓練到沒有訓練之外的數據爲止。
那麽,對于這項研究,你有什麽看法呢?
論文地址:
https://arxiv.org/abs/2311.00871