(57)【要約】デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するためのシステムおよび方法が提供される。この方法は、複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスとして、およびデバイスプロファイルのための別個のベクトルとして表現すること（６２０）を含む。この方法はまた、各デバイスの挙動を表現するために、ベクトルのシーケンスから静的特徴、時間的特徴、および深層埋め込み特徴を抽出すること（６３０）を含む。この方法は、プロセッサデバイスによって、複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定すること（６５０）をさらに含む。
2021527885.tif 000002
【特許請求の範囲】
【請求項１】
デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するための方法であって、
複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスおよびデバイスプロファイルのための別個のベクトルとして表現すること（６２０）と、
各デバイスの挙動を表現するために前記ベクトルのシーケンスから少なくとも１つの静的特徴、少なくとも１つの時間的特徴、および少なくとも１つの深層埋め込み特徴を抽出すること（６３０）と、
プロセッサデバイスによって、前記複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定すること（６５０）とを含む方法。
【請求項２】
前記デバイスの状態を判定することは、さらに、
前記デバイスにて異常を検出することに基づいて、デバイスが所定の時間内に故障する可能性があるかどうかを判定することを含む、請求項１に記載の方法。
【請求項３】
前記複数のデバイスのそれぞれを、前記通信のためのベクトルのシーケンスおよび前記デバイスプロファイルのための別個のベクトルとして表現することは、さらに、
複数のデバイスのそれぞれについて、通信のシーケンスを符号化するシーケンスベクトルとして各デバイスを表現するシーケンスデータ構築を実行することと、
前記複数のデバイスのそれぞれについて、デバイスプロファイルベクトルとしてデバイスプロファイルデータを表現することとを含む、請求項１に記載の方法。
【請求項４】
前記ベクトルのシーケンスから前記少なくとも１つの静的特徴、前記少なくとも１つの時間的特徴、および前記少なくとも１つの深層埋め込み特徴を抽出することは、さらに、
前記複数のデバイスのそれぞれについて、少なくとも１つの所定のパターンを使用して、前記少なくとも１つの静的特徴および前記少なくとも１つの時間的特徴を抽出することを含む、請求項１に記載の方法。
【請求項５】
前記複数のデバイスのそれぞれを、前記通信のためのベクトルのシーケンスおよび前記デバイスプロファイルのための別個のベクトルとして表現することは、さらに、
前記複数のデバイスのそれぞれについて、深層埋め込み処理に基づいて少なくとも１つの深層埋め込み特徴を導出することと、
前記複数のデバイスのそれぞれについて、前記少なくとも１つの静的特徴、前記少なくとも１つの時間的特徴、および前記少なくとも１つの深層埋め込み特徴に基づいてベクトルのセットを決定することとを含む、請求項１に記載の方法。
【請求項６】
前記深層埋め込み処理は、ドメイン知識または所定のパターンを含まない、請求項５に記載の方法。
【請求項７】
前記複数のデバイスのそれぞれの前記ベクトル表現に基づいて、前記デバイスの状態を判定することは、さらに、
前記ベクトル表現に基づいて、教師なし異常検出を実行することを含む、請求項１に記載の方法。
【請求項８】
教師なし異常検出を実行することは、さらに、
異常を検出するために、ノイズを伴うアプリケーションの密度ベースの空間クラスタリング（ＤＢＳＣＡＮ）と、分離フォレストと、ワンクラスサポートベクトルマシンとの少なくとも１つを使用することを含む、請求項１に記載の方法。
【請求項９】
前記通信のそれぞれは、通信日、通信量、および通信タイプに関する情報を有する通信記録を含む、請求項１に記載の方法。
【請求項１０】
前記少なくとも１つの時間的特徴は、基礎となる点処理によって示唆される時間的相関を示す、請求項１に記載の方法。
【請求項１１】
前記少なくとも１つの静的特徴が、平均と、中央値と、分散とのうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項１２】
デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するためのコンピュータシステムであって、
メモリデバイスに動作可能に結合されたプロセッサデバイスを含み、前記プロセッサデバイスデバイスは、
複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスおよびデバイスプロファイルのための別個のベクトルとして表現し（４２０）、
各デバイスの挙動を表現するために前記ベクトルのシーケンスから少なくとも１つの静的特徴、少なくとも１つの時間的特徴、および少なくとも１つの深層埋め込み特徴を抽出し（４３０）、
前記複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定する（４４０）ように構成されたコンピュータシステム。
【請求項１３】
前記デバイスの状態を判定するとき、前記プロセッサデバイスは、さらに、
前記デバイスにて異常を検出することに基づいて、所定の時間内にデバイスが故障する可能性があるかどうかを判定するように構成される、請求項１２に記載のシステム。
【請求項１４】
前記複数のデバイスのそれぞれを、前記通信のためのベクトルのシーケンスおよび前記デバイスプロファイルのための別個のベクトルとして表現する場合、前記プロセッサデバイスは、さらに、
複数のデバイスのそれぞれについて、通信のシーケンスを符号化するシーケンスベクトルとして各デバイスを表現するシーケンスデータ構築を実行し、
前記複数のデバイスのそれぞれについて、デバイスプロファイルベクトルとしてデバイスプロファイルデータを表現するように構成される、請求項１２に記載のシステム。
【請求項１５】
前記少なくとも１つの静的特徴、前記少なくとも１つの時間的特徴、および前記少なくとも１つの深層埋め込み特徴を前記ベクトルのシーケンスから抽出するとき、前記プロセッサデバイスは、さらに、
前記複数のデバイスのそれぞれについて、少なくとも１つの所定のパターンを使用して、前記少なくとも１つの静的特徴および前記少なくとも１つの時間的特徴を抽出するように構成される、請求項１２に記載のシステム。
【請求項１６】
前記複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスおよびデバイスプロファイルのための別個のベクトルとして表現する場合、前記プロセッサデバイスは、さらに、
前記複数のデバイスのそれぞれについて、深層埋め込み処理に基づいて、少なくとも１つの深い埋め込み特徴を導出し、
前記複数のデバイスのそれぞれについて、少なくとも１つの静的特徴、少なくとも１つの時間的特徴、および少なくとも１つの深層埋め込み特徴に基づいて、ベクトルのセットを決定するように構成される、請求項１２に記載のシステム。
【請求項１７】
前記深層埋め込み処理は、ドメイン知識または所定のパターンを含まない、請求項１２に記載のシステム。
【請求項１８】
前記複数のデバイスのそれぞれの前記ベクトル表現に基づいて、前記デバイスの状態を判定するとき、前記プロセッサデバイスは、さらに、
前記ベクトル表現に基づいて、教師なし異常検出を実行するように構成される、請求項１２に記載のシステム。
【請求項１９】
教師なし異常検出を実行するとき、前記プロセッサデバイスは、さらに、
異常を検出するために、ノイズを伴うアプリケーションの密度ベースの空間クラスタリング（ＤＢＳＣＡＮ）と、分離フォレストと、ワンクラスサポートベクトルマシンとの少なくとも１つを使用するように構成される、請求項１２に記載のシステム。
【請求項２０】
デバイス挙動分析のための異種機能統合（ＨＦＩＤＢＡ）を実現するためのコンピュータプログラム製品であって、プログラム命令が具現化された一時的でないコンピュータ読み取り可能な記憶媒体を備えるコンピュータプログラム製品であって、
複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスとして、およびデバイスプロファイルのための別個のベクトルとして表現すること（６２０）と、
各デバイスの挙動を表現するためにベクトルのシーケンスから少なくとも１つの静的特徴、少なくとも１つの時間的特徴、および少なくとも１つの深層埋め込み特徴を抽出すること（６３０）と、
プロセッサデバイスによって、前記複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定する（６５０）こととを含む方法を前記コンピュータデバイスに実行させるために、前記コンピュータデバイスによって実行可能なプログラム命令を含む、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願情報
本出願は、２０１８年９月１８日に出願された米国仮特許出願第６２／７３２，６３３号、および２０１９年９月６日に出願された米国特許出願第１６／５６２，７５５号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【背景技術】
【０００２】
本発明は、深層学習に関し、より詳細には、コンピューティングシステムにおけるデバイス故障を予測するための深層学習の適用に関する。
関連技術の説明
【０００３】
深層学習は、人工ニューラルネットワークに基づく機械学習方法である。深層学習アーキテクチャは、コンピュータビジョン、スピーチ認識、自然言語処理、オーディオ認識、ソーシャルネットワークフィルタリング、機械翻訳、バイオインフォマティクス、ドラッグデザイン、医療画像解析、材料検査およびボードゲームプログラムなどを含む分野に適用することができる。深層学習は、教師あり、半教師あり、または教師なしでも良い。
【発明の概要】
【０００４】
本発明の一態様によれば、デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するための方法が提供される。この方法は、複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスとして、およびデバイスプロファイルのための別個のベクトルとして表現することを含む。この方法はまた、各デバイスの挙動を表現するために、ベクトルのシーケンスから静的特徴、時間的特徴、および深層埋め込み特徴を抽出することを含む。この方法は、プロセッサデバイスによって、複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定することをさらに含む。
【０００５】
本発明の別の態様によれば、デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するためのシステムが提供される。システムは、メモリデバイスに動作可能に結合されたプロセッサデバイスを含む。プロセッサデバイスは、複数のデバイスのそれぞれを、通信のためのベクトルのシーケンスとして、およびデバイスプロファイルのための別個のベクトルとして表現する。プロセッサデバイスはまた、各デバイスの挙動を表現するために、ベクトルのシーケンスから静的特徴、時間的特徴、および深層埋め込み特徴を抽出する。プロセッサデバイスはまた、複数のデバイスのそれぞれのベクトル表現に基づいてデバイスの状態を判定する。
【０００６】
これらおよび他の特徴および利点は、添付の図面に関連して読まれるべき、その例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【０００７】
本開示は、以下の図面を参照して、好ましい実施形態の以下の説明において詳細を提供する。
【０００８】
【図１】本発明の一実施形態によるニューラルネットワークの一般化された図である。
【０００９】
【図２】本発明の一実施形態による、人工ニューラルネットワーク（ＡＮＮ）アーキテクチャの図である。
【００１０】
【図３】本発明による、デバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）を実施するための環境を示すブロック図である。
【００１１】
【図４】本発明によるＨＦＩＤＢＡを実施するシステムを示すブロック図である。
【００１２】
【図５】本発明の一実施形態によるシーケンスデータ構築の処理を示すブロック図である。
【００１３】
【図６】本発明の一実施形態による挙動特徴抽出の処理を示すブロック図である。
【００１４】
【図７】本発明の一実施形態による、異常デバイス検出の処理を示すブロック図である。
【００１５】
【図８】本発明によるＨＦＩＤＢＡを実施する方法を示すフロー図である。
【発明を実施するための形態】
【００１６】
本発明の実施形態によれば、分散コンピュータシステムにおいてサーバ故障予測を実行するためのデバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）のためのシステムおよび方法が提供される。ここでは、デバイスはサーバである。サーバにインストールされているエージェントは、通信データとプロファイルデータとを収集し、通信データとプロファイルデータをデータベースに格納する。ＨＦＩＤＢＡを実装するシステムは、データベースを介して通信データおよびプロファイルデータにアクセスし、履歴データに基づいて予測モデルを構築し、将来のサーバ故障イベントを予測し、予測結果をシステム管理者などのエンドユーザに送信する。
【００１７】
本明細書に記載する実施形態は、完全にハードウェアであってもよく、完全にソフトウェアであってもよく、または、ハードウェアおよびソフトウェア要素の両方を含むものであってもよい。好ましい実施形態では、本発明は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがこれらに限定されないソフトウェアで実施される。
【００１８】
実施形態は、コンピュータまたは任意の命令実行システムによって、またはそれに関連して使用するプログラムコードを提供する、コンピュータ使用可能またはコンピュータ読み取り可能媒体からアクセス可能なコンピュータプログラム製品を含むことができる。コンピュータ使用可能媒体またはコンピュータ読み取り可能媒体は、命令実行システム、装置、またはデバイスによって、またはそれに関連して使用するためのプログラムを格納、通信、伝搬、またはトランスポートする任意の装置を含むことができる。媒体は、磁気、光学、電子、電磁気、赤外線、または半導体システム（または装置またはデバイス）、または伝搬媒体とすることができる。媒体は、半導体または固体ステートメモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、リジッド磁気ディスクおよび光ディスクなどのコンピュータ読み取り可能な記憶媒体を含むことができる。
【００１９】
各コンピュータプログラムは、本明細書に記載する手順を実行するために、記憶媒体またはデバイスがコンピュータによって読み取られるときに、コンピュータの動作を構成し制御するために、汎用または特殊目的のプログラム可能コンピュータによって読み取り可能な、機械読み取り可能な記憶媒体またはデバイス（例えば、プログラムメモリまたは磁気ディスク）に実体的に記憶することができる。本発明のシステムはまた、コンピュータプログラムで構成された、コンピュータ読み取り可能な記憶媒体で実施されるものと考えることができ、その場合、構成された記憶媒体は、コンピュータを特定の所定の方法で動作させて、本明細書に記載する機能を実行させる。
【００２０】
プログラムコードを記憶および／または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接的または間接的に結合された少なくとも１つのプロセッサを含んでもよい。メモリ要素は、プログラムコードの実際の実行中に採用されるローカルメモリ、バルクストレージ、および実行中にバルクストレージからコードが検索される回数を減らすために少なくとも何らかのプログラムコードの一時記憶を提供するキャッシュメモリを含むことができる。入力／出力またはＩ／Ｏデバイス（キーボード、ディスプレイ、ポインティングデバイスなどを含むが、これらに限定されない）は、直接または介在するＩ／Ｏコントローラを介してシステムに結合され得る。
【００２１】
介在する専用ネットワークまたは公衆ネットワークを介して、データ処理システムを他のデータ処理システムあるいはリモートプリンタまたはストレージデバイスに結合できるようにするために、ネットワークアダプタをシステムに結合することもできる。モデム、ケーブルモデム、およびイーサネットカードは、現在使用可能なネットワークアダプタのタイプの一例に過ぎない。
【００２２】
図１を参照すると、ニューラルネットワークの一般化された図が示される。
【００２３】
人工ニューラルネットワーク（ＡＮＮ）は、脳のような生体神経系に刺激される情報処理システムである。ＡＮＮの重要な要素は、情報処理システムの構造であり、これは、特定の問題を解決するために並列に動作する多くの高度に相互接続された処理要素（「ニューロン」と呼ばれる）を含む。ＡＮＮはさらに、ニューロン間に存在する重みの調整を含む学習を用いて、使用中に訓練される。ＡＮＮは、そのような学習プロセスを介して、パターン認識またはデータ分類などの特定のアプリケーションのために構成される。
【００２４】
ＡＮＮは、複雑または不正確なデータから意味を導出する能力を示し、パターンを抽出し、人間または他のコンピュータベースのシステムによって検出するには複雑すぎる傾向を検出するために使用することができる。ニューラルネットワークの構造は、一般に、１つまたは複数の「隠れた」ニューロン１０４に情報を提供する入力ニューロン１０２を有する。入力ニューロン１０２と隠れニューロン１０４との間の接続１０８は重み付けされ、次に、これらの重み付けされた入力は、複数層間の重み付けされた接続１０８と共に、隠れニューロン１０４内の何らかの関数に従って隠れニューロン１０４によって処理される。隠れニューロン１０４、ならびに異なる機能を実行するニューロンの任意の数の層が存在し得る。畳み込みニューラルネットワーク、最大出力ネットワーク等のような異なるニューラルネットワーク構造も存在する。最後に、出力ニューロン１０６のセットは、隠れニューロン１０４の最後のセットからの重み付けされた入力を受け入れ、処理する。
【００２５】
これは、情報が入力ニューロン１０２から出力ニューロン１０６に伝播する「フィードフォワード」計算を表す。フィードフォワード計算が完了すると、出力は訓練データから利用可能な所望の出力と比較される。訓練データに対する誤差は、「フィードバック」計算で処理され、隠れニューロン１０４および入力ニューロン１０２は、出力ニューロン１０６から後方に伝播する誤差に関する情報を受け取る。一旦、逆方向エラー伝播が完了すると、重み付けされた接続１０８が受信された誤差を考慮するように更新されて、重み付け更新が実行される。これは、単に１つの種類のＡＮＮを表す。
【００２６】
次に、同一の数字が同一または類似の要素を表し、最初に図２を参照すると、人工ニューラルネットワーク（ＡＮＮ）アーキテクチャ２００が示されている。本アーキテクチャは純粋に例示的なものであり、代わりに他のアーキテクチャまたはタイプのニューラルネットワークを使用することができることを理解されたい。本明細書で説明されるＡＮＮ実施形態は、高レベルの一般性でニューラルネットワーク計算の一般原理を示すことを意図して含まれており、いかなる形でも限定するものと解釈されるべきではない。
【００２７】
さらに、以下に記載されるニューロンの層およびそれらを接続する重みは、一般的な様式で記載され、任意の適切な程度またはタイプの相互接続性を有する任意のタイプのニューラルネットワーク層によって置き換えられ得る。例えば、層は、畳み込み層、プーリング層、完全に接続された層、ストップマックス層、または任意の他の適切なタイプのニューラルネットワーク層を含むことができる。さらに、必要に応じて層を追加または除去することができ、相互接続のより複雑な形態のために重りを省略することができる。
【００２８】
フィードフォワード動作中、１組の入力ニューロン２０２はそれぞれ、重み２０４のそれぞれの行に並列に入力信号を供給する。以下に説明するハードウェアの実施形態では、重み２０４は、重み出力が、重み２０４からそれぞれの隠れニューロン２０６に渡されて、隠れニューロン２０６への重み付けされた入力を表すように、それぞれの設定可能な値を有する。ソフトウェアの実施形態では、重み２０４は、関連する信号に対して乗算される係数値として単純に表されてもよい。各重みからの信号は列ごとに加算され、隠れニューロン２０６に流れる。
【００２９】
隠れニューロン２０６は、重み２０４の配列からの信号を使用して、何らかの計算を実行する。次に、隠れニューロン２０６は、それ自体の信号を別の重み２０４の配列に出力する。この配列は、同じ方法で、重み２０４の列が、それぞれの隠れニューロン２０６から信号を受け取り、行方向に加算し、出力ニューロン２０８に供給される重み付けされた信号出力を生成する。
【００３０】
配列および隠れニューロン２０６の追加の層を介在させることによって、任意の数のこれらの段階を実施できることを理解されたい。また、いくつかのニューロンは、配列に一定の出力を提供する定常ニューロン２０９であってもよいことに注意すべきである。定常ニューロン２０９は、入力ニューロン２０２および／または隠れニューロン２０６の間に存在することができ、フィードフォワード動作中にのみ使用される。
【００３１】
逆伝搬の間、出力ニューロン２０８は、重み２０４の配列を横切って戻る信号を提供する。出力層は、生成されたネットワーク応答を訓練データと比較し、誤差を計算する。誤差信号を誤差値に比例させることができる。この実施例では、重み２０４の行は、それぞれの出力ニューロン２０８から並列に信号を受け取り、列ごとに加算して隠れニューロン２０６に入力を提供する出力を生成する。隠れニューロン２０６は、重み付けされたフィードバック信号をそのフィードフォワード計算の導関数と結合し、フィードバック信号を重み２０４のそれぞれの列に出力する前に誤差値を記憶する。この逆伝搬は、すべての隠れニューロン２０６および入力ニューロン２０２が誤差値を記憶するまで、ネットワーク２００全体を通って進行する。
【００３２】
重み更新中、記憶された誤差値は、重み２０４の設定可能な値を更新するために使用される。このようにして、重み２０４は、ニューラルネットワーク２００をその工程における誤差に適応させるように訓練され得る。３つの動作モード、フィードフォワード、逆伝搬、および重み更新は、互いに重複しないことに留意されたい。
【００３３】
畳み込みニューラルネットワーク（ＣＮＮ）は、少なくとも１つの畳み込み層を有するＡＮＮのサブクラスである。ＣＮＮは、入力層および出力層、ならびに複数の隠れ層からなる。ＣＮＮの隠れ層は畳み込み層、整流線形ユニット（ＲＥＬＵ）層（例えば活性化関数）、プーリング層、完全接続層および規格化層から成る。畳み込み層は、入力に畳み込み演算を適用し、その結果を次の層に渡す。畳み込みは、視覚刺激に対する個々のニューロンの応答をエミュレートする。
【００３４】
ＣＮＮは、視覚画像の分析に適用することができる。ＣＮＮは、ローカル情報（例えば、画像内の隣接画素またはテキスト内の周囲の単語）を捕捉し、モデルの複雑さを低減することができる（例えば、より速い訓練、より少ない試料の必要性、およびオーバーフィッティングの機会の低減を可能にする）。
【００３５】
ＣＮＮは、最小限の前処理を必要とするように設計された多層パーセプトロンの変形を使用する。ＣＮＮは、それらの共有重みアーキテクチャおよび変換不変特性に基づいて、シフト不変または空間不変人工ニューラルネットワーク（ＳＩＡＮＮ）としても知られている。ＣＮＮは、画像および映像認識、推薦システム、画像分類、医用画像解析、および自然言語処理における用途に使用することができる。
【００３６】
ここで図３を参照すると、例示的な実施形態による、分散コンピュータシステムにおけるデバイス挙動解析のための異種特徴統合（ＨＦＩＤＢＡ）の方法を実施するためのシステム３００を示すブロック図が示されている。
【００３７】
ＨＦＩＤＢＡシステム３３０は、サーバ３０５（サーバ３０５−１，３０５−２，…，３０５−Ｎ−ｌ〜３０５−Ｎとして示される）として実行するデバイスを含む分散コンピュータシステムにおいて、サーバ故障予測を実行するモジュール、要素、デバイスおよび処理を実装する。サーバ３０５にインストールされたエージェント（図３には別途示されていない）は、サーバ３０５の通信データおよびプロファイルデータを収集し、通信データおよびプロファイルデータをデータベース３２０に記憶する（３１５）。ＨＦＩＤＢＡシステム３３０は、データベース３２０を介して通信データおよびプロファイルデータにアクセスし、履歴データに基づいて予測モデルを構築し、将来のサーバ故障イベントの予測を行い、図４〜図８に関して以下で説明するように、システム管理者などのエンドユーザ３４０に予測結果を送信する。
【００３８】
ここで図４を参照すると、ＨＦＩＤＢＡシステム３３０は、通信履歴を有するデバイスデータ（明確にするために以下「要素」と呼ぶが、要素、モジュール、またはデバイスとして実装することができる）４１０、シーケンスデータ構築（要素、モジュール、またはデバイス）４２０、挙動特徴抽出（要素、モジュール、またはデバイス）４３０、デバイス故障予測（要素、モジュール、またはデバイス）４４０、および予測結果（要素、モジュール、またはデバイス）４５０を含むことができる。
【００３９】
通信履歴要素を有するデバイスデータ４１０は、デバイスプロファイルデータおよび関連付けられた通信履歴を含む（またはそれへのアクセスを提供する）。例えば、通信履歴要素を有するデバイスデータ４１０は、データベース３２０とのインターフェースを提供することができる。
【００４０】
通信データは、個々のデバイス３０５の通信履歴を含む。一般に、各通信記録は、この通信がいつ行われたか、どのくらいのデータが含まれていたか、および通信タイプ、この通信の目的など、データおよび通信の多くの他の記述に関する情報を含む。各通信には、通信日付（時間）、通信量、通信種別に関する情報を含む通信記録を含むことができる。
【００４１】
デバイスプロファイルデータは、デバイスタイプ、製造業者などのデバイスに関連する情報を含む。
【００４２】
シーケンスデータ構築要素４２０は、各デバイス３０５を表現するために使用されるシーケンス（例えば、データ構造）を決定する。シーケンスデータ構築要素４２０は、通信データとデバイスプロファイルデータとの両方を符号化する各デバイス３０５のためのシーケンスを構築することができる。シーケンスは、図５に関して以下で詳細に説明するように、符号化された通信データおよびデバイスプロファイルデータのようなデータを表現するために使用されるデータ構造として格納（または操作／送信／受信／等）することができる。
【００４３】
挙動特徴抽出要素４３０は、シーケンスデータ構築要素４２０によって構築されたシーケンスから挙動特徴を抽出し、図６に関して以下で詳細に説明するように、特徴ベクトルによって各企業を表す。
【００４４】
デバイス故障予測４４０は、図７に関して以下に詳述されるように、ベクトルデータ（例えば、異常デバイスに関連するパターンのためのカスタマイズされた異常検出技術、ノイズを伴うアプリケーションの密度ベースの空間クラスタリング（ＤＢＳＣＡＮ）、分離フォレスト、ワンクラスのサポートベクトルマシンなど）のための異常デバイス検出技術を実装することによって、データサンプルを準備し、異常を発見する。デバイス故障は、デバイスが動作しなくなる危険性を含むことができる。
【００４５】
あるいは、デバイス故障予測４４０は、サイバーセキュリティリスクなどを発見するために実装され得る。サイバーセキュリティのシナリオでは、デバイス挙動分析の概念を適用することもできる。例えば、ネットワーク侵入検出の場合、各デバイスは時間の経過とともに異なる種類のパケットを受信し、一連のパケットイベントを形成する。デバイス挙動分析を適用することにより、ＨＦＩＤＢＡシステム３３０は、ネットワーク管理者の注意に値する悪意のある侵入である可能性があるパケットイベントに関して、異常な挙動を発見することができる。例えば、１つの通常のデバイスが通常、平均到着間隔時間１００ｍｓをもつ「開始」と「終了」パケットのペアを受信するとき、攻撃を受ける１つのデバイスは、平均到着間隔時間１０ｍｓをもつ「終了」パケットがない「開始」パケットを受信する可能性があった。ＨＦＩＤＢＡシステム３３０は、挙動のこれらの差を検出し、システム管理者に通知を提供する（および／または、疑わしいデバイスによるアクセスを制限するなど、事前にプログラムされたアクションを実行する）ことができる。
【００４６】
予測結果４５０は、エンドユーザ３４０に予測を報告し、ＨＦＩＤＢＡシステム３３０によって提供される所定の応答に基づいて、検出された挙動に対する所定の応答を実施する。例示的な実施形態では、予測結果４５０は、予測結果を決定し、報告する。
【００４７】
ＨＦＩＤＢＡシステム３３０は、これらの異常デバイスを検出するための希少な訓練データを回避するように、コンピューティングアーキテクチャにおいて異常デバイスの検出を実施する。例示的な実施形態は、訓練フェーズまたは異常なアクティビティのパターンの事前知識なしに、異常なデバイスを検出するための教師なし処理を実装することができる。さらに、ＨＦＩＤＢＡシステム３３０は、例えば、ドメインエキスパートの手動検証によって決定される、異常デバイスに関連付けられる（または、異常デバイスによって生成される）傾向がある所定のタイプの挙動に関する知識を組み込むことができる。ＨＦＩＤＢＡシステム３３０は、試験データに関する最低限の（例えば、少しまたは全く無いなど）事前知識で、教師なしの設定（疑わしいデバイスに関連する挙動のタイプの専門家のガイダンスおよび／または知識を必要とする教師ありの設定とは対照的に）での検出を可能にする。
【００４８】
ＨＦＩＤＢＡシステム３３０は、次元性の制限を克服する方法で、効果的な検出のために特徴工学を実行する。ＨＦＩＤＢＡシステム３３０は、無関係または雑音の多い多くの特徴を有するデータを含む、データの高次元性に対する感度を低減（例えば、軽減または無効化）することができる。ＨＦＩＤＢＡシステム３３０は、（教師ありの方法／処理とは対照的に）特徴を選択する能力がより弱い（または限られているなど）教師なしの処理を有する異常なデバイスを検出するように実装することができる。
【００４９】
ＨＦＩＤＢＡシステム３３０は、隠れた挙動特徴を回復することができる。ＨＦＩＤＢＡシステム３３０は、生の通信データを分析して、異常なデバイスを特徴付けるための有用な特徴を得て、それらを正常なデバイスから区別することができる。ＨＦＩＤＢＡシステム３３０は、通信の履歴全体において、ローカルであり、埋め込まれている（例えば、隠されている、難読化されているなど）有用な挙動特徴を識別することができる。
【００５０】
ＨＦＩＤＢＡシステム３３０は、デバイスデータをそれらの通信履歴と共に入力として受け取り、複数の視点から特徴抽出を実行し（例えば、エキスパートガイド学習方法と深層学習方法との一方または両方を使用して）、抽出された特徴に基づいて異常検出を実行し、検出結果を報告する一般的なフレームワークを実装する。
【００５１】
ＨＦＩＤＢＡシステム３３０は、１つのフェーズでＨＦＩＤＢＡを実施することができる。このフェーズでは、入力は、デバイスプロファイルおよび通信履歴を含む。ＨＦＩＤＢＡシステム３３０は、各デバイスのための通信シーケンスを構築し、特徴工学と深層学習方法とのうちの（１つまたは）両方によって、シーケンスから挙動特徴を抽出する。このようにして、ＨＦＩＤＢＡシステム３３０は、各デバイスをベクトルとして表現し、異常デバイスを検出するために（例えば、既製の、専用の、またはカスタム設計された）異常検出技術を利用する。
【００５２】
図５は、例示的な実施形態による、シーケンスデータ構築の処理を示すブロック図である。
【００５３】
図５に示すように、シーケンスデータ構築要素４２０は、通信データシーケンサ５０５およびデバイスプロファイルデータベクトル４１０を含む。シーケンスデータ構築要素４２０は、例えば、データベース３２０などから、入力デバイスプロファイルおよび通信履歴を受信する。シーケンスデータ構築要素４２０は、各デバイスを、通信のためのベクトルのシーケンスおよびデバイスプロファイルのための別個のベクトルとして表現する。
【００５４】
通信データシーケンサ５０５は、通信データからシーケンスを決定する。通信データシーケンサ５０５は、通信データ内の通信、および／または通信を拒否（またはキャンセル）する要求を含むこともできる。通信データシーケンサ５０５は、通信のシーケンス＜ｅ1，ｅ2，・・・，ｅn＞として各デバイスを表現し、ここでｅiはイベントであり、通信の情報を記録する。例示的な実施形態では、通信データシーケンサ５０５は、通信属性とプロファイル属性との両方を符号化するために、各イベントについて多次元ベクトルを使用する。通信データシーケンサ５０５は、通信の時間的順序に一致する各シーケンスにおけるイベント（または通信）間の順序を決定することができることに注意されたい。
【００５５】
デバイスプロファイルデータベクトル４１０は、例示的な実施形態では、時間不変または静的であるデバイスプロファイルデータを決定（またはアクセス、識別など）することができる。したがって、デバイスプロファイルデータベクトル４１０は、デバイスプロファイルデータを符号化するために別個の多次元ベクトルを使用する。デバイスプロファイルデータベクトル４１０は、関連するデバイス間のリンクを識別することができる。
【００５６】
シーケンスデータ構築要素４２０が実装された後、ＨＦＩＤＢＡシステム３３０は、各デバイスのシーケンス（通信用）およびベクトル（デバイスプロファイル用）を決定する。
【００５７】
図６は、例示的な実施形態による、挙動特徴抽出要素４３０によって実施される挙動特徴抽出の処理を示すブロック図である。
【００５８】
図５に示すように、挙動特徴抽出要素４３０は、特に、静的および時間的特徴抽出（要素、デバイスまたはモジュール）５２０および深層埋め込み特徴抽出（要素、デバイスまたはモジュール）５３０を使用して、挙動特徴抽出を実施する。挙動特徴抽出要素４３０は、静的、時間的、および深層埋め込み特徴を抽出して、異なる観点（視点、ビューなど）から各デバイスの挙動を表現する。
【００５９】
静的および時間的特徴抽出５２０は、関連するパターン（例えば、専門家によって発見されたパターン、ＨＦＩＤＢＡシステム３３０のユーザによって提供されたパターンなど）から静的特徴および時間的特徴を導出する。
【００６０】
静的および時間的特徴抽出５２０は、静的特徴が時間的に独立であると仮定する（または決定する）。静的特徴の時間的／シーケンス順序は、通信が時間的に独立しているので、デバイス故障予測に無関係であると判定される。この仮定（または条件）の下で、静的および時間的特徴抽出５２０は、ベクトルの集合と等価であるベクトルのシーケンスを決定する。この観点から、静的および時間的特徴抽出５２０は、各個々の次元（複数可）における平均、中央値、および分散などの統計的差異を区別するために、特徴の（例えば、豊富、多様、ラージなどの）クラスを導出する。
【００６１】
静的および時間的特徴抽出５２０は、時間的特徴が、正常デバイスと異常デバイスとの間の異なる既存の時間的パターンを含むと仮定する（または決定する）。これらの時間的特徴を抽出するために、静的および時間的特徴抽出５２０は、各シーケンスを学習済みモデルパラメータに要約するために、点処理（例えば、Ｈａｗｋｅ処理、Ｐｏｉｓｓｏｎ処理、手動特徴工学など）を利用する。このようにして、静的および時間的特徴抽出５２０は、各シーケンスをベクトルに圧縮し、各ベクトルは、基礎となる点処理によって示唆される時間的相関を示す。
【００６２】
深層埋め込み特徴抽出５３０は、深層埋め込み処理から特徴を導出する（例えば、深層埋め込み）。深層埋め込み特徴は、予め定義された深層学習技術からの中間ベクトル表現である。これらの深層埋め込み処理は、専門家からのドメイン知識または事前定義されたパターンを必要としない（または含まないなど）。教師ありの状況と教師なしの状況との両方において、深層埋め込み処理が適用可能である。
【００６３】
教師ありの状況（または設定）では、深層埋め込み特徴抽出５３０は、デバイスのサブセット（１つまたは複数）についてのラベル（例えば、正常および異常）があると仮定する。深層埋め込み特徴抽出５３０は、ラベル予測を実行するアーキテクチャを構築するために、反復ニューラルネットワークの変形（例えば、ゲート反復ユニット（ＧＲＵ）および長期短期メモリ（ＬＳＴＭ）など）を利用することができる。このアーキテクチャでは、分類層への入力として働くベクトル表現は、デバイスの埋め込みである。デバイスの埋め込みは、データを、デバイスに関連付けられた特定のプロパティ（例えば、相対的などの概念）が距離によって表され得る特徴表現に変換することを指す。分類は、所与のデータ点のクラスを予測する処理である。分類層は、相互に排他的なクラスを有するマルチクラス分類問題に対するクロスエントロピー損失を計算する。深層分類子は、入力データを深層学習ネットワーク内の特定のカテゴリにマッピングする。したがって、シーケンスのための深層分類器が訓練されると、深層分類器は、最後の分類層を除去することによって埋め込みシステムとして働くことができる。学習済みの深層分類器が埋め込みシステムとして扱われる場合、深層埋め込み特徴抽出５３０は、デバイスのシーケンスデータを深層分類器へ供給し、中間ベクトル表現を出力として抽出し、これを埋め込み特徴として使用することができる。
【００６４】
教師なしの状況（または設定）では、深層埋め込み特徴抽出５３０は、シーケンスをベクトル空間に投影するためにシーケンス用の自動エンコーダを利用することができる。自動エンコーダは、教師なしの方法で効率的なデータ符号化を学習することができる人工ニューラルネットワークの一種である。
【００６５】
要約すると、例示的な実施形態によれば、挙動特徴抽出要素４３０は、静的および時間的特徴抽出５２０および深層埋め込み特徴抽出５３０を実施して、各シーケンスを通過させ、シーケンスの静的、時間的、および深層埋め込み特徴を生成する。各デバイスについて、挙動特徴抽出要素４３０は、デバイスの静的、時間的、深層埋め込み特徴を長い特徴ベクトルと連結させ、これは、図６に関して後述するように、異常デバイスを検出するためのデバイス故障予測４４０で使用される。
【００６６】
図７は、例示的な実施形態による、デバイス故障予測４４０によって実装されるようなモデル訓練を示すブロック図である。
【００６７】
図７に示すように、デバイス故障予測４４０は、訓練データ準備（要素、デバイス、またはモジュール）５４０と、教師なし異常検出（要素、デバイス、またはモジュール）５５０とを含む。デバイス故障予測４４０は、デバイスのベクトル表現（図６に関して上述したように、挙動特徴抽出要素４３０によって提供される）から、デバイスの状態を正常または異常として判定するまでの判定処理を自動化することができる。
【００６８】
訓練データ準備５４０は、訓練データ準備を実行する。例えば、訓練データ準備５４０は、ベクトルのセットを準備することができ、そのそれぞれは、対応するデバイスのベクトル表現である。ベクトル表現は、静的、時間的、および深層埋め込み特徴を連結する長い特徴ベクトルを含むことができる。
【００６９】
教師なし異常検出５５０は、教師なし異常検出を実施する。与えられた入力ベクトル、教師なし異常検出５５０は、（例えば、既製の、カスタマイズされた、独自仕様の、その他の）ベクトルの異常検出技術（例えば、ＤＢＳＣＡＮ、分離フォレスト、またはワンクラスサポートベクトルマシン）を利用して、データの集合における異常を発見することができる。異常は、所定の時間内に故障する可能性が高いデバイスとして扱われ、エンドユーザに報告され得る。異常はまた、システムによるさらなるアクション（例えば、負荷バランシング、再ルーティング、再スケジュールメンテナンスなど）を実施するために使用され得る。
【００７０】
図８は、本発明による、企業パフォーマンス予測のためのＧＬＣＰＰを実施するための方法６００を示す流れ図である。
【００７１】
ブロック６１０において、システム３００はシーケンスデータ構築を実行する。例えば、システム３００は、各通信の時間に基づくシーケンスとして通信データを表現することができる。各デバイスは、通信＜ｅ1，ｅ2，・・・，ｅn＞のシーケンスとして表現することができ、ここで、ｅiはイベントであり、通信の情報を記録する。
【００７２】
ブロック６２０において、システム３００は、デバイスプロファイルデータをベクトルとして表現することができる。システム３００は、デバイスプロファイルデータを別個の多次元ベクトルとして符号化することができる。
【００７３】
ブロック６３０において、システム３００は、図６に関して上述したのと同様の方法で、関連するパターンを用いて静的および時間的特徴を抽出する。システム３００は、通信がデバイス故障予測に対して時間的に独立である静的特徴を抽出することができる。システム３００は、正常デバイスと異常デバイスとの間の異なる時間パターンを識別することができる。例えば、時間パターンは、一連の異なるタイプの通信などを含むことができる。１つの実施例では、正常なデバイスは、オープン→読み取り→書き込み→クローズなどの通常の通信パターンを持つことができるが、故障したデバイスは、オープン→オープン→オープンなどの異常なイベントシーケンスを生成する可能性がある。
【００７４】
ブロック６４０で、システム３００は、ドメイン知識または事前定義されたパターン（例えば、エキスパート）を含まない深層埋め込み処理から特徴を導出する。システム３００は、教師ありの状況と教師なしの状況との両方において、深層埋め込み処理から特徴を導出する。
【００７５】
ブロック６５０において、システム３００は、ベクトルのセットを準備し、そのそれぞれは、図６に関して上述したような対応するデバイスのベクトル表現である。
【００７６】
ブロック６６０において、システム３００は、教師なしの異常検出を実行する。入力ベクトルが与えられると、システム３００は、ベクトル（例えば、ＤＢＳＣＡＮ、孤立フォレスト、またはワンクラスサポートベクトルマシン）の異常検出技術（例えば、既製など）を利用して、データの集合内の異常を発見することができる。システム３００は、その異常を、所定の時間内に故障する可能性があるデバイスとして扱い、そのデバイスをエンドユーザに報告する。いくつかの例では、デバイスは、１週間、１ヶ月、１四半期、１年などの範囲内など、異なる予想される故障のタイムラインに基づいてグループ化することができる。
【００７７】
上記は、あらゆる点において例示的かつ例示的であると理解されるべきであり、限定的ではなく、本明細書に開示される本発明の範囲は、詳細な説明から決定されるべきではなく、むしろ特許法によって許容される全範囲に従って解釈されるような特許請求の範囲から決定されるべきである。本明細書に示され、説明される実施形態は、本発明の例示にすぎず、当業者は、本発明の範囲および精神から逸脱することなく、様々な修正を実施することができることを理解されたい。当業者は、本発明の範囲および精神から逸脱することなく、様々な他の特徴の組み合わせを実施することができる。このように、本発明の態様を、特許法によって要求される詳細および特殊性と共に説明してきたが、特許状によって保護されることが請求され、望まれるものは、添付の特許請求の範囲に記載されている。 
【図１】
2021527885.tif 000003
【図２】
2021527885.tif 000004
【図３】
2021527885.tif 000005
【図４】
2021527885.tif 000006
【図５】
2021527885.tif 000007
【図６】
2021527885.tif 000008
【図７】
2021527885.tif 000009
【図８】
2021527885.tif 000010
【国際調査報告】
2021527885.tif 000011
2021527885.tif 000012