Open1

Amazon SageMaker Random Cut Forest (RCF ランダムカットフォレスト)

marchanmarchan

Amazon SageMaker ランダムカットフォレスト(Random Cut Forest, RCF)

概要

  • 目的:教師なしで異常検知(外れ値・スパイク・パターン崩れ)を行う
  • 位置づけ:SageMakerの組み込みアルゴリズム
  • 適用データ:時系列・多次元の表形式数値データ(高次元/大規模にも対応)

何ができるか

  • ラベル不要で各データ点の異常スコアを算出
  • 時系列の急増減・周期崩れや一般的な外れ値を検出
  • ストリーミング/バッチのどちらにも適用しやすい

仕組み(要点)

  • データ空間をランダムな「カット(切断)」で分割し、多数のランダムカットツリーを生成
  • 点が浅い深さで孤立しやすいほど「珍しい」→ 異常スコアが高い
  • 多数決(森林)でスコアを安定化

主要ハイパーパラメータ

  • num_trees:木の本数(多いほど安定・計算増)
  • sample_size:各木が見るサンプル数(スコアの感度)
  • shingle_size:時系列の窓長(パターン文脈の取り込み)
  • time_decay:古いデータの影響を減衰(概念ドリフト対策)

入出力(SageMaker)

  • 学習入力:S3 の CSV / RecordIO(ラベル不要
  • 学習出力:モデルアーティファクト(.tar.gz → Model登録 → デプロイ)
  • 推論入力:特徴量(リアルタイム or バッチ)
  • 推論出力異常スコア(確率ではない→しきい値設計が必要)

代表ユースケース

  • システム監視:CPU/トラフィックの異常、障害予兆
  • IoT/製造:センサー異常・故障予知
  • 金融:取引の不正兆候(補助的検知)
  • ロジスティクス/アクセス:需要の急変・イベント検知

運用・評価の勘所

  • 前処理:標準化/正規化でスケール差を抑制
  • しきい値設計:上位x%・ROC/PR、レビュー工数と合わせて決定
  • 時系列shingle_size を調整、検知遅延も評価
  • 監視:スコア分布ドリフトを可視化し、しきい値を見直す

強みと限界

  • 強み:ラベル不要/多様な分布にロバスト/スケールしやすい
  • 限界:スコアは相対的(確率でない)/多次元では特徴ごとの寄与解釈が難しい

試験ポイント(MLS/G検定)

  • RCF=教師なしの異常検知、SageMaker組み込み
  • ランダムカットツリーのアンサンブルで異常スコアを出す
  • 時系列は shingle_size で文脈を取り込む
  • 出力は異常スコア→しきい値で判定

一言まとめ

RCFは「珍しさ」を数値化して異常を炙り出す、教師なしの高速異常検知(SageMaker組み込み)。