(最初に下の「テーブル」をご覧ください)
「クラシック」サポートベクターマシンから始めましょう。これらは、2つのカテゴリを区別することを学びます。カテゴリAのいくつかの例を収集し、カテゴリBのいくつかを収集して、両方をSVMトレーニングアルゴリズムに渡します。SVMトレーニングアルゴリズムは、AをBから最もよく分離するライン/プレーン/ハイパープレーンを見つけます。男性と女性、アルファベットの文字など、明確に定義されたクラスと相互に排他的なクラスを区別する必要があります。
ただし、代わりに「A」を識別したいとします。これを分類の問題として扱うことができます。「A」と「非A」を区別するにはどうすればよいですか。犬の写真で構成されるトレーニングセットをまとめるのはかなり簡単ですが、非犬のトレーニングセットには何を入れるべきですか?犬ではないものは無限にあるため、犬以外のすべての物の包括的かつ代表的なトレーニングセットを構築するのは難しいかもしれません。代わりに、1クラスの分類子の使用を検討できます。従来の2クラス分類子は、AをBから分離する(ハイパー)プレーンを検出します。1クラスSVMは代わりに、すべてのクラス内ポイント(「A」)を原点から分離するライン/プレーン/ハイパープレーンを検出します;
Ensemble SVM「システム」は、実際には多くの2クラスSVM「サブユニット」の集まりです。各サブユニットは、単一の1つのクラスのポジティブな例と、他のクラスのネガティブな例の膨大なコレクション。したがって、犬と非犬の例を区別する(標準の2クラスSVM)か、犬と起源(1クラスのSVM)を区別する代わりに、各サブユニットは特定の犬(「Rex」など)と多くの非犬を区別します例。個々のサブユニットSVMはポジティブクラスの各例に対してトレーニングされているため、1つのSVMをRex用に、もう1つをFido用に、さらに別のSVMを午前6時に鳴く隣人の犬用などに使用します。これらのサブユニットSVMの出力は、特定の見本の1つだけでなく、犬がテストデータに現れるかどうかを判断するために調整および結合されます。また、個々のサブニットを1クラスのSVMのように考えることができると思います。1つの正の例が原点に位置するように座標空間がシフトされます。
要約すると、主な違いは次のとおりです。
トレーニングデータ
- 2つのクラスのSVM:良い例と悪い例
- 1クラスSVM:ポジティブな例のみ
- Ensemble SVM "システム":良い例と悪い例。各サブユニットは、単一の肯定的な例と多くの否定的な例で訓練されています。
マシン数
- 2つのクラスのSVM:1つ
- 1つのクラスSVM:1つ
- Ensemble SVM "システム":多く(肯定的な例ごとに1つのサブユニットマシン)
クラスごとの例(マシンごと)
- 2クラスSVM:多/多
- 1クラスSVM:多/ 1(原点で固定)
- Ensemble SVM「システム」:多/多
- アンサンブルSVM "サブユニット":1 /多数
後処理
- 2クラスSVM:不要
- 1クラスSVM:不要
- Ensemble SVM:各SVMの出力をクラスレベルの予測に融合する必要がありました。
追記:「[他のアプローチ]模範を、類似性カーネルを計算できる共通の特徴空間にマッピングする必要がある」とはどういう意味かを尋ねました。私は、彼らがクラスのすべてのメンバーが何らかの形で類似していること、伝統的な2クラスSVMは、仮定の下で動作することを意味すると思うし、あなたがカーネルを見つけたいので、その場所偉大なデンマーク人とdachsunds遠く離れた他のすべてから互いに近く、しかし。対照的に、アンサンブルSVMシステムは、それらの模範間の関係を心配することなく、デーンのようなORダックスフンドのようなORプードルのようなものであれば、犬と呼ぶことでこれを回避します。