Kolmogorov-Arnold NetworksによるFPGA上での超高速機械学習

Field-Programmable Gate Arrays (FPGAs)上に実装されたKolmogorov-Arnold Networks (KANs)は、サブマイクロ秒のレイテンシで機械学習の推論およびオンライン学習を可能にします。Multi-Layer Perceptrons (MLPs)の固定された活性化関数を、ハードウェアのルックアップテーブル (LUTs) にマッピングされた学習可能な単変数関数に置き換えることで、このアプローチは従来のKAN-FPGA実装と比較して2700倍の高速化を実現し、レイテンシとリソース効率の両面で最先端のFPGAアクセラレータを凌駕しています。

学習可能なルックアップテーブル・ニューラルネットワークとしてのKANs

KANsをFPGA上に実装することで、ニューラルネットワークをプロセッサ上の命令シーケンスとしてではなく、デジタルロジックとして直接実行することが可能になります。これにより、CPUやGPUに固有のスケジューリングやメモリアクセスのオーバーヘッドが排除され、ナノ秒スケールのレイテンシを必要とするアプリケーションにおいて極めて重要となります。

LUTベースのアプローチ

標準的なMLPでは、学習可能な重みはスカラーであり、活性化関数は固定されています。KANsは、ネットワークのエッジに学習可能な単変数関数を使用することで、これを逆転させます。これらの関数は、FPGA上でルックアップテーブル (LUTs) を使用して表現され、すべてのバイナリ入力の組み合わせに対して出力値を保持します。

多変数関数をLUTsとして表現することは、指数関数的なスケーリングのため計算上非実用的ですが、KANsは単変数活性化関数を合計します。この設計により、以下のことが可能になります:

  • Linear Scaling: 入力次元に対して、リソース使用量は指数関数的ではなく線形にスケールします。
  • Efficient Pruning: 重要でないネットワークコンポーネントは、ゼロに近い活性化関数を排除することで削除でき、必要なLUTsと加算器の数を削減できます。
  • Full Domain Coverage: KANの活性化関数は小さな有限のドメイン上で定義されているため、量子化の際に入力範囲全体をカバーできます。

推論の実装

固定モデルの推論の場合、KANsはソフトウェア (e.g., PyTorch) で学習され、その後FPGAにデプロイされます。このアーキテクチャは、活性化関数がLUTsを介して並列に計算され、その後加算器ツリー (adder tree) を使用して合計される固定小数点量子化スキームを使用します。このプロセスにより、フォワードパスの極めて高い実行速度が実現されます。

FPGA上でのリアルタイム・オンライン学習

オンライン学習は、新しいデータが到着するたびにモデルの挙動をリアルタイムで適応させることを可能にします。これは、核融合や量子制御のような非定常的なシステムにおいて不可欠です。フォワードパス、バックワードパス、および勾配更新をFPGA上の並列回路として直接実装することで、システムはサブマイクロ秒の時間スケールでモデルパラメータを更新できます。

B-Splineの局所性と疎な更新

オンチップ学習を可能にするために、システムは最終的な学習済み活性化関数ではなく、B-spline基底関数をLUTsに格納します。これは、学習中に係数が動的に更新されるため必要です。

B-splinesは、locality と呼ばれる重要な利点を提供します:任意の入力に対して、基底関数のうちごく一部のサブセット (spline order $k$ によって決定される) だけが非ゼロとなります。その結果、フォワードパスおよびバックワードパスのハードウェアロジックは、総グリッドセル数 $G$ ではなく $k$ に比例してスケールします。これにより、モデルはハードウェアリソースの使用量を比例的に増やすことなく、グリッドサイズを増やすことで表現力を向上させることができます。

境界付き活性化関数による安定性

固定小数点量子化は、MLPの勾配や重みの広範な大きさの範囲に苦戦することがよくあります。KANsは、B-splinesが有界であるため、この問題を軽減します。任意の入力 $x$ に対して、出力は常に最小および最大の係数の間に収まります:$\min(c_i) \le \sum B_i(x)c_i \le \max(c_i)$。

この有界性は、活性化関数と勾配の両方が予測可能な範囲内に留まることを保証し、量子化誤差を減少させ、ハードウェア上での勾配ベースの学習の安定性を向上させます。

パフォーマンスとハードウェアのスケーリング

KANベースのオンライン学習器は、サブマイクロ秒のレイテンシを維持しながら、50,000以上のパラメータにスケールすることが可能です。MLPsと比較して、KANsはグリッドサイズを拡張する際にリソース使用量がほぼ一定であり、ベンチマーク(qubit readout, non-stationary control, function approximation)において優れた収束性を示しています。

コミュニティの洞察と制約

レイテンシの向上は顕著ですが、このアーキテクチャは、Large Language Models (LLMs) のような高スループット・大規模モデルを目的としたものではありません。技術的な観察者による議論では、スループットよりもレイテンシに焦点が当てられていることが強調されています:

"I've been trying to hit 100,000tokens/s with a 3.28m dumb model, and even this is an order of magnitude too large to benefit. It appears to be focussed more on latency, than throughput."

さらに、このアプローチの実際的な有用性は、サブマイクロ秒の応答時間が厳格な要件となる、専門化された小規模モデルのタスクにおいて最も顕著になります。

Sources