[[根本原因メトリクスは時系列の変化点位置が近傍の最大のクラスタに存在する]]を検証するために、時系列の変化点に基づくクラスタリングを設計する。
各単変量時系列メトリクスに対してオフラインで変化点を検出する。その後、各変化点の位置を一次元の特徴量ベクトルとしてクラスタリングを実行する。複数のクラスタの中で最大のクラスタを選択する。
![[メトリクスの時系列の変化点に基づくクラスタリング 2023-05-23 10.58.41.excalidraw]]
## 1. [[変化点検出]]
- 検索手法:[[Binary segmentation]]
- コスト関数:[[ガウス過程に基づく損失関数]]
- パラメータ
- 変化点の個数は1
## 2. クラスタリング
- 距離尺度:[[ユークリッド距離]]
- [[HDBSCAN]]
- min_cluster_size=2, allow_single_cluster=True, cluster_selection_method="leaf", cluster_selection_epsilon=3.0
- クラスタの所属確率が閾値以下(0.5)であればクラスタから除外する
- cluster_selection_epsilonにより、ユークリッド距離が3未満、つまり隣接する変化点を強制的に併合させる。
- クラスタ選択:クラスタのメンバー数が最大のクラスタを選択し、選択されたクラスタ以外のクラスタに属するメトリクスを除外する
## 結果
- train-ticket ミドルウェアメトリクスなし **次元削減あり**:**AC@5 0.86**
- train-ticket ミドルウェアメトリクスなし 次元削減なし:AC@5 0.50
- train-ticket ミドルウェアメトリクスあり **次元削減あり**:**AC@5 0.50**
- train-ticket ミドルウェアメトリクスあり 次元削減なし:AC@5 0.15
- フェーズ1の[[単回帰トレンド定常モデルの残差和に基づく異常検知法]]を追加しても精度はかわらない。実行時間がわずかによくなる。