異常検知の基礎|手法・実装パターン・現場でつまずきやすいポイント
異常検知は、製造・医療・金融・セキュリティなど幅広い分野で AI 活用の中核を担う技術です。教師なし・教師あり・半教師ありの違い、代表的なアルゴリズム、実装パターン、評価方法、現場でのつまずきポイントを整理しました。
「いつもと違うこと」を検出する——異常検知(Anomaly Detection)は、製造業の外観検査、医療の疾患スクリーニング、金融の不正取引検知、IT のセキュリティ監視、設備の予知保全など、AI 活用の中核を担う技術です。
本記事では、異常検知の基礎、代表的な手法、実装パターン、現場でのつまずきやすいポイントを整理します。
異常検知のタスク分類
異常検知は、扱うデータと学習方法で複数の型に分かれます。
1. 教師なし異常検知(Unsupervised) 正常データのみを学習し、それから外れたものを異常と判定。不良サンプルが少ない・新型の異常がある場合に有効。多くの実用シーンで採用される。
2. 教師あり異常検知(Supervised) 正常・異常の両方にラベルがあり、分類問題として解く。異常のサンプルが十分にある場合に高精度。ただし、未知の異常パターンには弱い。
3. 半教師あり異常検知(Semi-supervised) 大量の正常データと少量の異常データを組み合わせる。現実の問題に最も近い設定で、実用上重要。
タスクの選択は、「異常データがどの程度集まるか」「未知の異常を検出する必要があるか」で決まります。
代表的な手法
異常検知には、シンプルなものから高度なものまで多様な手法があります。
1. 統計的手法
- 平均からの距離・標準偏差ベース
- 多変量正規分布
- 時系列の移動平均・標準偏差
- 箱ひげ図・四分位範囲
最もシンプルで、解釈性も高い。データが小規模・低次元の場合は十分に機能します。
2. クラスタリングベース
- DBSCAN、Isolation Forest、One-Class SVM
- データを「集まり」と「外れ値」に分ける
中規模データ、表形式データで広く使われます。
3. 距離・密度ベース
- LOF(Local Outlier Factor)
- k-NN ベースの異常スコア
近傍データの密度を基準に外れ値を検出。
4. 再構成誤差ベース(深層学習)
- オートエンコーダ
- 変分オートエンコーダ(VAE)
- GAN ベース異常検知
「正常データを綺麗に再構成できる」モデルを作り、再構成できないものを異常とする。画像・センサーデータで強い。
5. 自己教師あり学習
- データ拡張で正常パターンを学習
- 大規模事前学習モデル + ファインチューニング
近年急速に発展。少量データでも高精度。
6. 時系列特化
- LSTM ベースの予測誤差
- 季節性・トレンド分解
- 異常スコアの時間軸統合
設備の予知保全、金融時系列で広く使用。
実装パターン——シーン別
異常検知の実装は、対象シーン次第で大きく変わります。
1. 製造業の外観検査 良品画像を大量に集め、再構成誤差ベースのモデル(PatchCore、PaDiM など)で異常箇所を可視化。新規不良パターンへの適応がしやすい。
2. 設備の予知保全 時系列センサーデータ(振動、温度、電流)から、LSTM やオートエンコーダで「正常運転の予測モデル」を作り、予測との乖離で異常を検出。
3. 不正取引・サイバーセキュリティ 高次元の取引・ログデータから、Isolation Forest や教師あり分類モデルで不正パターンを検出。新規攻撃には未知異常検知も併用。
4. 医療画像での疾患検出 正常画像で学習し、病変箇所のヒートマップを生成。Vision Transformer ベースのアプローチが主流に。
5. ネットワーク監視 ログ・トラフィックの時系列異常検知。多次元の時系列を効率的に扱う手法が必要。
評価指標
異常検知は、サンプル数が極端に偏る(正常 >> 異常)ため、評価指標の選び方が特に重要です。
詳細は「AIモデルの評価指標を選ぶときの考え方」で整理した通り、Precision・Recall・F1 が主軸となります。
よく使う指標:
- Precision(適合率):「異常」判定したもののうち、本当に異常だった割合
- Recall(再現率):実際の異常のうち、検出できた割合
- F1 スコア:Precision と Recall のバランス
- AUC-ROC:閾値全体での性能
- PR-AUC:Precision-Recall 曲線下の面積、不均衡データに向く
- 検出時間:「異常発生から検出まで」何分・何時間か
「Accuracy(正解率)」は、異常検知ではほぼ意味がないことに注意。すべて「正常」と判定するだけで 99% の Accuracy が出てしまうため。
現場でつまずきやすい 6 ポイント
実装してみて気づくことが多い、現場の落とし穴を整理します。
1. 「正常」の定義が変わる
時間が経つと、設備の経年変化、製品仕様の変更、季節要因などで「正常」の範囲が変わります。固定モデルではすぐに精度が落ちるため、定期的な再学習・モデル更新の仕組みが必要です。
2. 異常スコアの閾値設定
モデルが出す「異常スコア」は連続値です。閾値次第で誤検知と見逃しのバランスが変わります。運用と検証データの両方を見ながら、業務要件に合わせて閾値を調整します。
3. 異常の種類が多すぎる
「異常」と一口に言っても、種類によって対応が違います。製造業なら、傷・変色・組立ミス・異物混入それぞれで対応が違うため、検出後の異常分類が必要なケースが多くあります。
4. ラベル付けの困難さ
「異常」のラベル付け自体が難しいことがあります。専門家でも判定が分かれる微妙なケース、過去には正常とされていたが今は異常とすべきケース、など。ラベル付け基準の継続改訂が必要です。
5. 異常データの偏り
少量しかない異常データが、特定の条件・特定の時期に偏っていることがあります。「集めたデータが、本番の異常を代表していない」状態は最も危険です。
6. アラート疲れ
誤検知が多いと、現場でアラートが無視されるようになります。「アラートを上げたら必ず確認に値する」というレベルまで Precision を上げる、または優先度を付ける設計が必要です。
異常検知システムを運用するときの考え方
異常検知は「作って終わり」ではなく、長期運用が前提のシステムです。
- 検出結果の人間による検証ループ
- 誤検知・見逃しの記録と分析
- 定期的なモデル評価と更新
- アラートからアクションへのプロセス設計
- データドリフト(データ分布の変化)の監視
「正解率の高さ」より、「現場で使い続けられる設計」が、長期的な成果を分けます。
まとめ
異常検知は、AI 活用の中で最も実用度が高く、ROI が見えやすい領域です。一方で、データ・閾値・運用設計が AI 知識以上に重要で、システム設計の総合力が問われます。
リサーチコーディネートでは、製造業・医療・畜産・自治体などで、異常検知システムの設計・実装・運用支援を多数手がけてきました。「自社で異常検知システムを作りたい」「既存システムの精度を上げたい」というご相談からお気軽にお問い合わせください。