今天小編分享的科學經驗:全新神經網絡架構KAN一夜爆火!200參數頂30萬,MIT華人一作,輕松復現Nature封面AI數學研究,歡迎閱讀。
一種全新的神經網絡架構 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 登 Nature 研究成果
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
— 完 —
點這裡關注我,記得标星哦~
一鍵三連「分享」、「點贊」和「在看」
科技前沿進展日日相見 ~
>