アイソレーションフォレストは、決定木を応用してデータ群から外れ値(異常値)を効率的に検出する機械学習アルゴリズムです。正常データの密集具合に比べ、異常データは孤立(アイソレーション)しやすいという性質を利用し、ランダムな分割を繰り返して少ない分割回数で隔離できるデータを異常と判定します。大量の多次元データに対しても高速かつ省メモリで動作する点が特徴です。
アイソレーションフォレストとは
アイソレーションフォレスト(Isolation Forest)とは、データ群の中から「外れ値(異常値)」を効率よく検出するために用いられる、決定木をベースにした機械学習のアルゴリズムです。
詳しく解説
従来の多くの異常検知手法(一クラスSVMなど)は、正常なデータのパターンや密度をモデル化し、そこから外れたものを異常とみなすアプローチをとっていました。これに対し、アイソレーションフォレストは「異常なデータは数が少なく、正常なデータから離れた場所に存在する(孤立しやすい)」という前提に基づき、異常データを直接「隔離(アイソレート)」することを目指します。具体的には、特徴量をランダムに選択し、その最小値と最大値の間でランダムに分割値を決定してデータを切り分けていきます。この操作を繰り返して作成される決定木の集まり(フォレスト)において、正常なデータは切り分けに多くの回数(深い階層)を必要とするのに対し、異常なデータはわずかな分割回数(浅い階層)で孤立します。この経路の短さ(平均経路長)をスコア化することで、異常度を算出します。
具体例・使われ方
クレジットカードの不正利用検知において、普段の購買行動パターンから大きく外れた一回限りの高額決済や、短時間での複数国での利用といった「異常なトランザクション」をリアルタイムで検出する際に利用されます。また、工場のセンサーデータから機器の故障や異常の兆候を検知するシステムや、ネットワーク通信ログからサイバー攻撃や不正アクセスを検出するセキュリティ監視にも活用されています。
似た用語との違い
代表的な異常検知手法である「一クラスSVM(One-Class SVM)」がデータの境界線や密度を計算して分類するのに対し、アイソレーションフォレストは距離や密度の計算を直接行わず、ランダムな木構造の深度のみで判定します。そのため、高次元データに対しても計算量が少なく、処理が非常に高速であるという違いがあります。また、同じアンサンブル学習である「ランダムフォレスト」がラベル付きデータを用いた教師あり学習(分類・回帰)であるのに対し、アイソレーションフォレストはラベルを必要としない教師なし学習である点も異なります。
注意点
アイソレーションフォレストは、異常データが「少数の孤立した点」であるという仮定に依存しています。そのため、異常データ同士がクラスター(集団)を形成している場合や、正常データの分布が極めて複雑な場合には、正しく隔離できずに検出漏れが発生することがあります。また、無関係なノイズ特徴量が多すぎる場合、分割の精度が低下するため、適切な前処理(特徴選択)が必要です。