Select Language

AI Technology Community

サポートベクトルマシン(support vector machines,SVM)

SVMの概要

サポートベクターマシン(support vector machines, SVM)は二値分類モデルであり、その基本モデルは特徴空間上で定義される間隔が最大の線形分類器です。

間隔が最大であるという点が、感知機との違いです。SVMにはカーネルトリックも含まれており、これにより実質的に非線形分類器となります。SVMの学習戦略は間隔の最大化であり、凸二次計画問題の求解として定式化することができ、正則化されたヒンジ損失関数の最小化問題と等価です。SVMの学習アルゴリズムは、凸二次計画問題の最適化アルゴリズムです。

SVMアルゴリズムの原理

SVM学習の基本的な考え方は、訓練データセットを正しく分割し、かつ幾何学的間隔が最大となる分離超平面を求めることです。

下図のように、 [公式] が分離超平面です。線形分離可能なデータセットの場合、このような超平面は無数に存在します(つまり感知機)が、幾何学的間隔が最大の分離超平面は唯一です。

導出する前に、いくつかの定義を示します。特徴空間上の訓練データセットが与えられたと仮定します。

[公式]

ここで、 [公式][公式][公式] は第 [公式] 個の特徴ベクトル、 [公式] はクラスラベルで、+1のとき正例、-1のとき負例です。さらに、訓練データセットが線形分離可能であると仮定します。

      幾何学的間隔

:与えられたデータセット [公式] と超平面 [公式] に対して、超平面に関するサンプル点 [公式] の幾何学的間隔を以下のように定義します。

[公式]

超平面に関するすべてのサンプル点の幾何学的間隔の最小値は、

[公式]

実際には、この距離は我々がいうサポートベクターから超平面までの距離です。

以上の定義に基づき、SVMモデルの最大分割超平面問題の求解は、以下の制約付き最適化問題として表すことができます。

[公式]

[公式]

制約条件の両辺を [公式] で割ると、

[公式]

[公式] はどちらもスカラーなので、式を簡潔にするために、

[公式]

[公式]

とすると、

[公式]

また、 [公式] を最大化することは、 [公式] を最大化することと等価であり、 [公式] を最小化することと等価です( [公式] は後で微分する際に式が簡潔になるようにするためのもので、結果に影響しません)。したがって、SVMモデルの最大分割超平面問題の求解は、以下の制約付き最適化問題として表すこともできます。

[公式]

[公式]

これは不等式制約付きの凸二次計画問題であり、ラグランジュ乗数法を用いてその双対問題(dual problem)を求めることができます。

まず、制約付きの元の目的関数を、制約のない新しく構築されたラグランジュ目的関数に変換します。

[公式]

ここで、 [公式] はラグランジュ乗数であり、 [公式] です。ここで、

[公式]

サンプル点が制約条件を満たさない場合、すなわち可行解領域外では、

[公式]

このとき、 [公式] を無限大に設定すると、 [公式] も無限大になります。

サンプル点が制約条件を満たす場合、すなわち可行解領域内では、

[公式]

このとき、

post
  • 3

    item of content
サポートベクターマシン(Support Vector Machines, SVM)は二値分類モデルであり、その基本モデルは特徴空間上で定義された最大の間隔を持つ線形分類器です。この間隔最大化により、SVMはパーセプトロンとは区別されます。また、SVMにはカーネルトリックが含まれており、これにより実質的に非線形分類器となります。SVMの学習戦略は間隔の最大化であり、これは凸二次計画問題の解決形式として表現され、正則化されたヒンジ損失関数の最小化問題と等価です。SVMの学習アルゴリズムは凸二次計画の最適化アルゴリズムを求解するものです。