替代MLP的KAN,被開源項目擴展到卷積了
本月初,來自 MIT 等機構的研究者提出了一種非常有潛力的 MLP 替代方法 ——KAN。
KAN 在準確性和可解釋性方面表現優于 MLP,而且它能以非常少的參數量勝過以更大參數量運行的 MLP。比如,作者表示,他們用 KAN 以更小的網絡和更高的自動化程度重現了 DeepMind 的結果。具體來說,DeepMind 的 MLP 有大約 300000 個參數,而 KAN 只有大約 200 個參數。
KAN 與 MLP 一樣具有強大的數學基礎,MLP 基于通用逼近定理,而 KAN 基于 Kolmogorov-Arnold 表示定理。
如下圖所示,KAN 在邊上具有激活函數,而 MLP 在節點上具有激活函數。KAN 似乎比 MLP 的參數效率更高,但每個 KAN 層比 MLP 層擁有更多的參數。

最近,有研究者將 KAN 創新架構的理念擴展到卷積神經網絡,將卷積的經典線性變換更改為每個像素中可學習的非線性激活函數,提出并開源 KAN 卷積(CKAN)。

項目地址:https://github.com/AntonioTepsich/Convolutional-KANs
KAN 卷積
KAN 卷積與卷積非常相似,但不是在內核和圖像中相應像素之間應用點積,而是對每個元素應用可學習的非線性激活函數,然后將它們相加。KAN 卷積的內核相當于 4 個輸入和 1 個輸出神經元的 KAN 線性層。對于每個輸入 i,應用 ?_i 可學習函數,該卷積步驟的結果像素是 ?_i (x_i) 的總和。

KAN 卷積中的參數
假設有一個 KxK 內核,對于該矩陣的每個元素,都有一個 ?,其參數計數為:gridsize + 1,? 定義為:

這為激活函數 b 提供了更多的可表達性,線性層的參數計數為 gridsize + 2。因此,KAN 卷積總共有 K^2(gridsize + 2) 個參數,而普通卷積只有 K^2。
初步評估
作者測試過的不同架構有:
- 連接到 KAN 線性層的 KAN 卷積層(KKAN)
- 與 MLP 相連的 KAN 卷積層(CKAN)
- 在卷積之間進行批量歸一化的 CKAN (CKAN_BN)
- ConvNet(連接到 MLP 的經典卷積)(ConvNet)
- 簡單 MLP

作者表示,KAN 卷積的實現是一個很有前景的想法,盡管它仍處于早期階段。他們進行了一些初步實驗,以評估 KAN 卷積的性能。
值得注意的是,之所以公布這些「初步」結果,是因為他們希望盡快向外界介紹這一想法,推動社區更廣泛的研究。

卷積層中列表每個元素都包含卷積數和相應的內核大小。
基于 28x28 MNIST 數據集,可以觀察到 KANConv & MLP 模型與 ConvNet(大)相比達到了可接受的準確度。然而,不同之處在于 KANConv & MLP 所需的參數數量是標準 ConvNet 所需的參數數量的 7 倍。此外,KKAN 的準確率比 ConvNet Medium 低 0.04,而參數數量(94k 對 157k)幾乎只有 ConvNet Medium 的一半,這顯示了該架構的潛力。我們還需要在更多的數據集上進行實驗,才能對此得出結論。
在接下來的幾天和幾周里,作者還將徹底調整模型和用于比較的模型的超參數。雖然已經嘗試了一些超參數和架構的變化,但這只是啟發式的,并沒有采用任何精確的方法。由于計算能力和時間的原因,他們還沒有使用大型或更復雜的數據集,并正在努力解決這個問題。
未來,作者將在更復雜的數據集上進行實驗,這意味著 KANS 的參數量將會增加,因為需要實現更多的 KAN 卷積層。
結論
目前,與傳統卷積網絡相比,作者表示并沒有看到 KAN 卷積網絡的性能有顯著提高。他們分析認為,這是由于使用的是簡單數據集和模型,與嘗試過的最佳架構(ConvNet Big,基于規模因素,這種比較是不公平的)相比,該架構的優勢在于它對參數的要求要少得多。
在 2 個相同的卷積層和 KAN 卷積層與最后連接的相同 MLP 之間進行的比較顯示,經典方法略勝一籌,準確率提高了 0.06,而 KAN 卷積層和 KAN 線性層的參數數量幾乎只有經典方法的一半,準確率卻降低了 0.04。
作者表示,隨著模型和數據集復雜度的增加,KAN 卷積網絡的性能應該會有所提高。同時,隨著輸入維數的增加,模型的參數數量也會增長得更快。




























