異常検出とは?

異常検出は、一連のツールを使用して、データセットに現れた異常を特定し、対処します。

データパターン内の変化、外れ値、または標準的な傾向から外れた事象であり、想定されたものからの逸脱、または想定通りでないものを指します。

異常値は、パターンの中の異常な値であり、標準から外れていることや、何かがおかしいことを示しています。

ポイント/グローバル異常

他からあまりにもかけ離れた単一のデータを指します。

コンテキスト異常

あるデータセットのコンテキストでは異常であり、別のデータセットのコンテキストでは正常である異常を指します。時系列データのコンテキスト上の異常の中で最も一般的なタイプです。

集合的異常

データのサブセット全体が、より広範なデータセットと比較して異常である場合です。集合的異常を特定する際、個々のデータポイントは考慮されません。

データセットの傾向から外れている、まれな異常値やデータポイントを特定することです。異常は、不審な事象、誤作動、欠陥、または不正を示すことがあります。

異常検出における課題

異常検出システムは、人手をかけて分析するか、機械学習 (ML) を利用する必要があります。これには、特定分野の優れた知識と、統計的に起こりうる異常を顕在化する前に予測するという難しい要求が必要となるため、困難を伴います。

機械学習による異常検出

異常検出と機械学習のメリット

機械学習 (ML) は、手動による検出よりもタイムリーで、変化への適応性が高く、大規模なデータセットを容易に扱える性能を備えているため、異常検出に適しています。

非構造化データ

構造化されたデータには、データの背景の解釈と意味づけという基盤があり、これらのデータは理解の容易なデータセットの形に分析、整理されています。暗号化されたデータや非構造化データは、データのコンテキストを解釈、意味づけすることがほぼできないため、構造化されるまではアルゴリズムが役に立たない可能性があります。

大規模なデータセットの必要性

分析に適したデータセットは、正常なトレンドを確定するのに十分な量があり、異常値を正確に特定できる必要があります。少ないデータセットからはより有効な検出ができません。大量のデータセットを使用すると、傾向の一部となる可能性があるものや予測したほど異常ではないものを除外した異常値を選別することができます。このように、大きなデータセットによる検出にはメリットがあります。

必要とされる人材

機械学習アルゴリズムのトレーニングには、知識の豊富なエンジニアやデータサイエンティストが必要です。ソリューションの機能によっては、機械学習に数週間から数か月かかる場合があります。また、ソリューションによっては、異なるレベルの機械学習スキルが必要になります。

異常検出の 3 つの設定

教師あり

教師ありのデータは、各データポイントに「正常」または「異常」というラベルが付けられ、あらかじめ準備されています。すべての異常値は、モデルの学習前に特定されます。

クリーン

すべてのデータポイントには「正常」というラベルが貼られており、「異常」ポイントにはラベルが貼られていません。クリーンデータでは、クリーン設定内のすべてのデータポイントが「正常」であると仮定されるため、異常を検出する役割はデータモデラーに委ねられます。

教師なし

教師なしのデータは、「正常」や「異常」のポイントがラベル付けされていない状態で届きます。どの点が「正常」で「異常」なのかは、データモデラーが決定します。正確な結果が何であるかについての基礎や解釈はありません。

学習データに含まれていない新しい観測データの中から、これまでに観測されていないパターンを特定するプロセス。

異常を検出する最も簡単な方法は、データの広がりの中で、傾向や平均値、中央値、最頻値などの一般的な統計分布から逸脱しているような不規則なものを特定することです。

異常検出および状態監視に機械学習を使用する方法です。

デジタルトランスフォーメーション

デジタル化やインダストリー 4.0 とも呼ばれるデジタルトランスフォーメーションは、テクノロジーとデータを活用して生産性を合理化し、効率を高めるものです。機械やデバイスが接続され、無数の場所に大量のデータを転送できるようになったことで、データはますます入手しやすくなっています。そして、データから把握した情報を抽出、分析し、コストやダウンタイムを削減することが目的であり、機械学習やデータ分析がそのために大きな役割を果たします。

状態監視

どんな機械でも、その複雑さにかかわらず、調子が悪くなることがあります。これは、マシンの寿命が尽きたとか、使用を停止しなければならないということではなく、マシンの性能を完全かつ最適に回復させるためのメンテナンスが必要であることを意味します。大量のデータセットを分析することで、機械のメンテナンスや交換が必要になる時期の予測や予兆となりうる異常を検出することができます。

密度ベースのアプローチ

密度ベースの異常検出

密度ベースの異常検出は、すべての正常なデータポイントは密集した位置にあり、異常は離れて位置しているという仮定のもとに機能します。これは単純でノンパラメトリックな k 近傍法 (k-NN) アルゴリズムに基づいています。k-NN は一般的にマンハッタン距離、ミンコフスキー距離、ハミング距離、ユークリッド距離などの距離測定における類似性に基づいてデータを分類するために使用されます。

クラスタリングベースの異常検出

クラスタリングは、類似したデータポイントは類似したクラスターまたはグループに属する傾向があり、それはクラスターの中心 (すべての点の平均) からの距離によって決定されるという仮定に基づいています。クラスタリングのアルゴリズムである k 平均法は、類似したデータポイントのクラスターを「k」個作成します。異常とは、「k」個のクラスターから外れた点のことです。

サポートベクターマシン (SVM) ベースの異常検出

SVM では通常、教師ありの学習を行いますが、教師なしの学習環境でも異常を識別できるオプションがあります。ソフト境界を学習して学習セットに適用し、正常なデータインスタンスを境界内でクラスター化し、異常は学習した境界から外れた異常な点として識別されます。

時系列データとは、時間をかけて収集された一連の値のことです。各データポイントには、そのデータポイントが収集された日時と、そのデータポイントの値という 2 つの指標があります。データは継続的に収集され、それ自体を予測するのではなく、主に将来の出来事を予測するために使用されます。時系列の異常を使用して以下のものを検出することができます。

  1. アクティブユーザー
  2. Web ページビュー
  3. CPC
  4. CPL
  5. 直帰率
  6. 解約率
  7. 平均注文金額
  8. モバイルアプリのインストール率

時系列の異常検出により、特定された KPI における典型的な行動のベースラインを確立します。

  • データクリーニング
  • 導入の検出
  • 不正行為の検出
  • システムの健全性モニタリング
  • センサーネットワークにおけるイベント検出
  • エコシステムの障害

サービスパフォーマンスのための異常検出

検出において反応的なアプローチをとっていると、ダウンタイムやパフォーマンスの問題を引き起こすことがあり、これは、解決策が見つかる前にさらに問題を生じさせる結果を招いてしまいます。パフォーマンスの異常を検出することは、業務サービス内でいつ、なぜ問題が発生するかを予測するのに役立ちます。ほとんどの業界にメリットがあります。例えば、以下の 2 つの業界がその恩恵を受けることができます。

  • 電気通信会社:通信事業者の分析では膨大なデータセットが生成されますが、パフォーマンスを低下させるレイテンシー、ジッター、通話品質の低下を検出、防止するためには、高度なソリューションが重要となります。
  • 広告技術:広告オークション内ではトランザクションの発生速度が速いため、複雑なアプリケーションのパフォーマンスを監視するのが難しい場合があります。異常検出では、アプリケーションがクラッシュする前に、アプリケーションの問題を探すことができるため、広告オークション中のダウンタイムを防ぐことができます。

製品品質のための異常検出

製品は、できるだけエラーを起こさず、スムーズに動作する必要があります。製品の自然な進化により、新機能から A/B テストまで、あらゆるものに動作の異常が発生する可能性があります。動作の異常を継続的に監視することで、ダウンタイムや継続的な問題を防ぐことができます。ほとんどの業界が恩恵を受けることができますが、ここでは 2 つの例をご紹介します。

  • e コマース:異常検出では、価格の問題や季節ごとの変化の異常など、変わった動作や製品品質の問題を探すことができます。
  • フィンテック:金融業界ではミリ秒単位で取引が行われており、取引を監視するアプリケーションの安全性と一貫性を確保する必要があります。異常検出機能は、アプリケーションのパフォーマンスや運用に異常がないかを監視することで、ダウンタイムや不具合の発生を防ぐことができます。

ユーザーエクスペリエンスのための異常検出

サイトのサービスが低下すると、ユーザーエクスペリエンスが損なわれます。異常検出を行うことで、お客様が不満を感じて収益の低下につながる前に、異常に対応することができます。こうした異常検出の恩恵を受けられる業界には以下のようなものがあります。

  • ゲーム業界:ゲームは複雑であり、次々と入れ替わる複雑なコンテキストを手動で監視することはほぼ不可能です。人工知能 (AI) によって、障害などユーザーエクスペリエンスの不具合やエラーに対処することができます。
  • オンラインビジネス:オンラインビジネスの成功は UX に大きく依存しています。IT チームは、API エラー、サーバーのダウンタイム、ロード時間の不具合を監視し、これらを軽減する必要があります。異常検出による迅速な根本原因分析により、問題を素早く特定し、プラットフォーム、データセンター、オペレーティングシステムがダウンタイムをほとんど発生させることなく修理を受けられるようにします。

  • 自動化された異常検出では、データの順位付け、検出、グループ化を行いながら、正確なインサイトをリアルタイムで提供します。そのため、大規模なデータアナリストチームが不要になります。
  • 教師ありの機械学習と教師なしの機械学習:機械学習は、人間の監督や介入なしに行われるのが理想です。しかし、現状では数名のアナリストがベースラインデータを与え、時折、機械学習プログラムを監視する必要があります。
  • ハイブリッド:特定の異常に対して手動でルールを作成する柔軟性を備え、さまざまな規模に対応する異常検出機能です。

異常検出のニーズが発生すると、ソリューションを構築するのか、それともシステムを購入するのかという問題が生じます。決断の過程で考慮すべき重要な点として以下のものがあります。

  • 会社の規模
  • 処理しようとしているデータの量
  • 内部開発の能力
  • 拡張の予定
  • 利害関係者からの要望
  • 必要な予算
  • 対応できるチームの規模
  • 社内のデータサイエンスの専門知識

ビジネスに合わせて拡張できる機能

ServiceNow で、問題が発生する前に予測しましょう。