哪怕隻有幾十個神經元,AI 也能出現泛化能力!
這是幾個谷歌科學家在搞正經研究時," 不經意間 " 發現的新成果。
他們給一些很簡單的 AI 模型 " 照了個 X 光 " ——将它們的訓練過程可視化後,發現了有意思的現象:
随着訓練時間增加,一些 AI 會從 " 死記硬背 " 的狀态中脫離出來,進化出 " 領悟力 "(grokking),對沒見過的數據表現出概括能力。
這正是 AI 掌握泛化能力的關鍵。
基于此,幾位科學家專門寫了個博客,探讨了其中的原理,并表示他們會繼續研究,試圖弄清楚大模型突然出現強理解力的真正原因。
一起來看看。
并非所有 AI 都能學會 " 領悟 "
科學家們先探讨了 AI 出現 " 領悟力 "(grokking)的過程和契機,發現了兩個現象:
一、雖然訓練時 loss 會突然下降,但 " 領悟 " 并不是突然發生的,它是一個平滑的變化過程。
二、并非所有 AI 都能學會 " 領悟 "。
先來看第一個結論。他們設計了一個單層 MLP,訓練它完成" 數奇數 "任務。
" 數奇數 " 任務,指識别一串長達 30 位 "0""1" 序列中的前 3 位是否有奇數個 "1"。例如,在 000110010110001010111001001011 中,前 3 位沒有奇數個 1;010110010110001010111001001011 中,前 3 位有奇數個 1。
在訓練前期階段,模型中各神經元的權重(下圖中的熱圖)是雜亂無章的,因爲 AI 不知道完成這一任務隻需要看前 3 個數字。
但經過一段時間的訓練後,AI 突然 " 領悟了 ",學會了隻看序列中的前 3 個數字。具體到模型中,表現爲隻剩下幾個權重會随着輸入發生變化:
這個訓練過程的目标被稱之爲最小化損失(提升模型輸出準确率),采用的技術則被稱之爲權重衰減(防止模型過拟合)。
訓練過程中,有一些權重與任務的 " 幹擾數字 "(30 位序列的後 27 位)相關,下圖可視化爲灰色;有一些則與完成任務的 " 前 3 位數字 " 有關,下圖可視化爲綠色。
當最後一個灰色權重降到接近 0,模型就會出現 " 領悟力 ",顯然這個過程不是突然發生的。
再來看第二個結論。不是所有 AI 模型都能學會 " 領悟 "。
科學家們訓練了1125 個模型,其中模型之間的超參數不同,每組超參數訓練 9 個模型。
最後歸納出 4 類模型,隻有 2 類模型會出現 " 領悟力 "。
如下圖," 白色 " 和 " 灰色 " 代表學不會 " 領悟 " 的 AI 模型," 黃色 " 和 " 藍色 " 代表能 " 領悟 " 的 AI 模型。
總結概括規律就是,一旦權重衰減、模型大小、數據量和超參數的設置不合适,AI 的 " 領悟力 " 就有可能消失——
以權重衰減爲例。如果權重衰減太小,會導緻模型過拟合;權重衰減太大,又會導緻模型學不到任何東西。
嗯,調參是門技術活……
了解現象之後,還需要探明背後的原因。
接下來,科學家們又設計了兩個小 AI 模型,用它來探索模型出現 " 領悟力 "、最終掌握泛化能力出現的機制。
更大的模型學會泛化的機制
科學家們分别設計了一個24 個神經元的單層 MLP和一個5 個神經元的單層 MLP,訓練它們學會做模加法(modular addition)任務。
模加法,指 ( a + b ) mod n。輸入整數 a 和 b,用它們的和減去模數 n,直到獲得一個比 n 小的整數,确保輸出位于 0~ ( n-1 ) 之間。
顯然,這個任務的輸出是周期性的,答案一定位于 0~66 之間。
首先,給隻有 5 個神經元的單層 MLP 一點 " 提示 ",設置權重時就加入周期性(sin、cos 函數)。
在人爲幫助下,模型在訓練時拟合得很好,很快學會了模加法。
然後,試着 " 從頭訓練 " 具有 24 個神經元的單層 MLP,不特别設置任何權重。
可以看到,訓練前期,這隻 MLP 模型的權重(下面的熱圖)變化還是雜亂無章的:
然而到達某個訓練階段後,模型權重變化會變得非常規律,甚至随着輸入改變,呈現出某種周期性變化:
如果将單個神經元的權重拎出來看,随着訓練步數的增加,這種變化更加明顯:
這也是 AI 從死記硬背轉變爲具有泛化能力的關鍵現象:神經元權重随着輸入出現周期性變化,意味着模型自己找到并學會了某種數學結構(sin、cos 函數)。
這裏面的頻率(freq)不是固定的一個值,而是有好幾個。
之所以會用到多個頻率(freq),是因爲 24 個神經元的單層 MLP 還自己學會了使用相長幹涉(constructive interference),避免出現過拟合的情況。
不同的頻率組合,都能達到讓 AI" 領悟 " 的效果:
用離散傅裏葉變換(DFT)對頻率進行隔離,可以發現和 " 數奇數 " 類似的現象,核心隻有幾個權重起作用:
總結來看,就像前面提到的 " 數奇數 " 任務一樣," 模加法 " 實驗表明,參數量更大的 AI 也能在這個任務中學會 " 領悟 ",而這個過程同樣用到了權重衰減。
從 5 個神經元到 24 個神經元,科學家們成功探索了更大的 AI 能學習 " 領悟 " 的機制。
接下來,他們還計劃将這種思路套用到更大的模型中,以至于最後能歸納出大模型具備強理解力的原因。
不僅如此,這一成果還有助于自動發現神經網絡學習算法,最終讓 AI 自己設計 AI。
團隊介紹
撰寫博客的作者來自谷歌的 People + AI Research(PAIR)團隊。
這是谷歌的一個多學科團隊,緻力于通過基礎研究、構建工具、創建框架等方法,來研究 AI 的公平性、可靠性等。
一句話總結就是,讓 "AI 更好地造福于人 "。
博客地址:
https://pair.withgoogle.com/explorables/grokking/