SPONSORED

One-Class SVM(わんくらす えすぶいえむ)

最終更新:2026/4/27

One-Class SVMは、正常データのみを用いて、それ以外の異常データを識別するための教師なし機械学習アルゴリズムである。

別名・同義語 異常検知SVMOne-Class Classification

ポイント

特に異常検知や外れ値検出の分野で利用され、正常データの分布を学習することで、未知のデータが正常範囲から外れているかを判断する。

One-Class SVMとは

One-Class SVM(Support Vector Machine)は、従来のSVMとは異なり、一つのクラス(通常は正常データ)のみを用いて学習を行うアルゴリズムです。これは、異常データが少ない、または異常データの定義が困難な場合に有効です。例えば、製造業における不良品の検出、金融取引における不正検知ネットワークセキュリティにおける侵入検知などが挙げられます。

原理

One-Class SVMは、学習データ(正常データ)を特徴空間に写し、そのデータを囲むような超平面を求めます。この超平面は、できるだけ多くの学習データを囲み、かつ原点からの距離が最大になるように決定されます。学習済みのモデルは、新しいデータがこの超平面の内側にあるかどうかを判定することで、正常データであるか異常データであるかを識別します。

パラメータ

One-Class SVMには、主に以下のパラメータがあります。

  • ν (ニュー): 異常データの割合を制御するパラメータ。0から1の間の値をとり、値が小さいほど正常データに対する適合度が高くなります。
  • kernel (カーネル): 特徴空間への写像関数。線形カーネル、多項式カーネル、RBFカーネルなどが利用可能です。
  • γ (ガンマ): カーネル関数のパラメータ。RBFカーネルを使用する場合に重要で、値が大きいほど決定境界が複雑になります。

これらのパラメータを適切に調整することで、モデルの性能を向上させることができます。

利点と欠点

利点:

  • 異常データが少ない場合でも有効
  • 正常データの分布を学習するだけで済む
  • 高次元データにも適用可能

欠点:

  • パラメータ調整が難しい場合がある
  • 正常データの分が複雑な場合、性能が低下する可能性がある
  • 異常データの類によっては、検出が困難な場合がある

SPONSORED