1クラスサポートベクターマシン―異常検知に用いられる教師なし学習の手法!―【Pythonプログラム付】

統計・機械学習

モータの分野では,巻線短絡などの電気系の異常からシャフトやベアリング不良などの機械系の異常まで,様々な異常を入手可能な少しの情報から検知したい場合があります。こうした課題を解決するため,機械学習には異常検知と呼ばれるタスクが存在します。本記事では,サポートベクターマシンを教師なし異常検知に応用した1クラスサポートベクターマシン(One-Class Support Vector Machine)について解説します。

関連記事はこちら↓

https://yuyumoyuyu.com/2021/01/24/supportvectormachine/ https://yuyumoyuyu.com/2021/01/10/supportvectorregression/

大きい画面で表示したい方はこちらからご覧ください。

pythonによるサンプルプログラムはGitHubで公開しています。

クリエイティブ・コモンズ・ライセンス

 

スライドの目次

  • はじめに
  • 教師なし学習(自己教師あり学習)
  • 2クラス分類SVMと1クラスSVMの違い
  • 1クラスSVMの問題点
  • 原点付近を異常データとみなす!
  • 正常データが原点に近い場合は?
  • カーネル関数による非線形写像の表現
  • カーネル関数のイメージ
  • 1クラスSVMのマージン最大化(ハードマージン)
  • 1クラスSVMのマージン最大化(ソフトマージン)
  • 1クラスSVMの定式化
  • マージン最大化問題の定式化
  • スラック変数による主問題の導出
  • ラグランジュの未定乗数法による変換
  • ラグランジュ関数の主変数による最小化
  • 主変数を削除する
  • 双対問題が完成
  • 分類境界の双対表現
  • ハイパーパラメータ ν の役割

参考文献

  • 竹内一郎・烏山昌幸,サポートベクトルマシン,講談社 (2015)

質問、コメント等ございましたら、下部のコメント欄,もしくはメールやTwitterよりご連絡ください。

タイトルとURLをコピーしました