1. 序章

機械学習における異常と外れ値は不可分の概念です。 したがって、標準とは異なるインスタンスを検出して処理することは、堅牢で効率的なモデルを構築する上で重要な役割を果たします。

トレーニングフェーズの前にデータセットをクリーンアップすることに加えて、異常検出技術を適用して異常なインスタンスを見つけます。 よく知られているユースケースには、財務における不正検出、製造における欠陥検出、ITセキュリティにおける侵入検知、ヘルスケアにおける状態監視などがあります。

異常検出は、新規性の検出とノイズ除去にも密接に関連しています。 これらの領域はすべて、さまざまなデータインスタンスの検索と処理に重点を置いています。

ほとんどの場合、瞬間的なエラーは異常や目新しさを引き起こします。 ただし、異常値も観察できます。 さらに、データ内の基礎となるパターンは時間の経過とともに変化する可能性があります。

このチュートリアルでは、異常な観測と傾向の変化を検出するためのいくつかの基本的な用語に焦点を当てます。

2. ドリフト

モデルをトレーニングするとき、データと環境は定常であると想定します。 そこで、特定の条件下で観察された例に基づいて結果を予測するモデルを構築します。 ただし、状況が変化すると、データの動作も変化します。

時間の経過とともに、データの特徴または基礎となる分布または構造の間の関係の変化を観察します。 それをドリフトと呼びます。 

モデルの減衰は、時間の経過に伴うモデルの精度の低下の速度を測定します。 ドリフト率の影響を受けます。

ドリフトには2つのタイプがあります。

  • コンセプトドリフト
  • データドリフト

データドリフトは、入力データが予期しない方法で影響を受ける場合に発生します。 たとえば、データ収集ロジックを変更したり、新しいカテゴリを導入したりすると、データがドリフトします。 要約すると、データのドリフトは、入力データの分布が変化したときに発生します。

一方、コンセプトドリフトは、出力が時間の経過とともに変化するときに発生します。 その結果、データセットとターゲット変数の関係が変化します。 コンセプトドリフトには3つのタイプがあります。

  • 段階的なドリフト
  • 突然のドリフト
  • 繰り返しドリフト

段階的なドリフトとは、一連の小さな変動が時間の経過とともに蓄積することです。 たとえば、気候変動の影響は最小限であり、短期間では検出できません。

逆に、急激なドリフトは予測値を一気に変化させます。 たとえば、2008年の世界的な金融危機の影響は、さまざまな経済変数に突然見られます。

パターンが時間の経過とともに変化する、繰り返しのドリフトもあります。 一例として、アイスクリームの売上高は年間で変化します。

ドリフトの影響を中和するには、モデルを再調整するか、ビジネスプロセスを変更する必要があります。

3. 異常

異常は、例外的な状況でのみ発生する非典型的なイベントを定義します。その結果、異常値と間違われることがよくあります。

異常検出タスクには、次の3つのクラスがあります。

  • ポイント異常
  • 文脈異常
  • 集合的な異常

ポイント異常は、データセット内の残りの観測値と比較して、個々の観測値が異常である場合に発生します。 異常な発生は、一般的に簡単に見つけることができます。 たとえば、北半球で7月に雪を観測することは、点異常の優れた例です。

コンテキスト異常は、特定の観測値が特定のコンテキストに適合しない場合に発生します。 たとえば、1時間以内に100人の訪問者がいることは、WebサイトAの場合は異常ですが、WebサイトBの場合は一般的です。

集合的な異常は、一連の観測値が残りのデータセットに関して非典型的である場合に発生します。 例としては、時間範囲内で通常のトラフィックの半分しか受信していないWebサイトがあります。

z-score や四分位範囲分析などの統計モデルを適用して、データセットの異常を検出できます。 または、分離フォレストやSVMなどの教師あり学習アルゴリズムを利用することもできます。 または、クラスタリング次元削減などの半教師ありおよび教師なし学習アルゴリズムを使用することもできます。

異常の影響を排除するためにモデルを再調整する必要はありません。異常が存在するからといって、モデルが無効になったわけではないからです。

4. ノベルティ

ノベルティは、データセットとは異なる新しい観測値です。

ノベルティ検出の前処理されたデータセットからトレーニングプロセスを開始します。ここで、すべての外れ値が排除されます。 次に、検出アルゴリズムをトレーニングして、新しい観測値がトレーニングデータに適合するかどうかを出力します。 このコンテキストでは、外れ値もノベルティとして扱います。

ノベルティ検出は、半教師あり外れ値検出プロセスと考えることができます。 ノベルティの場合、それに答えるためにモデルやビジネスモデルを変更することはありません。

One-Class SVM は、よく知られているノベルティ検出アルゴリズムです。 初期データセットの観測のフロンティアを学習します。 次に、新しい観測ごとに同じ分布からのものであるかどうかを判断します。 その結果、フロンティアの外側にあるデータポイントは新規としてマークされます。

新しい観測値は外れ値として分類する必要があるか、リアルタイムではないため、新規性の検出はオンライントレーニングタスクで広く採用されています。

5. 比較

外れ値は、ドリフトだけでなく、異常値や新規性にも密接に関連しています。

ドリフトという用語は、データ体制の変化を指します。 これは、環境の変化またはビジネスロジックの違いのいずれかが原因である可能性があります。 その結果、データのドリフトはモデルの精度の低下につながります。 したがって、モデルを変更する必要があります。 

ドリフトは概念ですが、異常または新規性はデータインスタンスです。 ただし、どちらも外れ値と密接に関連しています。

簡単に言うと、異常はデータセット内の異常なデータインスタンスまたは予期しないデータインスタンスと考えることができます。 この用語は、外れ値と同じ意味で使用されることがよくあります。

同様に、新規性もデータの異常ですが、新しいインスタンスにのみ存在します。 それらは元のデータセットには存在しません。

外れ値、異常、または新規性の存在は、基礎となるデータ分布またはレジームの変更を意味しません。したがって、それらを検出してもモデルが無効になることはありません。 したがって、モデルを変更する必要はありません。 

6. 結論

この記事では、機械学習の外れ値に関連するいくつかの基本的な概念について学び、比較しました。

まず、ドリフトとそのタイプを定義しました:コンセプトとデータドリフト。 次に、異常の意味を示し、その種類の例を示しました。ポイント、コンテキスト、および集合的な異常です。 その後、ノベルティについて説明しました。

最後に、それらを比較して、それらの違いをよりよく理解し、結論を出しました。