カーネル法は、機械学習におけるパターン解析のためのアルゴリズムの一種であり、その最もよく知られた例がサポートベクターマシン(SVM)である。これらの手法は、カーネルトリックとして知られる数学的手法を利用して、非線形分類器を線形分類器に適用する。ユーザー指定の特徴写像によってデータを高次元特徴空間へ明示的に変換する代わりに、カーネル法はカーネル関数に依存し、これはその暗黙の空間内のデータ点のペア間の内積を計算する。このアプローチは、明示的な座標計算よりも計算コストが低いことが多く、表現定理によって保証されるように、有限次元の行列のみをユーザー入力として必要としながら、無限次元の空間で動作するアルゴリズムを可能にする。
「カーネル」という用語は、任意の2つの入力間の類似度を測定する類似度関数を指す。カーネル関数は、配列、グラフ、テキスト、画像、ベクトルなど、さまざまなデータ型に対して開発されている。カーネルを操作できるアルゴリズムには、カーネルパーセプトロン、サポートベクターマシン、ガウス過程、主成分分析(PCA)、正準相関分析、リッジ回帰、スペクトルクラスタリング、線形適応フィルタなどがある。ほとんどのカーネルアルゴリズムは、凸最適化または固有値問題に基づいており、統計的に十分な理論的根拠があり、その特性はラデマッハ複雑度などの統計的学習理論を用いて分析されることが多い。
動機と非形式的な説明
カーネル法は、インスタンスベースの学習器と見なすことができる。入力特徴に対応する固定のパラメータセットを学習するのではなく、トレーニング例を「記憶」し、それぞれに重みを学習する。ラベルのない入力に対して、予測は、その入力とすべてのトレーニング例との間の類似度を、カーネル関数を使用して重み付きで合計することによって計算される。二値分類器の場合、予測ラベルはこの合計の符号となる。このアプローチは、1960年代のカーネルパーセプトロンで最初に記述されたが、1990年代にSVMの台頭とともに重要性を増し、人工知能の研究と応用における標準的なツールとなった。
カーネルトリックと特徴空間
カーネルトリックは、カーネル法の背後にある中核的なアイデアである。これにより、アルゴリズムは、その空間内のデータの座標を計算することなく、高次元の暗黙の特徴空間で動作できる。代わりに、データ点のペアの画像間の内積のみが計算される。これは、明示的な変換よりも計算コストが低いことが多い。例えば、多項式カーネルは、データを特定の次数までのすべての単項式の空間に暗黙的に写像でき、元の入力空間では線形分離不可能なデータを線形分類器で分離できるようにする。カーネルマシン内の特徴写像は無限次元にすることもできるが、表現定理により、解はトレーニングデータ上のカーネル評価の有限な組み合わせとして表現できることが保証される。
一般的なカーネル関数
いくつかのカーネル関数が広く使用されている。線形カーネルは、単に2つのベクトルの内積である。多項式カーネルは、(x·x' + c)^d の形式で、特徴の積を考慮することで非線形性を導入する。動径基底関数(RBF)カーネルは、ガウスカーネルとも呼ばれ、exp(-γ||x - x'||^2) として定義され、十分なデータが与えられれば任意の連続関数を近似できるため、一般的なデフォルトの選択肢である。他のカーネルには、シグモイドカーネルや、テキスト用の文字列カーネルや構造化データ用のグラフカーネルなど、特定のデータ構造向けに設計されたカーネルがある。カーネルとそのパラメータの選択は、カーネルベースのアルゴリズムの性能に大きく影響する。
応用と限界
カーネル法は、コンピュータビジョン、バイオインフォマティクス、自然言語処理、信号処理など、多くの分野で応用されている。例えば、RBFカーネルを備えたSVMは、深層学習の台頭以前は、画像分類の主要なアプローチであった。しかし、カーネル法には顕著な限界がある。カーネル行列はサンプル数の二乗に比例してスケールするため、並列処理なしでは、数千を超えるサンプルのデータセットに対して計算が遅くなる。これにより、近似手法の開発や、大規模データをより効率的に処理できるニューラルネットワークアプローチへの移行が促進された。それでもなお、カーネル法は、その理論的保証と解釈可能性のために価値があり、専門的な応用で使用され続けている。
現代の機械学習との関係
カーネル法は、深層学習およびトランスフォーマーアーキテクチャと概念的なつながりを共有している。例えば、トランスフォーマーにおけるアテンションメカニズムは、クエリとキーの間の類似度スコアが計算されるため、カーネル平滑化の一種と見なすことができる。一部の研究者は、無限幅のニューラルネットワークとガウス過程(カーネル法)との間の関連性を調査している。深層学習は、スケーラビリティと特徴学習の点で、多くの実用的なアプリケーションにおいてカーネル法を大幅に凌駕しているが、カーネル法は依然として理論的理解に情報を与え、堅牢なベースラインを提供している。また、ニューラルネットワークにおけるカーネルベースの正則化など、ハイブリッドアプローチでも使用されている。
関連項目
- サポートベクターマシン
- 人工知能
- 機械学習
- 深層学習