SVM ではカーネルをどう選ぶかが実用的な性能に大きく影響する. そこでカーネルを設計したり,カーネルをも適応的に変化させるような 研究が盛んに行われている.
最近ではバイオインフォマティクスやデータ・テキストマイニングといった 問題にカーネル法を適用することも多いので,入力空間 として 実数ベクトルだけでなく,文字列やグラフといったものを対象とすることも 多い. そういった複雑なものからいかに効率的にカーネル関数を計算するか も研究対象となっている.
代表的なものにストリングカーネルと呼ばれるものがあり,これは 有限アルファベット系列 , があったとき, それらに共通して含まれる部分文字列の数を の 値とするものである. この計算は再帰的な処理により効率的に行うことができ,長さ の部分文字 列までの計算が のオーダーの計算量で 済むことが知られている.
また,あるカーネルから別のカーネルを作ったり,複数のカーネルの組み合わせ によってより適切なカーネルを作ることができる.
Mercer カーネル があったとき, 以下で計算される も Mercer カーネルとなる. なお簡単のため 等を単に と略記する. ; ; ; ; ; ; ただし , は自然数. 他に,コンフォーマル変換 も半正定値性を保存する ( ).
SVM の性能を上げるためにカーネルを変形・学習するという研究はいくつか ある. Amari ら[4]はカーネル関数が定める入力空間の計量を定義し, サポートベクターの付近の解像度を上げるようにカーネルにコンフォーマル変換 を行うアプローチを検討している. また,筆者[3]は,SVM が特徴空間のマージンを最大化するのに対して, 入力空間でのマージンを最大化したほうが自然な場合があるのではないかという 考えからカーネルを変形するのと類似のアルゴリズムを提案した.
さて,Mercer カーネルをサンプルに対して計算して行列の形にしたものは, 結局は半正定値行列である. 半正定値行列は平均 0 の正規分布の分散と 同一視することにより,情報幾何的な扱いが可能となる[14]. Tsuda ら[22]はカーネル行列に欠損値があるとき,補助的な 情報を使ってその欠損値を EM アルゴリズムを用いて補完する方法を提案した. その他バイオインフォマティクスなどへの応用に関するカーネル設計については 津田[20]を参照されたい.