cn21

コルモゴロフ・アーノルドネットワーク (KAN) と多層パーセプトロン (MLP) の比較

私たちは、古典的な多層パーセプトロン (MLP) を当然のこととして受け止め、その周りに数多くのアーキテクチャを構築してきました。MLP は、chatGPT、LLAMA、DALLE、CLIP など、今日見られるすべての LLM または基盤モデルの一部です。また、YOLO-v* などの単純な認識モデルにも含まれています。

では、MLP に対抗する新しい技術があると言ったらどうでしょう。MLP に対抗する「コルモゴロフ-アーノルド ネットワーク」、略して KAN と呼ばれる新しい論文が発表されました。彼らが提案するソリューションが本当に拡張可能であれば、次世代のニューラル ネットワークが実現し、汎用人工知能 (AGI) にさらに一歩近づくことになります。

MLP は ReLU、シグモイド、tanh、GeLU などの活性化関数で構成されていますが、KAN ではこれらの活性化関数を学習することを提案しています。では、KAN はどのようにしてそれを実行するのでしょうか。その背後にある数学はどのようなものでしょうか。どのように実装されているのでしょうか。また、KAN をどのようにトレーニングするのでしょうか。

ここで KAN 論文を要約しようと最善を尽くしました。この要点を読むか、48 ページに及ぶ論文を読むか、どちらかをお選びいただけます。

視覚的な説明

あなたも私と同じように、物事を視覚化して理解を深めたい場合は、この記事のビデオをご覧ください。

MLP — 問題点

まず、私たちがよく知っている MLP から始めましょう。MLP はノードとエッジで構成されています。各ノードでは、入力が合計され、ReLU、GeLU、SeLU などのアクティベーションが適用されて、その特定のノードの出力が生成されます。

MLPとKANの違いを示す論文の図MLPとKANの違いを示す論文の図

これらの活性化関数は、トレーニング プロセス中に変更されることはありません。つまり、パラメーターはありません。特定のトレーニング データセットに合わせて調整できるほどインテリジェントではありません。そのため、トレーニング中にトレーニングまたは更新されるのは、これらの各ノードの重みです。

さて、活性化関数を固定し、トレーニング可能にする必要があるという仮定に疑問を投げかけるとどうなるでしょうか。これが、KAN ネットワークが取り組もうとした課題です。KAN ネットワークの活性化関数は、トレーニング プロセス中に更新されます。さらに深く掘り下げる前に、多項式と曲線フィッティングから始めましょう。

多項式と曲線フィッティング

したがって、KAN の基本的な考え方は、任意の多変量複合関数を、単一変数である複数の関数の合計に分解できるというものです。

x^2 関数と x^3 関数を説明するアニメーションx^2 関数と x^3 関数を説明するアニメーション

たとえば、上の黄色の曲線でプロットされている y=x³ の 3 次方程式があるとします。また、上のアニメーションの青い曲線で示されているように、y=x² の別の 2 次方程式があるとします。この視覚化から、x² を使用しても x³ で達成される曲率は決して達成できないことがわかります。

下の赤い点と青い点で表されるデータが与えられ、2 つのクラス間のバイナリ分類境界を見つけたいとします。

x^3 が x^2 よりもよく適合するおもちゃの問題です。ただし、2 つの x^2 曲線を追加することで、x^2 でも解決できます。x^3 が x^2 よりもよく適合するおもちゃの問題です。ただし、2 つの x^2 曲線を追加することで、x^2 でも解決できます。

2次多項式を使用すると、 では、x²曲線は「U」字型ですが、データは「S」字型なので、両者の境界を見つけることはできません。 このデータには適していますが、余分な計算コストがかかります。別の解決策としては、 入力時 バツ 否定的ですが、 – を使用します x が正の場合 (上図で手で描かれた青い曲線)。

私たちが行ったのは、2 つの低次多項式を追加して、自由度の高い曲線を実現しただけです。これがまさに KAN ネットワークの背後にあるアイデアです。

おもちゃの問題

次は、データが単純な方程式によって生成されることがわかっている、もう少し複雑な問題を取り上げてみましょう。 y=exp(sin(x1² + x2²) + sin(x3² + x4²))入力変数は 4 つあり、演算は指数、正弦、二乗の 3 つです。したがって、以下に示すように、3 つの異なる演算専用の 3 つのレイヤーを持つ 4 つの入力ノードを選択できます。

4 つの入力、3 つの基底関数の 3 つの層を持つシンプルな KAN ネットワーク4 つの入力、3 つの基底関数の 3 つの層を持つシンプルな KAN ネットワーク

4 つの入力と 3 つの基底関数 (指数、正弦波、平方) を使ったおもちゃの問題の KAN ネットワーク

トレーニング後、ノードはデータに適合させるために二乗関数、正弦関数、指数関数に収束します。

これはおもちゃの問題なので、データの元となった方程式はわかっています。しかし実際には、 現実世界のデータの分布はわかりません。 この問題に対処する 1 つの方法は、B スプラインを使用することです。

スプラインとBスプライン

B スプラインの基本的な考え方は、任意の関数または曲線をより単純な関数または曲線の組み合わせとして表現できるというものです。これらの単純な関数は基底関数と呼ばれます。たとえば、下の図の赤い曲線を見てみましょう。簡単にするために、これを 2 つの基底関数だけで表現してみます。

これを2つの基底関数の和で表すと、3つの点に分解できます。これらの点は結び目と呼ばれます。結び目の数はいくつでもかまいません。 基底関数の組み合わせを制御するパラメータは 紀元前 2 つの曲線を「結合」すると、節点で不連続が生じることがあります。解決策は、滑らかな曲線が得られるように、節点での曲線の曲率を制約することです。たとえば、下の図の緑の矢印で示されているように、2 つの曲線の勾配が節点で同じになるように制約することができます。

Bスプラインと基底関数を説明する私の落書きBスプラインと基底関数を説明する私の落書き

ニューラルネットワークではそのような制約を課すことはできないため、彼らは 残差活性化関数 論文では、これはむしろ正規化のように機能します。実際には、これは以下の論文に見られるように、標準のスプライン関数に追加された SeLU アクティベーションです。

スプライングリッドとKANの細粒度化

KANは、新しいトレーニング方法を導入します。 細分化よく知られているのは、モデルにパラメータを追加する微調整です。しかし、細粒化の場合は、スプライングリッドの密度を向上させることができます。これは、 グリッド拡張。

標準的なニューラルネットワークの微調整に相当する細粒化を示す論文の図の一部標準的なニューラルネットワークの微調整に相当する細粒化を示す論文の図の一部

論文の上の図からわかるように、細粒度化とは、B スプラインのグリッドを単に密にすることで、より代表的になり、より強力になることです。

計算の複雑さ

スプラインの欠点の 1 つは、再帰的であるため計算コストが高いことです。スプラインの計算複雑度は O(N²LG) で、MLP の通常の複雑度 O(N²L) よりも高くなります。追加の複雑度はグリッド間隔 G によって生じます。

著者らは、次のことを示してこの固有の問題を擁護している。

  • KANに必要なパラメータの数は、同じ問題に対するMLPに比べて少ない。
  • KAN はトレーニング中に迅速かつ効率的に収束するため、必要なトレーニング時間が短縮されます。

これらの防御のグラフは結果のセクションで見ていきます。ここでは、KAN の別の特徴について詳しく見ていきましょう。

解釈可能性とKANレイヤーの選択

KAN は関数を学習するため、MLP のように特定のデータや問題に対して MLP の深さと幅を選択するだけで設計できる単なるブラック ボックスではありません。したがって、KAN をより解釈しやすくし、優れた KAN ネットワークを設計するには、以下の手順に従う必要があります。

  • スパース化。 まず、予想よりも大きな KAN ネットワークから始め、機械学習で一般的に行われる入力の代わりに活性化関数の L1 ノルムを導入することで正規化を導入します。
  • 剪定。 スパース ネットワークがトレーニングされると、設定された基準またはスコアで特定のしきい値を下回る不要なノードを削除できます。
  • 記号化。 与えられたデータがどのような関数で構成されているのか漠然とわかっている場合は、その関数を実行するノードをいくつか設定できます。これをシンボル化と呼びます。たとえば、音波を扱う場合、データのほとんどは正弦波であるため、ノードの一部を正弦波に設定することで作業が楽になります。フレームワークでは、次のようなインターフェイス関数を提供することでこれを可能にします。 fix_symbolic(l,i,j,f)どこ いいえ、いいえ、いいえ ノード層と位置、そして 関数は sine, cosine, log, etc

KANモデルをトレーニングするためのさまざまな手順KANモデルをトレーニングするためのさまざまな手順

訓練されたKANネットワークに到達するために論文で提案されたさまざまなステップの概要

さまざまな手順は、上の図にまとめられています。まず、大規模なネットワークから始めてスパース化 (手順 1) し、結果として得られたネットワークを整理 (手順 2)、いくつかのシンボル化を設定 (手順 3)、ネットワークをトレーニング (手順 4) し、最終的にトレーニング済みモデルに到達します。

実験と結果

上記の手順を使用して、5 つの異なるおもちゃの問題に対して KAN ネットワークをトレーニングし、その有効性を示し、MLP と比較しました。比較から得られた重要なポイントは次のとおりです。

  • KAN は MLP よりもはるかに高速にトレーニングされるため、固有の計算の複雑さが軽減されます。
  • KANはMLPがより多くのパラメータでできることを、より少ないパラメータで実現できる。
  • KANはMLPに比べて損失が急速に減少し、非常にスムーズに収束する。

最初のポイントは、5 つのおもちゃの問題に対する上のプロットの 5 つのプロット内の太い青い線で示されています。最後の 2 つのポイントは、損失曲線と、特定の問題を解決するためのパラメーター数を示す下のプロットで示されています。

論文の結果によると、KAN はより速く収束し、より少ないパラメータでより短時間でトレーニングできるため、計算の複雑さの問題を克服できる。論文の結果によると、KAN はより速く収束し、より少ないパラメータでより短時間でトレーニングできるため、計算の複雑さの問題を克服できる。

破滅的な忘却

次に注目すべき点は、破滅的な忘却問題では KAN が MLP よりもはるかに優れているということです。連続学習のためにシーケンス データを入力すると、KAN は MLP に比べて過去のデータをはるかによく記憶しているように見えます。これは下の図に示されています。KAN はデータ内の 5 つのフェーズを再現しますが、MLP は苦戦しています。

論文の図では、KAN は MLP よりも破滅的な忘却を克服するのに優れていることが示されています。論文の図では、KAN は MLP よりも破滅的な忘却を克服するのに優れていることが示されています。

その他の結果

彼らはまた、偏微分や物理方程式を含む問題に KAN を使用できることを示す広範な実験も行いました。それらの詳細に立ち入るよりも、KAN と MLP のどちらを選択するべきかについて見てみましょう。

KANとMLPの選択

以下の図は、MLPよりもKANを選ぶべき場合の指針を示しています。以下の場合はKANを選択してください。

  • 波形やグラフなどの構造データを扱っている場合
  • データから継続的に学習したい
  • トレーニング時間はあまり気にしないでください!
  • 高次元データ

論文のKANとMLPの図から選択論文のKANとMLPの図から選択

そうでなければ、MLP が勝ちます。

大声で叫ぶ

この記事が気に入ったら、ぜひフォローしてください ツイッター トップ AI ラボの研究の最新情報を毎週共有する場所はどこですか?

また、私のチャンネルを購読してください YouTubeチャンネル AIの概念と論文を視覚的に説明します。

考察と結論

私の意見では、KAN は、トランスフォーマーが NLP の世界を席巻したように、MLP に取って代わるために存在しているわけではありません。むしろ、KAN は数学や物理学のニッチな問題に役立つことが証明されるでしょう。それでも、さらに多くの改善が必要だと感じています。しかし、基礎モデルで解決されるビッグデータの問題に関しては、少なくとも現在の状態では、KAN にはまだまだ道のりが残っています。

さらに、トレーニング アプローチと KAN アーキテクチャの設計は、現代のニューラル ネットワークの設計とトレーニングの標準的な方法から逸脱する傾向があります。とはいえ、GitHub ページにはすでに 13,000 個のスターと 1,200 個のフォークがあり、何かが起こりそうな予感がします。このスペースを待ち、見守っていきましょう。

次の投稿
ITリーダーがシャドーITから学べること
前の投稿
新規IT候補者のためのトップキャリアパス

ノート:

AZ: 動物の世界、ペット、ペット、野生の自然に関するカテゴリー記事…
SP:スポーツカテゴリー。
New vs Ne: ニュースコラム。
Te: テクノロジー カテゴリ。
Gt:エンターテインメントカテゴリー。
Bt: 占い、星占い、超常現象、超常現象。
Ta:人生コラム。