サポートベクターマシン(SVM)
Support Vector Machine
データを最も広い余白で分ける境界線を学習する機械学習手法。分類タスクで高い性能を発揮する古典的アルゴリズム。
サポートベクターマシン(SVM)とは
サポートベクターマシン(Support Vector Machine/SVM)は、データを分けるときに「最も広い余白(マージン)」を持つ境界線を学習する機械学習手法です。主に分類タスクで使われ、2クラス分類での強さで知られています。
2000年代にはディープラーニング以前の主力アルゴリズムの一つとして、画像認識や文章分類で広く利用されていました。
仕組み
- マージン最大化: 境界線と最も近いデータ点(サポートベクター)との距離を最大にする
- カーネル法: 直線では分けられないデータでも、高次元に写像して分けられるようにする
- 少データでも働きやすい: 境界付近のデータだけで決まるため、全データの影響を受けにくい
この「マージンを最大化する」という考え方が、**汎化性能(未知データへの強さ)**の高さにつながっています。
特徴
- 高次元データに強い: 特徴量の数が多くても扱える
- 少量データでも学習が安定しやすい
- 解釈はやや難しい: 決定木ほど「なぜその判断か」を説明しにくい
他手法との位置づけ
ディープラーニング登場以降、画像・音声などの大規模タスクでは主役の座を譲りましたが、少データ・高次元の分類では今も有効な選択肢です。テキスト分類や医療データ解析など、データが限られる領域で使われ続けています。
