文章來源:前沿科技 量子位
文章作者:白交 衡宇
白交 衡宇 發自 凹非寺
量子位 | 公衆号 QbitAI
一種全新的神經網絡架構KAN,誕生了!
與傳統的MLP架構截然不同,且能用更少的參數在數學、物理問題上取得更高精度。
比如,200個參數的KANs,就能複現DeepMind用30萬參數的MLPs發現數學定理研究。
不僅準确性更高,并且還發現了新的公式。要知道後者可是登上Nature封面的研究啊~
在函數拟合、偏微分方程求解,甚至處理凝聚态物理方面的任務都比MLP效果要好。
而在大模型問題的解決上,KAN天然就能規避掉災難性遺忘問題,并且注入人類的習慣偏差或領域知識非常容易。
來自MIT、加州理工學院、東北大學等團隊的研究一出,瞬間引爆一整個科技圈:Yes We KAN!
甚至直接引出關于能否替代掉Transformer的MLP層的探讨,有人已經準備開始嘗試……
有網友表示:這看起來像是機器學習的下一步。
讓機器學習每個特定神經元的最佳激活,而不是由我們人類決定使用什麼激活函數。
還有人表示:可能正處于某些曆史發展的中間。
GitHub上也已經開源,也就短短兩三天時間就收獲1.1kStar。
對MLP“進行一個簡單的更改”
跟MLP最大、也是最為直觀的不同就是,MLP激活函數是在神經元上,而KAN把可學習的激活函數放在權重上。
在作者看來,這是一個“簡單的更改”。
從數學定理方面來看,MLP的靈感來自于通用近似定理,即對于任意一個連續函數,都可以用一個足夠深的神經網絡來近似。
而KAN則是來自于 Kolmogorov-Arnold 表示定理 (KART),每個多元連續函數都可以表示為單變量連續函數的兩層嵌套疊加。
KAN的名字也由此而來。
正是受到這一定理的啟發,研究人員用神經網絡将Kolmogorov-Arnold 表示參數化。
為了紀念兩位偉大的已故數學家Andrey Kolmogorov和Vladimir Arnold,我們稱其為科爾莫格羅夫-阿諾德網絡(KANs)。
而從算法層面上看,MLPs 在神經元上具有(通常是固定的)激活函數,而 KANs 在權重上具有(可學習的)激活函數。這些一維激活函數被參數化為樣條曲線。
在實際應用過程中,KAN可以直觀地可視化,提供MLP無法提供的可解釋性和交互性。
不過,KAN的缺點就是訓練速度較慢。
對于訓練速度慢的問題,MIT博士生一作Ziming Liu解釋道,主要有兩個方面的原因。
一個是技術原因,可學習的激活函數評估成本比固定激活函數成本更高。
另一個則是主觀原因,因為體内物理學家屬性抑制程序員的個性,因此沒有去嘗試優化效率。
對于是否能适配Transformer,他表示:暫時不知道如何做到這一點。
以及對GPU友好嗎?他表示:還沒有,正在努力中。
天然能解決大模型災難性遺忘
再來看看KAN的具體實現效果。
神經縮放規律:KAN 的縮放速度比 MLP 快得多。除了數學上以Kolmogorov-Arnold 表示定理為基礎,KAN縮放指數也可以通過經驗來實現。
在函數拟合方面,KAN比MLP更準确。
而在偏微分方程求解,比如求解泊松方程,KAN比MLP更準确。
研究人員還有個意外發現,就是KAN不會像MLP那樣容易災難性遺忘,它天然就可以規避這個缺陷。
好好好,大模型的遺忘問題從源頭就能解決。
在可解釋方面,KAN能通過符号公式揭示合成數據集的組成結構和變量依賴性。
人類用戶可以與 KANs 交互,使其更具可解釋性。在 KAN 中注入人類的歸納偏差或領域知識非常容易。
研究人員利用KANs還重新複現了DeepMind當年登上Nature的結果,并且還找到了Knot理論中新的公式,并以無監督的方式發現了新的結不變式關系。
Deepmind的MLP大約300000 個參數,而KAN大約隻有200 個參數。KAN 可以立即進行解釋,而 MLP 則需要進行特征歸因的後期分析。并且準确性也更高。
對于計算要求,團隊表示論文中的所有例子都可以在單個CPU上10分鐘内重現。
雖然KAN所能處理的問題規模比許多機器學習任務要小,但對于科學相關任務來說就剛剛好。
比如研究凝固态物理中的一種相變:安德森局域化。
好了,那麼KAN是否會取代Transformer中的MLP層呢?
有網友表示,這取決于兩個因素。
一點是學習算法,如 SGD、AdamW、Sophia 等—能否找到适合 KANs 參數的局部最小值?
另一點則是能否在GPU上高效地實現KANs層,最好能比MLPs跟快。
最後,論文中還貼心的給出了“何時該選用KAN?”的決策樹。
那麼,你會開始嘗試用KAN嗎?還是讓子彈再飛一會兒~
項目鍊接:
https://kindxiaoming.github.io/pykan/
論文鍊接:
https://arxiv.org/abs/2404.19756
參考鍊接:
[1]https://twitter.com/ZimingLiu11/status/1785483967719981538
[2]https://twitter.com/AnthropicAI/status/1785701418546180326