ガウスカーネル完全解説:定義・性質・応用からパラメータ選択・近似手法まで

ガウスカーネルとは — 概要

ガウスカーネル(Gaussian kernel)は、機械学習・統計学・信号処理・画像処理など幅広い分野で使われる「類似度関数」や「平滑化フィルタ」の一種です。数学的にはガウス関数(正規分布の密度関数)に基づく関数で、2つの入力点の距離に応じて値が減衰します。連続値データの局所的な影響を捉える性質や、周波数成分を効果的に抑えるローパス特性があるため、SVMなどのカーネル法、カーネル密度推定(KDE)、ガウシアンブラー(画像のぼかし)などで広く利用されています。

数学的定義

最も一般的な形式は以下のような放射基底関数(radial basis function, RBF)型の定義です。

K(x, y) = exp(-||x - y||^2 / (2 σ^2))

  • ここで x, y はベクトル(R^d)で、||x - y|| はユークリッド距離、σ(シグマ)は「帯域幅(バンド幅)」「スケール」「標準偏差」に相当するパラメータです。
  • 機械学習ライブラリ(例: scikit-learn)ではしばしばパラメータ γ を用いて K(x,y)=exp(-γ ||x-y||^2) と表現され、γ = 1/(2σ^2) に対応します。

主な性質

  • 正定値性(positive definite):ガウスカーネルは正定値核であり、カーネル手法(SVM、カーネルPCA、ガウス過程など)で直接使えます(Mercerの定理に従う)。
  • 放射対称性:入力の差のノルムだけに依存する放射基底関数であり、回転に不変です。
  • 滑らかさ:無限回微分可能(analytic)で非常に滑らかな関数です。周波数領域でもガウスはガウスであり、強いローパス特性を持ちます。
  • ユニバーサル性・特徴写像:理論的にはガウスカーネルに対応する再生核ヒルベルト空間(RKHS)は非常に表現力が高く、多くの連続関数を任意精度で近似できます(「普遍カーネル」の性質)。
  • 局所性の制御:σ の値で局所スケールを制御でき、小さければ局所的な類似度、大きければグローバルな類似度になります。

用途と具体例

以下はガウスカーネルの代表的な応用です。

  • SVMやカーネル法:非線形分離を可能にするカーネル関数としてよく使われます。RBFカーネルは多くの問題で標準的な選択肢です。
  • ガウス過程回帰(Gaussian Process):共分散関数(カーネル)としてRBFを選ぶと、平滑で滑らかな予測関数が得られます。
  • カーネル密度推定(KDE):観測点ごとにガウスカーネルを重ねて確率密度を推定します。バンド幅選択が性能に直結します。
  • 画像処理(Gaussian blur):ピクセル周辺にガウス重みを掛けてぼかし(平滑化)を行います。畳み込みカーネルは離散化して窓サイズに切り取って用います。
  • 信号処理・スペクトル解析:ガウス窓は周波数分解能と時間分解能のトレードオフが良く、短時間フーリエ変換などで用いられます。

パラメータ(σ, γ)の選び方と影響

σ は核の「幅」や「感度」を決めます。実務上よく見られる問題は以下の通りです。

  • σ が小さい(γ が大きい)場合:類似度が急速に減衰し、非常に局所的な影響のみを捉える。ノイズに過剰適合(overfitting)するリスクが高い。
  • σ が大きい(γ が小さい)場合:類似度が緩やかに減衰し、ほとんどの点が似ていると見なされる。モデルが滑らかになり過ぎる(underfitting)の可能性がある。
  • 選択方法:交差検証(grid search、Bayesian optimization 等)で最適化するのが一般的。KDEやカーネル平滑化ではSilvermanのルールなどの経験的規則も用いられます。

計算面の注意点と近似法

ガウスカーネルは強力ですが、計算コストが高くなることが問題になる場面があります。特にデータ点が N 個ある場合、完全なカーネル行列は O(N^2) のメモリ/計算が必要です。

  • 近似手法:
    • Random Fourier Features(Rahimi & Recht):シフト不変カーネル(ガウスカーネル等)を低次元のランダム特徴空間で近似し、線形モデルで扱えるようにする方法。
    • Nyström法:部分的にサンプリングした列からカーネル行列を近似する低ランク近似。
    • 構造的高速アルゴリズム:近傍検索(KD-tree, Ball-tree)や近似最近傍を用いて局所性を利用する方法。
  • 数値安定性:非常に大きな距離や小さなγでは exp(-γ||x-y||^2) が丸め誤差でゼロになることがあります。実装では距離行列の計算や指数関数の扱いに注意。

画像処理におけるガウシアンカーネル(ガウシアンブラー)

画像に対するガウシアンカーネルは、2次元の離散畳み込みカーネルとして使われます。連続ガウス関数を切り取ってマスクを作り、合計が1になるように正規化してから畳み込みします。特徴:

  • エッジの急激な消失を抑えつつノイズを減らす滑らかなぼかし効果。
  • ウィンドウ幅(カーネルのサイズ)とσ の設定が重要。一般的にはカーネルサイズ ≈ 6σ を目安に切り取ることが多い(端での切り捨てを避けるため)。
  • Gaussian blur は線形フィルタであるため、計算的に高速化が可能(分離性:2D ガウスは x 軸と y 軸の1D ガウスに分離でき、O(N) を改善)。

理論的背景:フーリエ変換と周波数特性

ガウス関数はフーリエ変換に対して閉じており、ガウスのフーリエ変換もガウスになります。このためガウスカーネルは強いローパス効果を持ち、高周波ノイズを効果的に抑えます。機械学習の観点では、ガウスカーネルのスペクトル密度は全周波数帯域に対して非ゼロであるため、非常に柔軟に関数を表現できます(普遍性に寄与)。

ガウスカーネルと「ガウス分布」との関係

ガウスカーネルの式は正規分布の密度関数の形と同一ですが、用途と解釈が異なります。KDE ではガウス分布の密度をサンプルに重ねることで確率密度を推定します。一方、カーネル法の類似度関数としては、点間の近さを測る重み関数として用いられます。式は同形ですが、正規化定数や意味合いには注意が必要です。

実務上のヒント

  • 初期値:スケール不明なデータでは、データの平均距離(対になった点間距離の中央値や平均)を使って σ を初期値として設定すると安定しやすい(median heuristic)。
  • 特徴量スケーリング:異なる特徴スケールがあると距離が歪むため、標準化(平均0・分散1)やスケーリングを行ってからガウスカーネルを適用するのが望ましい。
  • モデル選択:SVM 等では σ と正則化パラメータ C の両方を交差検証で調整することが重要。
  • 離散化と端の扱い:画像処理ではカーネルを有限サイズに切り取り、端ではパディング(ゼロパディング・反射など)方針を決める必要がある。

まとめ

ガウスカーネルは「滑らかで局所的な類似度を与える」非常に汎用性の高い関数であり、SVM・ガウス過程・KDE・画像のぼかしなど多くの分野で不可欠なツールです。σ(または γ)によって局所性を制御できるため、適切な選択が性能に直結します。一方で大規模データに対しては計算量の問題があるため、Random Fourier Features や Nyström 法といった近似手法を利用することが現実的です。

参考文献