Albertsr/Anomaly-Detection
UnSupervised and Semi-Supervise Anomaly Detection / IsolationForest / KernelPCA Detection / ADOA / etc.
何を解決するか
このプロジェクトは、テーブル形式の異常検出のための手書きPython実装のコレクションを提供します。これは、古典的な統計的手法から複雑なカーネルベースの手法まで、データ内の外れ値を特定するために使用された非監督および部分監督手法の教育的リソースおよび歴史的記録として機能します。
仕組み
リポジトリは以下の異常検出戦略を実装しています:
- PCAおよびカーネルPCAの再構成誤差: これらの手法は、主成分のサブセットを使用してデータを再構成することで異常を特定します。正確に再構成できないサンプル(再構成誤差が大きい)は異常としてマークされます。線形バージョンはSVD/NumPyを使用し、カーネルバージョンは非線形特徴空間を扱います。
- RobustPCC: 主成分分類器で、"主要"成分(元の変数における極端な値)と"次要"成分(異常な相関構造)の偏差を調べることで異常を特定します。
- その他の非監督手法: マハラノビス距離、Isolation Forest、および局所的外れ値要因(LOF)の実装とノートを含みます。
- 部分監督/PU学習: ADOA、KADOA(カーネルPCAを使用する実験的変種)、およびバイアス付きSVMや重み付きロジスティック回帰などのPositive-Unlabeled(PU)学習戦略を実装しています。
対象読者
異常検出の数学的基盤に興味がある学生、研究者、開発者向けに設計されており、これらのアルゴリズムを学ぶ際にコード中心のアプローチを好む方々に適しています。
特徴
- 手書き実装: 高レベルのライブラリに頼るのではなく、手作業でPythonで実装することに焦点を当てています。
- 教育的焦点: コードに数式のノート、論文の解説、視覚的説明を組み合わせています。
- 多様なアルゴリズムセット: 線形PCAから半監督PU学習まで、幅広い技術をカバーしています。
- 歴史的記録: 2018年当時のオリジナル実装と実験を保存し、著者の学習経路の進化を示しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト