はじめに
2021年8月22日現在、Pythonの異常検知用パッケージであるPyODにガウス混合モデル(Gaussian Mixture Model; GMM)ベースの 異常検知が実装されていなかったので、それを実装したということである。
PyODのインストール
pipでインストール可能である。
pip3 install pyod
作成したクラス:GMM
すでに実装済のPyODのアルゴリズムを参考に、scikit-learnのGaussianMixtureクラスをラップする形で
GMMのクラスを作った。PyODのBaseDetectorクラスを継承するだけなので簡単である。
【ここをクリックしてコードを表示する】
gist.github.com
GMMに基づく異常検知のデモンストレーション
簡単なデモンストレーションのnotebookを作成した。今回作成したGMMクラスをgmm.pyとして保存した場合のnotebookである。 2次元の特徴空間において3つのガウス分布から乱数を発生させてデータを作成している。うまく動いているように見える。 gist.github.com
おわりに
みんなPyOD使おうぜ!(2回目)