2016-05-26 17 views
6

私は機械学習の分野では初めてのことであり、現在最も一般的な学習アルゴリズムがどのように機能するのか把握しようとしており、それぞれを適用するタイミングを理解しています。現時点では、サポートベクターマシンの仕組みを学習しており、カスタムカーネル機能に関する質問があります。
SVMの標準的な(線形、RBF、多項式)カーネルには、Webに関する多くの情報があります。しかし私はカスタムカーネル機能を使うのが妥当な時を理解したいと思っています。私の質問は次のとおりです。SVM用のカスタムカーネル、いつそれらを適用しますか?

1)SVMの他の可能なカーネルは何ですか?
2)どの状況でカスタムカーネルを適用するのですか?
3)カスタムカーネルはSVMの予測品質を大幅に改善できますか?

答えて

8

1)SVMには他にどのようなカーネルがありますか?

これらの無限に多くはあり

、(これまで網羅されてからである)pykernelsに実装されたものの一例リストを参照

https://github.com/gmum/pykernels

  • リニア
  • 多項式
  • RBF
  • 余弦類似性
  • 指数
  • ラプラス
  • 合理的な二次
  • 逆multiquadratic
  • コーシー
  • T-学生
  • ANOVA
  • 添加剤カイ^ 2
  • カイ^ 2
  • のMinMax
  • 最小/ヒストグラムction
  • 一般化ヒストグラム交差
  • スプライン
  • ソレンセン
  • 谷本
  • ウェーブレット
  • フーリエ
  • ログ(CPD)
  • 電源(CPD)

2)どの状況でカスタムカーネルを適用しますか? 2例では基本的に

  • 「シンプル」なもののデータは、いくつかの意味でそのための特定のある
  • 非常に悪い結果を与える - 1がそれを縮退している伝統的なカーネルを適用するために。たとえば、データがグラフ形式の場合、グラフは一定の大きさのベクトルではないため、RBFカーネルを適用することはできません。したがって、何らかの情報なしにこのオブジェクトを処理するグラフカーネルが必要です。場合によってはデータの洞察もあり、分類子を助けるかもしれない基本的な構造について知っています。その一例は、周期性である、あなたは、あなたのデータに影響をrecuringの種類があることを知っている - カスタムカーネルは、実質的に予測品質を向上させることができ、それは)

3などのカーネルの特定を探している価値があるかもしれませんSVMの?

はい、特に、そこにいつものように定義される(hypothethical)ベイズ最適なカーネル、存在する:一つは真の確率Pがある場合、換言すれば

K(x, y) = 1 iff arg max_l P(l|x) == arg max_l P(l|y) 

(リットル| X)ラベルLのポイントxに割り当てられている場合は、カーネルを作成することができます。カーネルは、データポイントを最も可能性の高いラベルの1つのホットエンコーディングにマッピングし、Bayesの最適な分類につながります(Bayesのリスクが得られます)。

実際には、あなたの問題を既に解決しているので、もちろんこのようなカーネルを手に入れることは不可能です。しかし、「最適なカーネル」という概念があることを示しています。古典的なものはどれもこのタイプではありません(あなたのデータは単純な分布から来ているものを除きます)。さらに、各カーネルは、以前の決定関数の一種であり、誘導された関数ファミリーで実際のものに近づけば近いほど、SVMで妥当な分類子を取得する可能性が高くなります。

+0

答えをありがとう - 私は1つを与えることを探していたが、上記の代わりにちょうど昼食に幸せ。カーネル固有のデータ構造(例えば、ベクトルの長さが変化するグラフ)に関する洞察は面白かった。 – javadba

関連する問題