(57)【要約】  多変量時系列データにおける時間的依存関係および時系列間依存関係を決定するための技術が提供される。例えば、本明細書に記載された実施形態は、コンピュータ実行可能コンポーネントを格納できるメモリを備えることができるシステムを含むことができる。このシステムは、メモリに格納されたコンピュータ実行可能コンポーネントを実行することができる、プロセッサを備えることもできる。これらのコンピュータ実行可能コンポーネントは、時系列データで回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、時間的文脈ベクトルに基づいて、デコードされるＲＮＮを決定して、時系列データにおける時間的依存関係を決定する計算コンポーネントと、デコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定する結合コンポーネントと、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダに基づいて、時系列データにおける時系列間依存関係および時系列データの予測値を決定する解析コンポーネントとを含むことができる。
2021531529.tif 000002
【特許請求の範囲】
【請求項１】
ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのシステムであって、
コンピュータ実行可能コンポーネントを格納するメモリと、
前記メモリに動作可能なように結合され、前記メモリに格納された前記コンピュータ実行可能コンポーネントを実行するプロセッサと、を備えており、前記コンピュータ実行可能コンポーネントが、
それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定するための計算コンポーネントと、
時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定するための結合コンポーネントと、
注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよび前記ＲＮＮ依存関係デコーダに基づいて１つまたは複数の時系列データの予測値を決定するための解析コンポーネントとを含んでいる、システム。
【請求項２】
前記結合コンポーネントが、前記少なくとも２つのデコードされるＲＮＮを結合するためにさらに動作可能であり、前記解析コンポーネントが、前記少なくとも２つの時系列データにおける時系列間依存関係を決定するためにさらに動作可能である、請求項１に記載のシステム。
【請求項３】
前記コンピュータ実行可能コンポーネントが、
前記少なくとも２つの時系列データを収集するデータ収集コンポーネントをさらに含んでおり、前記少なくとも２つの時系列データが多変量時系列データを含んでいる、請求項１または２に記載のシステム。
【請求項４】
前記計算コンポーネントが、前記少なくとも２つのＲＮＮを反復的にエンコードすることによって、収束したＲＮＮをさらに決定する、請求項１ないし３のいずれかに記載のシステム。
【請求項５】
前記計算コンポーネントが、前記それぞれの時系列データを有する前記少なくとも２つのＲＮＮを反復的にエンコードすることによって、収束したＲＮＮをさらに決定する、請求項１ないし４のいずれかに記載のシステム。
【請求項６】
前記少なくとも２つのＲＮＮをエンコードする前記計算コンポーネントと、前記少なくとも２つのデコードされるＲＮＮを結合する前記結合コンポーネントとが、共に同時に実行される、請求項１ないし５のいずれかに記載のシステム。
【請求項７】
前記ＲＮＮが長短期記憶ニューラル・ネットワークを含んでいる、請求項１ないし６のいずれかに記載のシステム。
【請求項８】
前記ＲＮＮが、前記ＲＮＮのゲーティング機構としてゲート付き回帰型ユニットを備えている、請求項１ないし７のいずれかに記載のシステム。
【請求項９】
前記システムが、前記少なくとも２つの時間的文脈ベクトルの前記決定のために、前記注意機構に基づくニューラル・ネットワークをさらに備えている、請求項１ないし８のいずれかに記載のシステム。
【請求項１０】
ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのコンピュータ実装方法であって、
プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定することと、
前記プロセッサに動作可能なように結合された結合コンポーネントによって、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、
前記プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよび前記ＲＮＮ依存関係デコーダに基づいて１つまたは複数の時系列データの予測値を決定することとを含んでいる、コンピュータ実装方法。
【請求項１１】
前記結合コンポーネントによって、前記少なくとも２つのデコードされるＲＮＮを結合することと、
前記解析コンポーネントによって、前記少なくとも２つの時系列データにおける時系列間依存関係を決定することとをさらに含んでいる、請求項１０に記載の方法。
【請求項１２】
前記プロセッサに動作可能なように結合されたデータ収集コンポーネントによって、前記少なくとも２つの時系列データを収集するデータ収集コンポーネントをさらに含んでおり、前記少なくとも２つの時系列データが多変量時系列データを含んでいる、請求項１０または１１に記載の方法。
【請求項１３】
前記計算コンポーネントによって、前記少なくとも２つのＲＮＮを反復的にエンコードすることによって収束したＲＮＮを決定することをさらに含んでいる、請求項１０ないし１２のいずれかに記載の方法。
【請求項１４】
前記計算コンポーネントによって、前記各時系列データで前記少なくとも２つのＲＮＮを反復的にエンコードすることによって収束したＲＮＮを決定することをさらに含んでいる、請求項１０ないし１３のいずれかに記載の方法。
【請求項１５】
前記計算コンポーネントによって前記少なくとも２つのＲＮＮをエンコードすることと、前記結合コンポーネントによって前記少なくとも２つのデコードされるＲＮＮを結合することとが、共に同時に実行される、請求項１０ないし１４のいずれかに記載の方法。
【請求項１６】
前記ＲＮＮが長短期記憶ニューラル・ネットワークを含んでいる、請求項１０ないし１５のいずれかに記載の方法。
【請求項１７】
前記ＲＮＮが、前記ＲＮＮのゲーティング機構としてゲート付き回帰型ユニットを備えている、請求項１０ないし１６のいずれかに記載の方法。
【請求項１８】
前記注意機構に基づくニューラル・ネットワークによって、前記少なくとも２つの時間的文脈ベクトルを決定することをさらに含んでいる、請求項１０ないし１７のいずれかに記載の方法。
【請求項１９】
ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのコンピュータ・プログラム製品であって、
処理回路によって読み取り可能な、請求項１０ないし１８のいずれかに記載の方法を実行するために前記処理回路によって実行されるための命令を格納しているコンピュータ可読ストレージ媒体を備えている、コンピュータ・プログラム製品。
【請求項２０】
コンピュータ可読媒体に格納された、デジタル・コンピュータの内部メモリに読み込み可能なコンピュータ・プログラムであって、前記プログラムがコンピュータ上で実行された場合に請求項１０ないし１８のいずれかに記載の方法を実行するためのソフトウェア・コード部分を含んでいる、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
１つまたは複数の実施形態は、ニューラル・ネットワークに関連しており、より詳細には、人工知能技術を使用する深層ニューラル・ネットワークでの多変量時系列データ間の依存関係の動的検出に関連している。
【背景技術】
【０００２】
多変量時系列のモデル化および予測は、機械学習の態様のことを指すことができる。一部の態様では、時系列のモデル化は、適切なモデルを決定し、次に、このモデルが時系列の構造を決定できるように、履歴データの集合に基づいてモデルをトレーニングすることを、含むことができる。
【０００３】
さらに、モデルの選択およびトレーニングは、時系列から観測される未来の値に関して、モデルの予測精度を測定することによって検証され得る。一部の態様では、過去のデータを理解することによって未来の値を予測するタスクは、時系列予測と呼ばれることがある。
【０００４】
動的（例えば、時間的に変化する）環境内で多変量時系列をモデル化して予測することは、時系列間の関係に関する仮定を容易に行うことができ、時系列の存続期間全体を通じてそのような仮定が安定して持続することができる静的環境よりも、困難になる可能性がある。さらに複雑な動的システムでは、時系列の相互依存関係が、時間と共に変化することがある。そのような分野では、実体は、高い予測精度を有するモデルに興味を持つだけでなく、特定の時点でさまざまな時系列データセット間で相互に与える影響へのより深い洞察を得たいと思うことがある。他の方法または従来の方法は、時系列間の相互作用における動的変化を捕捉する能力を欠いていることがある。
【０００５】
したがって、当技術分野において、前述の問題に対処する必要がある。
【発明の概要】
【０００６】
第１の態様から見ると、本発明は、コンピュータ実行可能コンポーネントを格納するメモリと、メモリに動作可能なように結合され、メモリに格納されたコンピュータ実行可能コンポーネントを実行するプロセッサとを備えている、ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのシステムを提供し、コンピュータ実行可能コンポーネントは、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ：recurrent neural network）をエンコードし、少なくとも２つの時間的文脈ベクトル（temporal context vectors）に基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定するための計算コンポーネントと、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定するための結合コンポーネントと、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて１つまたは複数の時系列データの予測値を決定するための解析コンポーネントとを含む。
【０００７】
さらに別の態様から見ると、本発明は、コンピュータ実行可能コンポーネントを格納するメモリと、メモリに動作可能なように結合され、メモリに格納されたコンピュータ実行可能コンポーネントを実行するプロセッサとを備えているシステムを提供し、コンピュータ実行可能コンポーネントは、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定する計算コンポーネントと、少なくとも２つのデコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定する結合コンポーネントと、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、少なくとも２つの時系列データにおける時系列間依存関係および１つまたは複数の時系列データの予測値を決定する解析コンポーネントと含む。
【０００８】
さらに別の態様から見ると、本発明は、ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのコンピュータ実装方法を提供し、この方法は、プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定することと、プロセッサに動作可能なように結合された結合コンポーネントによって、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、１つまたは複数の時系列データの予測値を決定することとを含む。
【０００９】
さらに別の態様から見ると、本発明は、コンピュータ実装方法を提供し、この方法は、プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定することと、プロセッサに動作可能なように結合された結合コンポーネントによって、少なくとも２つのデコードされるＲＮＮを結合することと、結合コンポーネントによって、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、少なくとも２つの時系列データにおける時系列間依存関係および１つまたは複数の時系列データの予測値を決定することとを含む。
【００１０】
さらに別の態様から見ると、本発明は、ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのコンピュータ・プログラム製品を提供し、このコンピュータ・プログラム製品は、処理回路によって読み取り可能な、本発明のステップを実行するための方法を実行するためにこの処理回路によって実行される命令を格納している、コンピュータ可読ストレージ媒体を備えている。
【００１１】
さらに別の態様から見ると、本発明は、コンピュータ可読媒体に格納された、デジタル・コンピュータの内部メモリに読み込み可能なコンピュータ・プログラムを提供し、このコンピュータ・プログラムは、コンピュータ上で実行された場合に本発明のステップを実行するためのソフトウェア・コード部分を含んでいる。
【００１２】
以下に、本開示の１つまたは複数の実施形態の基本的理解を提示するための概要を示す。この概要は、主要な要素または重要な要素を特定するよう意図されておらず、特定の実施形態の範囲または特許請求の範囲を正確に説明するよう意図されていない。この概要の唯一の目的は、後で提示されるより詳細な説明のための前置きとして、概念を簡略化された形態で提示することである。本明細書に記載された１つまたは複数の実施形態では、ニューラル・ネットワークに基づく人工知能技術を使用して多変量時系列データにおける関係を自律的に決定できるシステム、コンピュータ実装方法、装置、またはコンピュータ・プログラム製品、あるいはその組み合わせが説明される。
【００１３】
一実施形態によれば、システムが提供される。このシステムは、コンピュータ実行可能コンポーネントを格納するメモリを含むことができる。このシステムは、メモリに動作可能なように結合され、メモリに格納されたコンピュータ実行可能コンポーネントを実行することができる、プロセッサを含むこともできる。これらのコンピュータ実行可能コンポーネントは、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定する計算コンポーネントと、少なくとも２つのデコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定する結合コンポーネントと、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、少なくとも２つの時系列データにおける時系列間依存関係および１つまたは複数の時系列データの予測値を決定する解析コンポーネントとを含むことができる。
【００１４】
１つまたは複数の実施形態例によれば、コンピュータ実装方法が提供される。このコンピュータ実装方法は、プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つのＲＮＮをエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列における時間的依存関係を決定することと、プロセッサに動作可能なように結合された結合コンポーネントによって、少なくとも２つのデコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、１つまたは複数の時系列データの予測値を決定することとを含む。
【００１５】
さらに１つまたは複数の実施形態例によれば、コンピュータ・プログラム製品が提供される。このコンピュータ・プログラム製品は、プログラム命令が具現化されているコンピュータ可読ストレージ媒体を含むことができる。これらのプログラム命令は、プロセッサに、プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つのＲＮＮをエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて、少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列における時間的依存関係を決定することと、プロセッサに動作可能なように結合された結合コンポーネントによって、少なくとも２つのデコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよびＲＮＮ依存関係デコーダに基づいて、少なくとも２つの時系列データにおける時系列間依存関係および１つまたは複数の時系列データの予測値を決定することとを実行させるように、プロセッサによって実行可能であることができる。
【００１６】
ここで、添付の図面を例として参照し、本発明の実施形態について説明する。
【図面の簡単な説明】
【００１７】
【図１】本明細書に記載された１つまたは複数の実施形態に従って、ニューラル・ネットワークを採用する多変量時系列データ間の依存関係の動的検出のための例示的な非限定的システムのブロック図を示す図である。
【図２】本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の依存関係のニューラル・ネットワークに基づく検出のために開示されたモデルの態様が採用され得る、例示的な製造環境の概略図を示す図である。
【図３】本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の依存関係のニューラル・ネットワークに基づく検出のために開示されたモデルの態様が採用され得る、例示的なネットワーク環境を示す図である。
【図４】本明細書に記載された１つまたは複数の実施形態に従って、開示されたモデルの計算コンポーネントおよび解析コンポーネントによって採用され得る例示的なニューラル・ネットワーク・アーキテクチャを示す図である。
【図５】本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の時間的依存関係および相互依存関係の動的検出のために計算コンポーネント、結合コンポーネント、および解析コンポーネントによって使用され得るモデルの例を示す図である。
【図６Ａ】本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の時間的依存関係および相互依存関係のニューラル・ネットワークに基づく検出のためのモデルの他の例を示す図である。
【図６Ｂ】本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の時間的依存関係および相互依存関係のニューラル・ネットワークに基づく検出のためのモデルの他の例を示す図である。
【図７】本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データからモデルの解析コンポーネントによって決定された変数における相互依存関係の例を示す図である。
【図８】本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データからモデルの解析コンポーネントによって生成されたセンサ相互作用グラフの例を示す図である。
【図９】本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データからモデルの解析コンポーネントによって生成された予測されたセンサ値の例を示す図である。
【図１０】本明細書に記載された１つまたは複数の実施形態に従って、ルールに基づく合成データセットからモデルによって生成された予測値の例を示す図である。
【図１１】本明細書に記載された１つまたは複数の実施形態に従って、モデルによって決定されたルールに基づく合成データセットにおける解析コンポーネントによって生成された時間的依存関係および相互依存関係の例を示す図である。
【図１２】本明細書に記載された１つまたは複数の実施形態に従って、開示されたＡＩシステムおよびアルゴリズムの態様を動作させるための例示的なフローチャートを示す図である。
【図１３】本明細書に記載された１つまたは複数の実施形態を容易にすることができる例示的な非限定的動作環境のブロック図を示す図である。
【図１４】本明細書に記載された１つまたは複数の実施形態に従ってクラウド・コンピューティング環境を示す図である。
【図１５】本明細書に記載された１つまたは複数の実施形態に従って抽象モデル・レイヤを示す図である。
【発明を実施するための形態】
【００１８】
以下の詳細な説明は、例にすぎず、実施形態、または実施形態の適用もしくは使用、あるいはその両方を制限するよう意図されていない。さらに、先行する「背景技術」または「発明の概要」のセクション、あるいは「発明を実施するための形態」のセクションで提示された、明示されたか、または暗示されたいずれかの情報によって制約されるという意図はない。
【００１９】
ここで、図面を参照して１つまたは複数の実施形態が説明され、図面全体を通じて、類似する参照番号が、類似する要素を参照するために使用されている。以下の説明では、説明の目的で、１つまたは複数の実施形態を十分に理解できるように、多数の特定の詳細が示されている。しかし、これらの特定の詳細がなくても、さまざまな事例において、１つまたは複数の実施形態が実践され得るということは明らかである。
【００２０】
本開示にはクラウド・コンピューティングに関する詳細な説明が含まれているが、本明細書において示された教示の実装は、クラウド・コンピューティング環境に限定されないと理解されるべきである。本開示の実施形態は、現在既知であるか、または今後開発される任意のその他の種類のコンピューティング環境と組み合わせて実装できる。
【００２１】
下でさらに詳細に説明されているように、一部の実施形態では、開示された実施形態は、多変量時系列データ（例えば、各ベクトルが所与の時系列データを含んでいる、複数のベクトル）を受信できる２層モデルを含むことができる。時系列データは、製造工場のセンサ・データまたは１つまたは複数のネットワークと関連するデバイスからのＷｅｂサービス・データなどの、任意の適切なソースから受信されたデータに対応することができる。第１の層では、モデルは、それぞれの時系列データを有する回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードすることができる。さらに、モデルの計算コンポーネントは、モデルが収束したＲＮＮを生成するまでＲＮＮを実行できるようにすることができる。次にモデルは、収束したＲＮＮに基づいて時系列データの時間的文脈ベクトルを決定することができる。文脈ベクトルは、下で図５および６に関連して説明される、モデル内の１つまたは複数の計算において使用され得る。さらに、本明細書において、モデルに関連して方程式で示される、本明細書で開示されるアーキテクチャに対応するアルファ・スケールおよびベータ・スケール（alpha and beta scales）を使用して、注意機構（attention mechanism）が実装されるか、または抽出されるか、あるいはその両方が実行され得る。それに応じて、モデルが、時系列データにおける時間的依存関係を抽出できる。第２の層では、モデルは、時系列に関するデコードされる収束したＲＮＮを結合して転置することができる。モデルは、時系列間依存関係文脈ベクトルをさらに決定し、ＲＮＮ依存関係デコーダを決定することができる。モデルは、この決定された時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを使用して、データにおける時系列間依存関係を抽出し、時系列データの値を予測することができる。
【００２２】
一部の態様では、本開示の実施形態は、時系列データ間の相互依存関係、および各時系列データ内、または一部の実施形態では、１つまたは複数の時系列データ内の時間差のある依存関係の両方を決定し、未来の時間で予測できるようにすることができる。そのようなパターンの決定は、時系列データ間の影響が本来動的で時間的に変化する環境では、役立つことがある。本発明の実施形態は、実体（例えば、機械学習の専門知識をあまり持っていないか、全く持っていないことがあるハードウェア／ソフトウェアの機械または領域あるいはその両方の専門家）が時系列に関する理解を検証して改善するのに役立つことができる。
【００２３】
さらに、本開示の実施形態は、実体が、適切な時系列を生成するデバイスまたはサービスを調査することによって、各時点で、リアルタイムの決定（例えば、デバイスまたはサービスを修理するための予測的な保守の決定）を行うのを可能にすることができる。さらに、本開示の実施形態は、実体が、リソース管理およびリソース割り当ての目的で、または（例えば、ある会社の販売または感情極性に関する時系列を使用して株価を予測して）開始する／既存の投資ポジションのために、システム、サービス、またはプロセスの初期性能指標を識別できるようにすることができる。「実体（entity）」という用語は、本明細書において使用されるとき、さまざまな実施形態で、ハードウェアもしくはソフトウェアのデバイスもしくはコンポーネント、または人間、あるいはその組み合わせ意味するか、または含むことができる。本開示の実施形態は、多変量時系列を生成する所与の動的システムに含まれる時系列間の時間的に変化する相互依存関係の検出を、可能にすることができる。具体的には、本開示の実施形態は深層学習アーキテクチャを採用することができ、さらに、この深層学習アーキテクチャは、多層のカスタマイズされた回帰型ニューラル・ネットワーク上に構築されるか、またはそのような回帰型ニューラル・ネットワークと統合され得る。深層学習アーキテクチャを使用して、時間的に変化する相互依存関係および所与の多変量時系列からの時間的依存関係を検出することができる。開示されたモデルは、変化する相互依存関係を用いて、未来の予測する時点で時系列間で相互に与える影響を検出することができる。そのような相互関係は、多変量時系列が進行するにつれて、時間と共に変化することがある。変化する時間的依存関係を検出することに加えて、開示されたモデルは、個々の時系列内の時間差のある依存関係を検出できる。検出された情報のこれらの２つのソースは、時系列の未来の値を予測するために、モデルによって集合的に使用することができ、動的時系列に関する説明機構を提供することにおいて使用され得る洞察を提供することができる。一部の実施形態では、１つまたは複数の時系列を予測することができ、または１つまたは複数の時系列の１つまたは複数の未来の値を予測することができ、あるいはその両方を実行できる。
【００２４】
図１は、本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ解析を提供する（例えば、データ内の時間差のある時間的依存関係を検出する）ための例示的な非限定的システム１００のブロック図を示している。
【００２５】
システム１００は、任意選択的にサーバ・デバイス、１つまたは複数のネットワーク、および１つまたは複数のデバイス（図示されていない）を含むことができる。システム１００は、メモリ１０４に格納されたコンピュータ実行可能コンポーネントを実行する少なくとも１つのプロセッサ１０２を含むこともでき、またはその他の方法でそのようなプロセッサ１０２に関連付けられ得る。システム１００は、動作可能なように互いに結合された計算コンポーネント１１０、結合コンポーネント１１４、および解析コンポーネント１１６を含むが、これらに限定されない、さまざまなコンポーネントを結合することができるシステム・バス１０６をさらに含むことができる。
【００２６】
本開示において説明されるシステム（例えば、システム１００など）、装置、またはプロセスの態様は、マシン内で具現化された（例えば、１つまたは複数のマシンに関連付けられた１つまたは複数のコンピュータ可読媒体内で具現化された）機械実行可能コンポーネントを構成することができる。そのようなコンポーネントは、１つまたは複数のマシン（例えば、コンピュータ、コンピューティング・デバイス、仮想マシンなど）によって実行された場合に、マシンに、説明された動作を実行させることができる。本明細書に記載された１つまたは複数の実施形態で採用されている類似する要素の説明の繰り返しは、簡潔にするために省略されている。
【００２７】
システム１００は、デバイスに通信可能なように結合され得る任意の適切なコンピューティング・デバイスまたはコンピューティング・デバイスのセットであることができ、その非限定的な例としては、サーバ・コンピュータ、コンピュータ、モバイル・コンピュータ、メインフレーム・コンピュータ、自動テスト・システム、ネットワーク・ストレージ・デバイス、通信デバイス、Ｗｅｂサーバ・デバイス、ネットワーク・スイッチング・デバイス、ネットワーク・ルーティング・デバイス、ゲートウェイ・デバイス、ネットワーク・ハブ・デバイス、ネットワーク・ブリッジ・デバイス、制御システム、または任意のその他の適切なコンピューティング・デバイスが挙げられるが、これらに限定されない。デバイスは、システム１００、またはシステム１００によって提供される情報を採用できる任意のその他の適切なデバイス、あるいはその両方と情報を通信することができる、任意のデバイスであることができる。システム１００、コンポーネント、モデル、またはデバイスが、１つまたは複数のネットワークを経由して（例えば、クラウド・コンピューティング環境を経由して）システム、コンポーネント、モデル、デバイスなどの間での通信を可能にする通信コンポーネント１１８を備えることができるということが、理解されるべきである。
【００２８】
述べたように、一部の実施形態では、システム１００は、多変量時系列データ（例えば、各ベクトルが所与の時系列データ（例えば、時間に依存する連続的な一連の数字）を含んでいる、複数のベクトル）を受信できるモデルを実装できる。一部の実施形態では、多変量時系列データは、データ収集コンポーネント（図示されていない）から受信され得る。一部の態様では、データ収集コンポーネントによって受信されたデータが、メモリ・コンポーネント１０４に事前に格納され得る。
【００２９】
一部の態様では、計算コンポーネント１１０は、それぞれの時系列データを伴うＲＮＮをエンコードできる。ＲＮＮをエンコードすることは、データをＲＮＮの入力状態に入力することと、ＲＮＮに関連付けられた、経験的に決定され得る任意の関連するパラメータ（例えば、反復回数、エラー手法など）を設定することとを含むことができる。
【００３０】
さらに、計算コンポーネント１１０は、モデルが収束したＲＮＮを生成するまで、ＲＮＮに実行を許容することができる。これは、ＲＮＮに関連付けられた指標（例えば、二乗平均平方根誤差（ＲＭＳ：root-mean-square error）など）が事前に決定されたしきい値をいつ下回ったかを決定することによって、実行され得る。
【００３１】
次に計算コンポーネント１１０は、収束したＲＮＮに基づいて時系列データの時間的文脈ベクトルを決定することができる。文脈ベクトルが方程式７で計算され、時間的注意アルファが方程式６で計算される。
【００３２】
さらに、計算コンポーネント１１０は、時間的文脈ベクトルに基づいて、デコードされる収束したＲＮＮを決定し、時系列における時間差のある時間的依存関係を決定することができる。文脈ベクトルが方程式７で計算され、時間的注意アルファが方程式６で計算される。エンコーダＲＮＮおよびデコーダＲＮＮが同時に、一緒にトレーニングされるため、それらがトレーニングされた後に、依存関係が抽出され得る。
【００３３】
それに応じて、計算コンポーネント１１０は、時系列データにおける時間的依存関係を抽出できる。時間的依存関係は、（ＲＮＮが収束した後に）方程式７に示されているアルファを使用して抽出される。このアルファを使用して、依存関係グラフ（例えば、下で図８に関連して示され、説明されるセンサ相互作用グラフ）を描画することができる。新しい入力が到着するときに、実行時にアルファを抽出することがき、このようにして、動的に変化する依存関係情報を与える。
【００３４】
一部の態様では、結合コンポーネント１１４が、時系列に関するデコードされる収束したＲＮＮを結合して転置することができる。解析コンポーネント１１６は、時系列間依存関係文脈ベクトルをさらに決定し、ＲＮＮ依存関係デコーダを決定することができる。文脈ベクトルが方程式１１で計算され、時系列間の注意ベータが方程式１０で計算される。
【００３５】
解析コンポーネント１１６は、この決定された時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを使用して、データにおける時系列間依存関係を抽出し、時系列データの値を予測することができる。時系列間依存関係は、（ＲＮＮが収束した後に）方程式１１に示されているベータを使用して抽出される。このベータを使用して、依存関係グラフを描画できる。新しい入力が到着するときに、実行時にベータを抽出することがき、このようにして、動的に変化する依存関係情報を与える。
【００３６】
一部の実施形態では、計算コンポーネント１１０は、連続的データ（例えば、多変量時系列データ）における長期間の依存関係（例えば、実体によって決定された時間ウィンドウにわたる、株式市場の時系列データにおける長期傾向）を捕捉するために、回帰型ニューラル・ネットワーク（ＲＮＮ）内でゲート付き回帰型ユニット（ＧＲＵ：gated recurrent units）を使用できる。そのようなＧＲＵは、データ内のノイズの存在の影響をあまり受けないことが可能であり、時系列における線形関係および非線形関係の両方で学習およびトレーニングに使用され得る。１つの態様では、システム１００は、時系列を単一の回帰モデル（例えば、回帰型ニューラル・ネットワーク）に入力しない。代わりに、開示された実施形態は、例えば、スタンドアロンのＧＲＵネットワークによって、計算コンポーネント１１０を介して各時系列をエンコードできるモデルを含むことができる。さらに、結合コンポーネント１１４は、解析コンポーネント１１６と組み合わせて、時系列を入力してデコードし、各時系列内で時間差のある依存関係を検出することができる。これらのデコーディング・シーケンスは、その後、計算コンポーネント１１０によって、ＲＮＮ内の次の隠れ層のエンコーディング・ベクトルとして使用することができ、システム１００によって、多数の時系列間の相互依存関係を検出するために使用され得る。そのような手法では、本開示の実施形態は、ブラックボックス・モデルにおいて、データの時間差のある関係および相互依存関係の両方の複雑さを学習する負荷を必ずしも負う必要がなく、代わりに、モデルは、順番に依存関係を学習することができる（例えば、モデルは、データ内の時間差のある関係を最初に学習し、その後、データの相互依存関係を学習することができる）。一部の実施形態では、依存関係のこの連続的な学習は、人間の注意の階層的性質の側面を反映することができる。すなわち、連続的な学習は、時系列間の相互作用を高いレベルで最初に理解し、その後、各時系列内の１つまたは複数の時間差を、第２のより低いレベルで決定することを含むことができる。例えば、生成された各データセット内で動的で不安定な特徴を示す製造システムからの、制御された合成データおよび現実世界の多変量時系列の両方に対して、モデルの性能が示され得る。
【００３７】
一部の実施形態では、通信コンポーネント１１８が、１つまたは複数のネットワーク（例えば、クラウド）から時系列データを取得することができる。例えば、通信コンポーネント１１８は、クラウド環境内で少なくとも部分的に接続された製造工場内の１つまたは複数のデバイスから時系列データを取得することができる。別の態様では、通信コンポーネント１１８は、クラウド環境内で少なくとも部分的に接続された計算ネットワーク上の１つまたは複数のデバイス（例えば、モバイル・デバイス、ハブ、データベースなど）から時系列データを取得することができる。
【００３８】
システム１００のさまざまなコンポーネント（例えば、計算コンポーネント１１０、結合コンポーネント１１４、解析コンポーネント１１６、またはその他のコンポーネント、あるいはその組み合わせ）は、直接、または１つまたは複数のネットワークを介して（例えば、通信コンポーネント１１８を介して）、接続され得る。そのようなネットワークは、セルラー・ネットワーク、広域ネットワーク（ＷＡＮ：wide area network）（例えば、インターネット）、またはローカル・エリア・ネットワーク（ＬＡＮ：local area network）を含むが、これらに限定されない、有線ネットワークおよび無線ネットワークを含むことができ、その非限定的な例としては、セルラー、ＷＡＮ、ワイヤレス・フィディリティ（Ｗｉ−Ｆｉ）、Ｗｉ−Ｍａｘ、ＷＬＡＮ、無線通信、マイクロ波通信、衛星通信、光通信、音波通信、または任意のその他の適切な通信技術が挙げられる。さらに、前述のシステムまたはデバイスあるいはその両方は、複数のコンポーネント間の相互作用に関して説明されている。そのようなシステムおよびコンポーネントが、それらのコンポーネントもしくはそれらの内部で指定されたサブコンポーネント、指定されたコンポーネントもしくはサブコンポーネントの一部、または追加のコンポーネント、あるいはその組み合わせを含むことができるということが、理解されるべきである。サブコンポーネントは、親コンポーネント内に含まれるのではなく、他のコンポーネントに通信可能なように結合されたコンポーネントとして実装することもできる。さらに、１つまたは複数のコンポーネントまたはサブコンポーネントあるいはその両方を、集合的機能を提供する単一のコンポーネントに結合することができる。コンポーネントは、簡潔にするために本明細書では具体的に説明されないが、当業者によって知られている１つまたは複数の他のコンポーネントと、相互作用することもできる。
【００３９】
さらに、実行されるプロセスの一部は、特定の状況においてさまざまな種類のニューラル・ネットワークに関連する定義されたタスクを実行するための特殊なコンピュータによって実行され得る。対象のコンピュータ処理システム、方法、装置、またはコンピュータ・プログラム製品、あるいはその組み合わせは、技術、コンピュータ・ネットワーク、インターネットなどにおける進歩によって生じる新しい問題を解決するために採用され得る。
【００４０】
本明細書に記載されたデバイスの実施形態は、本明細書に記載された１つまたは複数の特徴を自動化することを容易にするために、人工知能（ＡＩ：artificial intelligence）を採用することができる。コンポーネントは、本明細書で開示されたさまざまな実施形態／例を実行するために、さまざまなＡＩに基づく方式を採用することができる。本明細書に記載された多数の決定（例えば、決定、確認、推測、計算、予測、予知、推定、導出、予測、検出、算出）を提供または支援するために、本明細書に記載されたコンポーネントは、そのコンポーネントにアクセス権限が付与されたデータの全体またはサブセットを調べ、イベントまたはデータあるいはその両方を介して捕捉された観測のセットから、システム、環境などの状態に関する推論を提供するか、またはそのような状態を決定することができる。決定は、特定の状況または動作を識別するために採用することができ、または例えば、複数の状態にわたる確率分布を生成することができる。決定は、確率的であることができ、すなわち、データおよびイベントの考慮に基づく、対象の複数の状態にわたる確率分布の計算であることができる。
【００４１】
決定は、イベントまたはデータあるいはその両方のセットからより高いレベルのイベントを作成するために採用される技術のことを指すこともある。
【００４２】
そのような決定は、イベントが密接な時間的近接性において相関性があるかどうか、ならびにイベントおよびデータが１つまたは複数のイベントおよびデータ・ソースから来るかどうかにかかわらず、観測されたイベントまたは格納されたイベント・データあるいはその両方のセットからの新しいイベントまたは動作の構築をもたらすことができる。本明細書で開示されるコンポーネントは、請求される主題に関連して自動動作または決定された動作あるいはその両方を実行することに関連して、さまざまな分類（（例えば、トレーニング・データを介して）明示的にトレーニングされた分類および（例えば、行動の観測、嗜好、履歴情報、外部情報の受信などを介して）暗黙的にトレーニングされた分類）方式またはシステム（例えば、サポート・ベクター・マシン、ニューラル・ネットワーク、エキスパート・システム、ベイジアン・ビリーフ・ネットワーク、ファジー理論、データ融合エンジンなど）あるいはその両方を採用できる。したがって、分類方式またはシステムあるいはその両方を使用して、複数の機能、動作、または決定、あるいはその組み合わせを自動的に学習し、実行することができる。
【００４３】
分類器は、入力属性ベクトルｚ＝（ｚ１，ｚ２，ｚ３，ｚ４，．．．，ｚｎ）を、ｆ（ｚ）＝ｃｏｎｆｉｄｅｎｃｅ（ｃｌａｓｓ）のように、入力がクラスに属するということの信頼性にマッピングすることができる。そのような分類は、自動的に実行する動作を決定するために、確率または統計あるいはその両方に基づく解析（例えば、有用性およびコストを解析で考慮する）を採用することができる。サポート・ベクター・マシン（ＳＶＭ）は、採用され得る分類器の一例であることができる。ＳＶＭは、可能性のある入力の空間内の超曲面を発見することによって動作し、超曲面は、トリガー基準を、非トリガーイベントから分離しようとする。直感的には、これによって、トレーニング・データに近いが、同一ではないデータをテストするために、分類を正確にする。その他の有向または無向のモデル分類手法は、さまざまなパターンの独立性を提供する、例えば、単純ベイズ、ベイジアン・ネットワーク、決定木、ニューラル・ネットワーク、ファジー理論モデル、または確率的分類モデル、あるいはその組み合わせを含む。分類は、本明細書において使用されるとき、優先度のモデルを開発するために利用される統計的回帰も含む。
【００４４】
図２は、本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の依存関係のニューラル・ネットワークに基づく検出のために開示されたモデルの態様が採用され得る、例示的な製造環境の概略図を示している。
【００４５】
１つの例示的な環境では、本開示の実施形態は、複雑な電子デバイスの製造に使用される製造工場などの、製造工場２０２の状況において使用され得る。具体的には、製造工場２０２では、製品（例えば、チップまたはその他のコンピュータのコンポーネント）が製造パイプラインのさまざまなコンポーネントを通過するときに、製品を反復的に処理できるように、製造パイプラインが使用されることがある。さらに、本発明の１つまたは複数の実施形態は、製造パイプラインの異なる部分に位置する１つまたは複数のセンサから測定データを取得することができ、そのような測定データは、測定データ間の依存関係を有することがあり、製造パイプライン内で発生する特定の物理的プロセスを示し、それらのプロセスと相関関係を持つことができる。
【００４６】
述べたように、そのような製造工場２０２には、製造工場２０２内のさまざまな機械およびプロセスから情報を収集できる複数のセンサが存在することがある。そのようなセンサは、製造工場内のさまざまな位置で温度、電力、電流、電圧、圧力などの変数を監視し、そのような測定２０４から多変量時系列データを生成することができる。
【００４７】
測定２０４は、開示されたモデル２０６に入力され得る。一部の実施形態では、モデル２０６は、測定２０４の多変量時系列データにおける動的依存関係を抽出することができ、例えば、図６Ａのステップ６３８の文脈において示されているように、時系列データ内の未来の値をさらに予測することができる。
【００４８】
別の態様では、モデル２０６を実行するデバイス（例えば、コンピュータ）は、解析コンポーネント（図１の解析コンポーネント１１６に類似している）から出力を受信し、監視された変数（例えば、温度、電力、電流、電圧、圧力など）間のさまざまな関係およびそれらの関係の強度をプロットするセンサ相互作用グラフ２０８を出力することができる。解析コンポーネントは、モデル２０６を使用して、多変量時系列データ（例えば、未来の温度、電力、電流、電圧、圧力など）の未来の値を表すことができる予測値２１０をさらに生成することができる。図６Ｂに示されているコンポーネント６５１で予測値が計算され、方程式１３を使用して未来の値を計算することができる。方程式１３は、開示された実施形態で使用されるモデルのＧＲＵコンポーネントによって使用されるが、方程式１３は、システムの実装において使用されるＲＮＮモデルに基づいて変化することがある。したがって、方程式１３は、未来の値の計算および予測の１つのやり方を表すことができる。
【００４９】
一部の実施形態では、センサ相互作用グラフ２０８または予測値２１０あるいはその両方を使用して、例えば、実体または操作者にフィードバック２１２を提供することができる。さらに、センサ・データ間の依存関係における変化は、製造プロセスにおける変化を示していることがある。例えば、依存関係における変化は、製造プロセスにおいて機械によって使用されている使い古した部品から生じることがある。そのような使い古した部品は、１つまたは複数の他の部品が、使い古した部品における欠陥を補償しようとすることを引き起こす可能性がある。例えば、故障している部品の過熱を弱めるために、冷却システムが通常よりも早く動作を開始することがある。開示されたモデルによって、そのような相互作用が検出され、実体の注意を喚起することができる。例えば、モデルを実行しているコンピュータは、実体に関連付けられたデバイス（例えば、モバイル・デバイス）の相互作用に関連する、対応するメッセージ、グラフ、または画像を提供できる。
【００５０】
図３は、本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の依存関係のニューラル・ネットワークに基づく検出のために開示されたモデルの解析コンポーネントが採用され得る、例示的なネットワーク環境の図を示している。
【００５１】
具体的には、本開示の実施形態は、さまざまな計算コンポーネント（例えば、中央処理装置（ＣＰＵ：central processing unit）、ネットワーク・スループット、メモリ読み取り／書き込み動作など）の監視指標との関連において使用され得る。一部の実施形態では、この監視は、アプリケーション・レベルおよびインフラストラクチャ・レベルで実行することができ、監視された変数は、互いに固有の依存関係を有することがある。例えば、この監視は、ＣＰＵがより高いクロック速度で利用される前にネットワーク・トラフィックが急上昇することの決定につながることがある。別の態様では、製造システムにおいて、他の変数の前に、一部の監視値が監視に使用可能であることができる。例えば、ネットワーク・クローラを使用してＣＰＵ使用状況の値が決定される前に、ネットワーク使用状況指標が使用可能であることがある。そのような依存関係（時間差のある依存関係を含む）。時間差のある依存関係は、１つまたは複数の時系列の過去の値に対する時系列値（例えば、現在または未来）の依存関係である。時間差のある依存関係は、２つ以上の時系列の時間差のある依存関係が別の時系列の値に影響を与える多変量の設定において、決定するのが困難であることがある。
【００５２】
述べたように、そのようなネットワーク環境３０２では、１つまたは複数のホストおよびデータベース・サーバが、１つまたは複数のソースから多変量時系列データを決定することができる。例えば、ネットワーク環境３０２から決定された時系列データ３０４の１つのセットは、ある期間にわたるＣＰＵ使用率を含むことができる。ネットワーク環境３０２から決定された時系列データ３０６の別のセットは、ある期間にわたるネットワーク使用率を含むことができる。ネットワーク環境３０２から決定された時系列データ３０８の第３のセットは、ある期間にわたるディスク読み取り／書き込み使用率を含むことができる。発明されたモデルの１つまたは複数の実施形態は、さまざまな時系列データ（例えば、時系列データ３０４、３０６、および３０８の第１、第２、および第３のセットなど）を受け取り、時間的に変化する依存関係グラフ３１０を決定することができる。時間差のある依存関係における関係を示すための時間的に変化する依存関係グラフ（例えば、図８に関連して示され、説明されているセンサ依存関係グラフ）が、方程式７のアルファおよび方程式１１のベータを使用して生成され得る。追加の入力がモデルに供給されるときに、実行時にアルファおよびベータを抽出することがき、このようにして、時系列データに関する動的に変化する依存関係情報を生成する。この時間的に変化する依存関係グラフ３１０は、データ・セット間およびデータ・セット自体の内部の両方の、変化する時系列データ間の相互関係および依存関係を示すことができる。そのような依存関係（時間差のある依存関係を含む）は、例えば、リソース使用率管理および停止の警告の提供を含む、性能管理を提供することにおいて使用され得る。例えば、解析コンポーネント（モデルの解析コンポーネント１１６に類似するが、必ずしも同一である必要はない）が、未来の停電につながる可能性のあるＣＰＵの大量の使用が存在するということを決定した場合、解析コンポーネントは、実体がネットワークに対して保護ステップを実行できるように、フィードバックを１つまたは複数の実体に提供してよい。
【００５３】
図４は、本明細書に記載された１つまたは複数の実施形態に従って、開示されたモデルの計算コンポーネントおよび解析コンポーネントによって採用され得る例示的なニューラル・ネットワーク・アーキテクチャの図を示している。
【００５４】
具体的には、ＲＮＮは、ユニット間の接続がニューラル・ネットワークの所与のシーケンスに沿って有向グラフを形成できる、特定の種類のニューラル・ネットワークを含むことができる。一部の実施形態では、ＲＮＮ４０２に示されているように、ＲＮＮのニューロンが、情報をＲＮＮにフィードバックすることができる。
【００５５】
さらに、一連のＲＮＮセル４０４において、各セルが、（述べられたフィードバック機構に加えて）ネットワーク内の他のニューロンに情報をさらに供給できる。一部の実施形態では、開示されたモデル（図５および図６の状況において説明されている）は、内蔵メモリ・セル（図示されていない）を介した状態保持機構を含んでいるＲＮＮの一種と考えることができる、長短期記憶（ＬＳＴＭ：long-short term memory）およびゲート付き回帰型ユニット（ＧＲＵ）を使用することができる。図５および図６を参照して本明細書において説明されるように、そのようなＬＳＴＭおよびＧＲＵを、多変量時系列データの解析および予測において使用することができる。一部の態様では、ＧＲＵは、ＲＮＮのゲーティング機構として使用され得る。
【００５６】
別の態様では、図５および図６に関連して本明細書において説明されるモデルは、ニューラル・ネットワークにおいて使用され得る注意機構を含むことができ、この注意機構は、人間において見られる視覚的注意機構に大まかに基づくことができ、図５および図６に関連してさらに説明される。特に、ニューラル機械翻訳（ＮＭＴ：neural machine translation）の状況において、エンコーダ／デコーダ・アーキテクチャを使用して、テキスト／文の注意ベクトルを生成することができ、注意ベクトルは、特定の単語を正しく翻訳するために、より重要な文の単語により大きい重みを割り当てることができる。そのような注意機構は、ニューラル・ネットワークの決定挙動を理解することにおいて役立つことができ、例えば、単語が可能性のある翻訳に翻訳される確率を生成するために使用され得る。同様に、注意機構は、入力された多変量時系列データ間の時間的に変化する時間差のある依存関係および相互依存関係を決定するために、本明細書に記載されたモデルの解析コンポーネントおよび計算コンポーネントによって使用され得る。
【００５７】
図５は、本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の時間的依存関係および相互依存関係の動的検出のために計算コンポーネント、結合コンポーネント、および解析コンポーネントによって使用され得るモデルの例示的な図を示している。具体的には、図５００は、時系列間の時間的に変化する時間差のある依存関係および相互依存関係を捕捉するために２レベルの注意機構（下で説明される）を含んでいる多層ＲＮＮを示している。入力層５０２は、１つまたは複数の時系列データ（例えば、時系列データ５０５）を受信することができる。入力層５０２は、エンコーディング層５１２に供給することができ、エンコーディング層５１２では、本明細書において説明されているように、時系列データがＲＮＮの隠れ状態（例えば、ＲＮＮに関連付けられたパラメータであり、隠れ状態は、時系列の現在の値およびＲＮＮ内の前の隠れ状態に基づいて計算される）にエンコードされる。次に、エンコーディング層５１２は、時間的文脈ベクトル決定層５２６に供給することができ、時間的文脈ベクトル決定層５２６では、時間的文脈ベクトルが決定され得る。時間的文脈ベクトルについては、下で、図６Ｂに関連する数学用語および関連する説明において、さらに説明される。層５２６内の時間的文脈ベクトルは、層５３８内の時間的デコーディングＲＮＮの隠れ状態と、層５２６内のエンコーディングＲＮＮによって学習された隠れ状態の各々との間の比較によって決定することができ、モデルにおける注意機構を表すことができる。この注意機構に基づいて、入力層５０２に入力された多変量時系列データ内の時系列データのセットごとに、時系列データの時間差のある依存関係が決定され得る。時系列データのセット（例えば、他の時系列データに加えて、時系列データ５０５）ごとの時間的デコーディング層５３８の出力が、状態結合層５４０に供給され得る。状態結合層５４０は、時系列データを結合し、依存関係デコーディング層５５０と相互作用して、異なる時系列間の依存関係を決定することができる。
【００５８】
述べたように、上で図４に関連して説明されたＲＮＮの態様を採用するＲＮＮに基づくモデルは、（例えば、時間的文脈ベクトル決定層５２６で第１の注意レベル機構を介して）各時系列内の時間的依存関係、および（例えば、状態結合層５４０で、およびより広く依存関係デコーディング層５５０で、第２の注意レベル機構を介して）時系列間の依存関係を学習するために使用され得る注意機構を含むことができる。ＲＮＮの出力は、図６Ａおよび図６Ｂに関連して説明されているように、時系列データのうちの１つまたは複数の、解析コンポーネント１１６の出力をグラフに描くことによって、例えば、未来の値を予測することにおいて使用され得る。
【００５９】
一部の実施形態では、両方の注意層を、エンコーディング層５１２と共に同時にトレーニングして、時系列データ間の依存関係を検出することができる。
【００６０】
一部の実施形態では、時系列の未来の値を予測するために、第２の注意レベル機構に含まれているＲＮＮに基づくモデルの重みは、各時系列からの情報が所与の予測にどのくらい寄与するかの決定を可能にすることができる。方程式１１のベータは、図６Ｂのシステムにおいて、特定の時系列に関する文脈ベクトルへの入力として使用される情報を制御する。
【００６１】
別の態様では、第１の注意レベル機構に含まれているＲＮＮに基づくモデルの重みは、構成された時系列の各々におけるどの過去の値が所与の予測にとって重要であるかの決定を可能にすることができる。一部の実施形態では、そのような依存関係は、時系列データの所与のグループ内の未来の予測値ごとに、変化することができる。
【００６２】
図６Ａおよび図６Ｂは、本明細書に記載された１つまたは複数の実施形態に従って、多変量時系列データ間の時間的依存関係および相互依存関係のニューラル・ネットワークに基づく検出のためのモデルの他の例示的な図を示している。具体的には、図６Ａの図６００に示されているように、入力データが６０２（例えば、データ収集コンポーネント）で受信され得る。一部の実施形態では、入力データは、第１の時系列（ＴＳ１）、第２の時系列（ＴＳ２）などから、第ｄの時系列（ＴＳｄ）までとして表され得る多変量データを表すことができ、ｄは正の整数である。６０４で、ＴＳ１が、ＲＮＮに基づくモデルによってエンコードされ得る。同様に、６０６で、ＴＳ２が、ＲＮＮに基づくモデルの計算コンポーネント（図１の計算コンポーネント１１０に類似する）によってエンコードされ得る、などとなり、そのようにして、６０８で、ＴＳｄが、ＲＮＮに基づくモデルの計算コンポーネントによってエンコードされ得る。６１０で、計算コンポーネントによって、ＲＮＮに基づくモデルが収束したかどうかを決定することができ（ＴＳ２を含んでいる動作６１２から、ＴＳｄを含んでいる動作６１４までの場合も同様である）、システム内のすべてのＲＮＮを同時に、一緒にトレーニングすることもできる。６１６で、計算コンポーネントによって、ＴＳ１の時間的文脈ベクトルが決定され得る。同様に、６１８で、計算コンポーネントによって、ＴＳ２の時間的文脈ベクトルが決定され得る、などとなり、そのようにして、６２０で、ＴＳｄの時間的文脈ベクトルが決定され得る。６２２で、ＲＮＮに基づくモデルは、計算コンポーネントによって、ＴＳ１の時間的文脈ベクトルを使用して、ＴＳ１における時間差のある時間的依存関係をデコードできる。同様に、６２４で、ＲＮＮに基づくモデルの計算コンポーネントは、ＴＳ２の時間的文脈ベクトルを使用して、ＴＳ２における時間差のある時間的依存関係をデコードすることができる、などとなり、そのようにして、６２６で、ＲＮＮに基づくモデルの計算コンポーネントは、ＴＳｄの時間的文脈ベクトルを使用して、ＴＳｄにおける時間差のある時間的依存関係をデコードすることができる。６２８で、ＲＮＮに基づくモデルの結合コンポーネントは、前の動作６２２、６２４から６２６までの出力（例えば、各時系列のデコードされた時間的依存関係）を結合して転置することができる。別の態様では、ＲＮＮに基づくモデルの解析コンポーネントによって、前の動作６２２、６２４から６２６までの出力（例えば、各時系列のデコードされた時間的依存関係）を使用して、時間的依存関係を抽出し、動作６３４で、その結果を、例えば実体に出力することができる。代替的または追加的に、６３０で、ＲＮＮに基づくモデルの解析コンポーネントによって、動作６２８の出力（例えば、前の動作６２２、６２４から６２６までの結合されて転置された出力）を使用して、時系列間依存関係文脈ベクトルを決定することができる。６３２で、ＲＮＮに基づくモデルの解析コンポーネントによって、６３０からの時系列間依存関係文脈ベクトルおよび動作６２８の出力を使用して、（ｉ）６３６で、ＴＳ１、ＴＳ２、．．．ＴＳｄにおける時系列間依存関係を抽出し、（ｉｉ）６３８で、ＴＳ１、ＴＳ２、．．．ＴＳｄの未来の値を予測することができる。
【００６３】
一部の実施形態では、本開示は、Ｘ＝｛ｘ１，ｘ２，．．．，ｘＴ｝によって示される長さＴのＤ個の変数（時系列のメンバー）を含む多変量時系列（ＭＴＳ：multivariate time series）システムを含み、各ｘｔ∈ＲＤは、時間ｔでのＭＴＳの測定の観測値である。第ｄの時系列は、
【数１】
2021531529.tif 000003
によって示すことができ、
【数２】
2021531529.tif 000004
は、時間ｔでの測定を表すことができる。そのようなＭＴＳシステムを前提として、ＭＴＳは、所与の時間ｔでの次の２つの側面から、図１の計算コンポーネント１１０によって解析することができる：（ｉ）ＭＴＳの未来の測定が、個々の時系列の過去の値にどのように依存するか（例えば、時間差のある依存関係）、（ｉｉ）異なる時系列の測定が、互いにどのように依存するか（例えば、時系列間依存関係）。一部の実施形態では、モデルの計算コンポーネントおよび解析コンポーネント（図１の計算コンポーネント１１０および解析コンポーネント１１６に類似するが、必ずしも同一である必要はない）を使用して、時間的に変化する依存関係を捕捉し、任意の時間ｔでの動的に変化する依存関係を特徴付けることができる。時間的に変化する依存関係の検出は、例えば、製造工場の根底にある挙動を理解して監視するため、またはコンピュータおよびストレージ・クラウドにおけるリソース使用率を最適化するために、使用することができる。ＭＴＳシステムにおける時系列の予測精度は、予測器がどの程度効率的に選択されたかに依存することがある。一部の実施形態では、ＭＴＳシステムにおいて、これらの時間差のある依存関係および相互依存関係を取得することができ、これらの依存関係を使用して、時系列の未来の値を効率的に予測することができる。
【００６４】
一部の実施形態では、モデルは、ＲＮＮと共に深層学習を含むことができる。モデルのアーキテクチャは、各時系列内の時間差のある依存関係、および時系列間の相互依存関係という２種類の依存関係を検出しながら、出力でのＭＴＳの未来の次の値を予測することにおいて、使用することができる。
【００６５】
図６Ｂは、本開示の実施形態例に従って、モデルのアーキテクチャ全体の別の図を示している。具体的には、（１）で、入力層での多変量時系列を前提として、エンコーディングＲＮＮ層６５０がＲＮＮネットワークのセットを含むことができ、各ＲＮＮネットワークが、対応する入力時系列シーケンスをエンコーディング・ベクトルのシーケンスにエンコードすることによって、システム内の個々の時系列を処理する。（２）で、次の二重目的のＲＮＮ層６５２（本明細書では、下で説明される理由により、二重目的のＧＲＵ層とも呼ばれる）も、ＲＮＮのセットを含むことができ、各ＲＮＮが、１つの構成された時系列から時間差のある依存関係を学習し、その後、それらの依存関係を一連の出力状態として出力する。具体的には、下で説明されているように、時間的文脈ベクトルを使用して、各ＲＮＮが、対応する時系列内の最も関連する時間差のある位置に注意を払うことができるようにすることが可能である。方程式６および７のアルファは、図６Ｂのシステムにおいて、特定の時系列の文脈ベクトルに入る過去の値からの情報を制御する。このアルファは、図６Ｂのシステム６５１の出力での値に大きな影響を与える時系列データ内の時間差のある値に対して、より大きい値を持つことができる。（３）で、前の層内のＲＮＮからの出力状態のシーケンスを一緒に収集することができ、変換層６５４によって、各出力状態をより高い次元のベクトルに変換することができる。そのようなベクトルは、時系列間の相互依存関係の次のレベルの識別の前の、構成された時系列を表すエンコーディングであると見なされ得る。（４）で、最後のデコーディングＲＮＮ層６５６は、システム全体の最終的な出力で各時系列の次の値を予測することに向けて、最も情報を与える入力高次元ベクトルを識別することによって、時系列間の相互依存関係を検出できる。方程式１０および１１のベータは、図６Ｂのシステムでの文脈ベクトルの決定において使用されている各時系列からの情報を制御することができる。このベータは、図６Ｂのシステム６５１の出力での値に大きな影響を与える時系列データに対して、より大きい値を持つことができる。
【００６６】
モデル６０１は、次の特徴を含むことができる。（ｉ）モデル６０１は、多層手法を採用することができ、この多層手法は、個別のＲＮＮを使用してエンコーディング層６５０で構成された各時系列を学習することができ、モデルが各時系列内の時間差のある依存関係を検出できるようにする。このようにして、モデルは、すべての時系列を単一のＲＮＮネットワークに詰め込むことを行わない。（ｉｉ）さらに、モデル６０１は、二重目的のＲＮＮ層６５２を利用することができ、ＲＮＮ層６５２は、時間的領域において情報をデコードしながら、同時に情報を新しい特徴エンコーディング・ベクトル（feature encoding vector）にエンコードし、より高い層での相互依存関係の検出を促進する。（ｉｉｉ）時間差のある依存関係および相互依存関係の検出は２つの階層レベルで分離され得るが、それらの階層レベルは密接に接続されており、体系的方法で一緒にトレーニングされる。これは、第１の種類の依存関係の改善された機械学習を可能にすることができ、他の種類の依存関係の機械学習に影響を与えるために使用され得る。
【００６７】
述べたように、一部の実施形態では、ＧＲＵは、開示されたモデル６０１においてＲＮＮとして使用され得るとして説明される。具体的には、ＧＲＵが、ゲーティング機構を介したシーケンスにおける長期間の依存関係を捕捉するという点において、ＧＲＵは、長短期記憶ユニットに類似することができる。具体的には、ＧＲＵ内に２つのゲート（リセット・ゲートｒｔおよび更新ゲートｚｔ）が存在することができ、次の方程式によって、これらのゲートをそれぞれ計算できる。
ｒｔ＝σ（Ｗｒｘｔ＋Ｕｒｈｔ−１＋ｂｒ）    （１）
ｚｔ＝σ（Ｗｚｘｔ＋Ｕｚｈｔ−１＋ｂｚ）    （２）
【００６８】
ここで、σは非線形シグモイド関数を表すことができ、ｘｔは時点ｔでの入力であり、ｈｔ−１はＧＲＵの前の隠れ状態であり、パラメータＷ、Ｕ、およびｂは、それぞれ入力重み行列、回帰重み行列、およびバイアス・ベクトルである（簡単にするために、添字は省略されている）。リセット・ゲートｒｔは、現在の候補状態
【数３】
2021531529.tif 000005
（下の方程式３）に対する前の状態の影響を制御することができ、更新ゲートｚｔは、追加される新しい情報ｘｔの量および維持される過去の情報ｈｔ−１の量を制御する。これらに基づき、線形補間によって、新しい隠れ状態ｈｔを更新することができる（下の方程式４）。
【００６９】
【数４】
2021531529.tif 000006
【００７０】
方程式（３）および（４）では、下記演算子
【数５】
2021531529.tif 000007
は要素ごとの積を参照することができ、上と同様に、Ｗｈ、Ｕｈ、ｂｈはＧＲＵのパラメータを表すことができる。前述の計算手順は、以下では、単にｈｔ＝ＧＲＵ（ｘｔ，ｈｔ−１）によって（すなわち、内部のゲーティング計算を省略して）参照され得る。
【００７１】
一部の実施形態では、トレーニング段階の間に、多変量時系列における単一の時点で、開示されたモデルは、データ収集コンポーネントによってＤ個のシーケンスを入力として受信することができ、各シーケンスは、サイズがｍであり、１つのコンポーネントの時系列からの過去の時点に対応する。モデルは、解析コンポーネントによって、時系列の次の時点の値を表すことができるシーケンスまたはベクトルｙ＝｛ｙ１，．．．，ｙＤ｝を出力することができる。入力シーケンスのセットを出力シーケンスにマッピングするためのトレーニング中に、モデルは、各コンポーネントの時系列内の時間差のある依存関係および現在のタイムスタンプでのすべての時系列間の相互依存関係を検出することができる。以下の説明では、インデックスｄによって示された特定のコンポーネント時系列について、時間差のある依存関係を検出する計算ステップについて説明する。このステップは、システムに含まれる他の時系列およびモデルにも適用可能である。
【００７２】
第ｄの時系列で、エンコーディングＲＮＮ層６５０の計算コンポーネントは、ｍ個の値のシーケンスを、
【数６】
2021531529.tif 000008
によって示された最後のｍ個の過去の時点から受信することができ、エンコーディングＲＮＮ層６５０の計算コンポーネントは、このシーケンスを、第ｄの時系列内の時間差のある依存関係を検出するための注意機構と共に、別のＧＲＵ（下で説明される）に基づいて、隠れ状態のシーケンス
【数７】
2021531529.tif 000009
にエンコードすることができる。隠れ状態
【数８】
2021531529.tif 000010
は、入力シーケンスを表すか、または注釈を付けることができ、時間差のある依存関係の決定を可能にすることができ、回帰プロセスが過去の情報をこれらの隠れ状態にエンコードする。一部の実施形態では、注意機構が連続時系列に適用されるときに、注意機構は最後の隠れ状態を強調することがあり、したがって、モデルが正しい時間差のある依存関係を識別するのを困難にすることがある。この影響は、個別の単語を操作する言語翻訳モデルでは、あまり目立たないことがあるが、連続時系列の場合に、より顕著になる。したがって、双方向ＧＲＵを使用することができ、双方向ＧＲＵは、モデルが入力シーケンスを２回通過し、次の方程式（５）によって明示的に計算されているように、両方向からの情報を利用できるようにすることができる。
【００７３】
【数９】
2021531529.tif 000011
【００７４】
一部の実施形態では、開示されたモデルは、前の層内の第ｄの時系列で、エンコーダＲＮＮに関連して、二重目的のＲＮＮ層内の対応するＧＲＵネットワークをトレーニングすることができる。タイムスタンプｔで、モデルは、現在の隠れ状態
【数１０】
2021531529.tif 000012
、前の出力
【数１１】
2021531529.tif 000013
、および時間的文脈ベクトル
【数１２】
2021531529.tif 000014
に基づいて、層の出力値
【数１３】
2021531529.tif 000015
（下で説明される）を計算することができる。文脈ベクトル
【数１４】
2021531529.tif 000016
の計算において、ＧＲＵは、表現ベクトル
【数１５】
2021531529.tif 000017
ごとに、ｊ＝１．．．ｍについて、注意の重み
【数１６】
2021531529.tif 000018
を生成することができる。注意機構は、出力値間の時間順序を依然として維持しながら、開示されたモデルが、最も関連する情報がある特定のタイムスタンプに注目できるようにすることができる。数学的には、この二重目的のＧＲＵ層６５２で、次の方程式（６）〜（９）を計算する。
【００７５】
【数１７】
2021531529.tif 000019
【００７６】
ここで、
【数１８】
2021531529.tif 000020
は、学習される必要のある層のパラメータを表すことができる。スカラ
【数１９】
2021531529.tif 000021
が、注釈ベクトル
【数２０】
2021531529.tif 000022
の重要度を時間的文脈ベクトル
【数２１】
2021531529.tif 000023
の計算に反映し、その後、層の出力
【数２２】
2021531529.tif 000024
に反映するため、スカラ
【数２３】
2021531529.tif 000025
を使用して、この第ｄの時系列に関して時間差のある依存関係を決定することができる。スカラ
【数２４】
2021531529.tif 000026
の計算は、ＧＲＵの隠れ状態とエンコードされた注釈ベクトル
【数２５】
2021531529.tif 000027
の各々との間の正規化アライメントとして表すことができ、次に、さまざまなやり方で測定され得る。例えば、この測定は、ベクトル・ドット積
【数２６】
2021531529.tif 000028
の単純な形態として実行され得る（同じ隠れユニットを含んでいる２つの層内のＧＲＵを仮定する）。この測定は、
【数２７】
2021531529.tif 000029
の計算によっても実行され得る（ＧＲＵが異なる隠れユニットの数を含んでいる場合）。さらに、この計算は、
【数２８】
2021531529.tif 000030
の一般的な連結形態として実行することができ、Ｗａおよびｖａは、層全体で一緒にトレーニングされる。
【００７７】
述べたように、この時間的領域で開示された注意機構は、ニューラル機械翻訳（ＮＭＴ）で採用されている一般的な考え方に従うことができるが、少なくとも２つの側面で異なることができる。第１に、時系列の連続領域を処理するために、開示されたモデルは、出力で双曲正接（ｔａｎｈ）関数を使用することができる。第２に、層の出力値
【数２９】
2021531529.tif 000031
に対してグランドトゥルース（例えば、ＮＭＴにおける対象の文）を決定することはできないが、開示されたモデルは、グランドトゥルースを自動的に学習することができる。さらに、グランドトゥルースの埋め込み情報は、開示されたモデル６０１の上層内の時系列間の相互依存関係の学習の品質に直接影響を与えることができる。具体的には、
【数３０】
2021531529.tif 000032
は、時間差のある依存関係および相互依存関係の検出の２つのレベル間を橋渡しする情報として機能することができる。したがって、ＧＲＵ層６５２は、実質的に同時に次の２つのタスクを実行できる。（ｉ）ＧＲＵ層６５２は、個々の時系列内の最も情報を与える過去の時点を検出するために、時間的領域内の情報をデコードできる。（ｉｉ）ＧＲＵ層６５２は、この時間的情報を出力値のセット
【数３１】
2021531529.tif 000033
にエンコードすることができ、下で説明されているように、この出力値のセットが、すべての時系列から収集され、すべての時系列間の相互依存関係の検出の次の層の入力を形成する。このため、この層は、本明細書では二重目的のＲＮＮ６５２と呼ばれることがある。
【００７８】
第ｄの入力時系列でシーケンス
【数３２】
2021531529.tif 000034
を生成する上記の二重目的のＲＮＮ層６５２の後に、変換層６５４の結合コンポーネントが、これらのシーケンスをＤ個の構成された時系列のすべてから収集することができ、その後、各シーケンスを高次元特徴ベクトルに変換する変換ステップを実行する。これらのベクトルは、シーケンスに積み重ねることができ、｛ｖ１，ｖ２，．．．，ｖＤ｝によって示され得る。これらのベクトルに特定の時間次元が存在しないことがあり、積み重ねられたシーケンスにおけるベクトルの順序は、開示されたモデルのトレーニングの前にのみ指定される必要があってよい。これによって、開示されたモデルがその後の層内の時系列間の相互依存関係を決定するときに、正しい解釈を保証することができる。
【００７９】
デコーディングＲＮＮ層６５６の解析コンポーネントは、単一のＧＲＵネットワークを備えることができ、このＧＲＵネットワークは、時系列間依存関係の検出を実行しながら、モデルの出力でｙｉごとの予測も行う。注意生成機構を、次の計算ステップと共に使用することができる。
【００８０】
【数３３】
2021531529.tif 000035
ｑｉ＝ＧＲＵ（ｑｉ−１，ｃｉ）    （１２）
ｙｉ＝ｔａｎｈ（Ｃｏｃｉ＋Ｕｏｑｉ＋ｂｏ）    （１３）
【００８１】
具体的には、注意の重みを取得するために、エンコーディング・ベクトルｖｄ（この段階では、入力時系列ごとに特徴付けられる）の各々を使用して、ＧＲＵの隠れ状態ｑｉ−１のアライメントが計算され得る。これらの生成された注意の重みを使用して、文脈ベクトルｃｉを決定することができ、次に、この文脈ベクトルを使用して、ＧＲＵの現在の隠れ状態ｑｉを更新することができ、結局、出力ｙｉを更新することができる。述べたように、ＣｏおよびＵｏは、学習される層のパラメータを表すことができる。ｙｉを第ｉの時系列の次の値にすることによって、方程式（１１）に見られる係数
【数３４】
2021531529.tif 000036
を使用して、文脈ベクトルｃｉの構築およびその後の予測値ｙｉの構築において、第ｄの時系列（ｖｄによって表される）がどの程度重要であるかを決定することができる。言い換えると、係数
【数３５】
2021531529.tif 000037
は、現在のタイムスタンプでの第ｄの時系列に対する第ｉの時系列の依存関係を示すことができる。一部の実施形態では、
【数３６】
2021531529.tif 000038
が１に近づくほど、この依存関係が強くなる。したがって、ベクトルβｉを使用して、システム内の構成された時系列（それ自身を含む）に対する第ｉの時系列の依存関係を決定することができる。
【００８２】
したがって、一部の実施形態では、開示されたモデル６０１を使用して、時系列間の時間差のある依存関係および相互依存関係を決定することができるが、この決定は、通常、複数の入力シーケンスを、すべて連続的数値領域内で、１つの出力シーケンスに変換するタスクを実行することと見なすこともできる。上で提示されたように、出力シーケンスは、多変量時系列内の次のタイムスタンプの値のセットであるが、出力シーケンスを、対象の１つの時系列の次のｎ個の値に容易に置き換えることができる。この後者の場合、出力シーケンス内の時間的順序をさらに調べるために、方程式（１２）および（１３）をｑｉ＝ＧＲＵ（ｙｉ−１，ｑｉ−１，ｃｉ）およびｙｉ＝ｔａｎｈ（ｙｉ−１，Ｃｏｃｉ＋Ｕｏｑｉ＋ｂｏ）に置き換えることができる。βｉのベクトルに基づく相互依存関係に対する解釈は変わらないままであることができるが、所与の時系列に対して、次のｎ個の未来の時点のウィンドウにわたって、そのような解釈を実行できる。
【００８３】
図７は、本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データからモデルの解析コンポーネントによって決定された変数における相互依存関係の例示的な図を示している。具体的には、ニューヨーク州アルバニーにある製造工場で異なるツールを介して収集されたセンサ・データによって、製造データセットが取得された。開示されたモデルをテストするために、５つのセンサを含んでいるデータセットのサンプルが使用された。具体的には、図７００は、（例えば、図１の解析コンポーネントに類似する解析コンポーネントを使用して）開示されたモデルによって決定された同じ時系列データ７０４の依存関係の確率７０６に対して、異なる時系列データに対応する異なる入力シーケンス７０２をプロットしている。一部の実施形態では、示されている入力シーケンスは、電流、電力、電力設定点（ＳＰ：set-point）、電圧、および温度をそれぞれ含むことができる。さらに、確率７０６は、０〜１のスケールで、約０〜約０．７５の範囲にわたる可能性がある。図７００は、異なるデータ・セット間の関係を示している。例えば、温度は、温度自体（例えば、温度の前の値）に最も強く依存している。さらに、図７００は、電流が電力に強く依存していることを示している。変数間の依存関係のさまざまな中間レベルも示されている。
【００８４】
図８は、本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データから（例えば、図１の解析コンポーネントに類似する解析コンポーネントを使用して）モデルの解析コンポーネントによって生成されたセンサ相互作用グラフの例示的な図を示している。具体的には、図８００は、電力８０２、温度８０４、電圧８０６、電流８０８、および電力設定点（ＳＰ）８１０の間の関係および依存関係を示している。例えば、特定の変数（例えば、電流）が、１つまたは複数の物理現象を介して（例えば、電流が導体を通るときに熱が発生するプロセスのことを指す、ジュール加熱を介して）、またはネットワークの影響を介して、他の変数（例えば、温度）に影響を与えることがある。図８００は、具体的には、矢印を介した関係を示すことができ、この矢印は、独立変数から対応する従属変数へ、または予測変数から予測される変数への方向を示している。別の態様では、凡例８１２は、これらのさまざまな変数間の関係の強度を示しており、この強度は、第１のレベルの依存関係（相対的に最も強い）と第４のレベルの依存関係（相対的に最も弱い）との間で変化することができる。例えば、電力８０２がそれ自身、電力設定点８１０、および電圧８０６によって最も強く影響を受けているということに、注目することができる。別の例では、温度８０４がそれ自身によって最も強く影響を受けており、電圧による影響（第２のレベルの依存関係）をさらに受ける可能性があるということがわかる。具体的には、依存関係グラフは、システムが電流を最初に調整し、次に電力を調整して、所与の電力ＳＰを達成できるということを示している。
【００８５】
図９は、本明細書に記載された１つまたは複数の実施形態に従って、製造工場でセンサから取得された多変量データから（例えば、図１の解析コンポーネントに類似する解析コンポーネントを使用して）モデルの解析コンポーネントによって生成された予測されたセンサ値の例示的な図を示している。
【００８６】
具体的には、図８の状況において監視され、説明される例示的なシステムの場合、モデルは、センサ値（例えば、電力、温度、電圧、電流、および電力ＳＰのセンサ値）の未来の値をさらに予測することができる。プロット９０２に示されているように、センサ値（例えば、電力、温度、電圧、電流、および電力ＳＰのセンサ値）の各々の真値と予測値との間の差異は、類似していることがある。さらに、プロット９０４は、モデルがトレーニングされるにつれて、トレーニングとシミュレーションとの間の一致が増えるということを示している。さらに、表９０６に示されているように、センサの予測値および実際の値（例えば、電力、温度、電圧、電流、および電力ＳＰのセンサ値）に関する二乗平均平方根誤差（ＲＭＳＥ：root-mean square error）、平均絶対誤差（ＭＡＥ：mean absolute error）、および決定係数（R-squaredまたはＲ２）などのさまざまな誤差指標は、センサの予測値と実際の値との間の良好な適合を示している。例えば、センサ値のＲＭＳＥは１未満であり、センサ値のＭＡＥは０．０１未満であり、センサ値のＲ２はほぼ１である。
【００８７】
図１０は、本明細書に記載された１つまたは複数の実施形態に従って、ルールに基づく合成データセットからモデルの解析コンポーネントによって生成された予測値の例示的な図を示している。具体的には、ルールに基づく合成データセット（図１１に関連して下で説明される）は、開示されたモデルの能力をテストして検証するために生成され得る。１つの態様では、合成データセットは、クラウド・プラットフォームの性能データをシミュレートすることができる。したがって、ＣＰＵの時系列データと、開示されたモデルからの対応する予測値との間の一致を比較することによって、モデルが異なる性能指標間の依存関係を検出できるかどうかをチェックするためのルールを使用して、それらの依存関係を導入することができる。プロット１００２は、ＣＰＵの時系列データと対応する予測値との間の一致（上のグラフ）、およびＭＥＭの時系列と対応する予測値との間の一致（下のグラフ）を示している。さらに、プロット１００４は、モデルがトレーニングされるにつれて、ＣＰＵまたはメモリ（ＭＥＭ）あるいはその両方の使用状況に関する時系列データの予測された未来の値に関して、トレーニングの値とシミュレーションの値との間の一致が増えるということを示している。
【００８８】
図１１は、本明細書に記載された１つまたは複数の実施形態に従って、モデルによって決定されたルールに基づく合成データセットにおける時間的依存関係および相互依存関係の例示的な図を示している。具体的には、依存関係のルールは次のようなものとすることができる。（１）ＣＰＵ（ｔ−８）＞０．５である場合、ＣＰＵ（ｔ）＝ＣＰＵ（ｔ−６）＋ＭＥＭ（ｔ−３）、および（２）ＭＥＭ（ｔ）＝ＣＰＵ（ｔ−３）。そうでない場合、（３）ＣＰＵ（ｔ）＝ＣＰＵ（ｔ−４）、および（４）ＭＥＭ（ｔ）＝ＭＥＭ（ｔ−３）＋ＭＥＭ（ｔ−６）。１１０２に、導入された依存関係が示されている。具体的には、上のプロットの場合、時間ｔでのＣＰＵの値は、４時間単位（ＴＵ：time unit）前でのＣＰＵの値に依存し、一方、時間ｔでのメモリの値は、３および４時間単位前でのメモリの値に依存する。さらに、下のプロットは、時間ｔでのＣＰＵの値が、６ＴＵ前のＣＰＵの時間値および３時間単位前のメモリの値に依存するということを示している。さらに、時間ｔでのメモリの値は、３時間単位前のＣＰＵの値に依存する。プロット１１０４に示されているように、上および下のプロットは、両方とも、モデルが、上記のルールを使用して作成された合成データの解析から多変量データ系列間の関係および相互依存関係を正しく識別できるということを示している。さらに、プロット１１０６および１１０８は、モデルが、上記のルールから生成された合成データにおける時間的依存関係を抽出することもできるということを示している。
【００８９】
図１２は、本明細書に記載された１つまたは複数の実施形態に従って、開示されたＡＩシステムおよびアルゴリズムの態様を動作させるための例示的なフローチャートを示している。具体的には、１２０２で、計算コンポーネントのプロセッサを使用して、それぞれの時系列データを有する少なくとも２つのＲＮＮをエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定することができる。１２０４で、結合コンポーネントは、プロセッサを使用して、少なくとも２つのデコードされるＲＮＮを結合し、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することができる。１２０６で、解析コンポーネントは、プロセッサを使用して、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダに基づいて、少なくとも２つの時系列データにおける時系列間依存関係および少なくとも２つの時系列データの予測値を決定することができる。
【００９０】
述べたように、例えば本明細書において図１およびその他の図で説明された、多変量時系列データまたは１つまたは複数のコンポーネントあるいはその両方は、クラウド・コンピューティング・プラットフォームでホストされ得る。さらに、本開示に関連して使用される１つまたは複数のデータベースは、クラウド・コンピューティング・プラットフォーム上で格納されるかまたはホストされるデータベースを含むことができる。本開示にはクラウド・コンピューティングに関する詳細な説明が含まれているが、本明細書において示された内容の実装は、クラウド・コンピューティング環境に限定されないと理解されるべきである。本発明の実施形態は、現在既知であるか、または今後開発される任意のその他の種類のコンピューティング環境と組み合わせて実装できる。
【００９１】
クラウド・コンピューティングは、構成可能な計算リソース（例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス）の共有プールへの便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス提供モデルであり、管理上の手間またはサービス・プロバイダとの相互作用を最小限に抑えて、これらのリソースを迅速にプロビジョニングおよび解放することができる。このクラウド・モデルは、少なくとも５つの特徴、少なくとも３つのサービス・モデル、および少なくとも４つのデプロイメント・モデルを含むことができる。
【００９２】
特徴は、次のとおりである。
オンデマンドのセルフ・サービス：クラウドの利用者は、サーバの時間、ネットワーク・ストレージなどの計算能力を一方的に、サービス・プロバイダとの人間的な相互作用を必要とせず、必要に応じて自動的にプロビジョニングすることができる。
幅広いネットワーク・アクセス：クラウドの能力は、ネットワークを経由して利用可能であり、標準的なメカニズムを使用してアクセスできるため、異種のシン・クライアントまたはシック・クライアント・プラットフォーム（例えば、携帯電話、ラップトップ、およびＰＤＡ）による利用を促進する。
リソース・プール：プロバイダの計算リソースは、プールされ、マルチテナント・モデルを使用して複数の利用者に提供される。さまざまな物理的および仮想的リソースが、要求に従って動的に割り当ておよび再割り当てされる。場所に依存しないという感覚があり、利用者は通常、提供されるリソースの正確な場所に関して制御することも知ることもないが、さらに高い抽象レベルでは、場所（例えば、国、州、またはデータセンター）を指定できる場合がある。
迅速な順応性：クラウドの能力は、迅速かつ柔軟に、場合によっては自動的にプロビジョニングされ、素早くスケールアウトし、迅速に解放されて素早くスケールインすることができる。プロビジョニングに使用できる能力は、利用者には、多くの場合、無制限であり、任意の量をいつでも購入できるように見える。
測定されるサービス：クラウド・システムは、計測機能を活用することによって、サービスの種類（例えば、ストレージ、処理、帯域幅、およびアクティブな実体のアカウント）に適した抽象レベルで、リソースの使用を自動的に制御および最適化する。リソースの使用量は監視、制御、および報告することができ、利用されるサービスのプロバイダと利用者の両方に透明性が提供される。
【００９３】
サービス・モデルは、次のとおりである。
ＳａａＳ（Software as a Service）：利用者に提供される能力は、クラウド・インフラストラクチャ上で稼働しているプロバイダのアプリケーションの利用である。それらのアプリケーションは、Ｗｅｂブラウザ（例えば、Ｗｅｂベースの電子メール）などのシン・クライアント・インターフェイスを介して、さまざまなクライアント・デバイスからアクセスできる。利用者は、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個々のアプリケーション機能を含む基盤になるクラウド・インフラストラクチャを、限定的な実体固有のアプリケーション構成設定を行う可能性を除き、管理することも制御することもない。
ＰａａＳ（Platform as a Service）：利用者に提供される能力は、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された、利用者が作成または取得したアプリケーションをクラウド・インフラストラクチャにデプロイすることである。利用者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、デプロイされたアプリケーション、および場合によってはアプリケーション・ホスティング環境の構成を制御することができる。
ＩａａＳ（Infrastructure as a Service）：利用者に提供される能力は、処理、ストレージ、ネットワーク、およびその他の基本的な計算リソースのプロビジョニングであり、利用者は、オペレーティング・システムおよびアプリケーションを含むことができる任意のソフトウェアをデプロイして実行できる。利用者は、基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、オペレーティング・システム、ストレージ、およびデプロイされたアプリケーションを制御することができ、場合によっては、選択されたネットワーク・コンポーネント（例えば、ホスト・ファイアウォール）を限定的に制御できる。
【００９４】
デプロイメント・モデルは、次のとおりである。
プライベート・クラウド：このクラウド・インフラストラクチャは、ある組織のためにのみ運用される。この組織またはサードパーティによって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
コミュニティ・クラウド：このクラウド・インフラストラクチャは、複数の組織によって共有され、関心事（例えば、任務、セキュリティ要件、ポリシー、およびコンプライアンスに関する考慮事項）を共有している特定のコミュニティをサポートする。これらの組織またはサードパーティによって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
パブリック・クラウド：このクラウド・インフラストラクチャは、一般ユーザまたは大規模な業界団体が使用できるようになっており、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド：このクラウド・インフラストラクチャは、データとアプリケーションとの移植を可能にする標準化された技術または独自の技術（例えば、クラウド間の負荷バランスを調整するためのクラウド・バースト）によって固有の実体を残したまま互いに結合された２つ以上のクラウド（プライベート、コミュニティ、またはパブリック）の複合である。
【００９５】
クラウド・コンピューティング環境は、ステートレス、疎結合、モジュール性、および意味的相互運用性に重点を置いたサービス指向の環境である。クラウド・コンピューティングの中心になるのは、相互接続されたノードのネットワークを含んでいるインフラストラクチャである。
【００９６】
ここで図１３を参照すると、例示的なクラウド・コンピューティング環境１３００が示されている。本明細書に記載された他の実施形態で採用されている類似する要素の説明の繰り返しは、簡潔にするために省略されている。図示されているように、クラウド・コンピューティング環境１３００は、クラウドの利用者によって使用されるローカル・コンピューティング・デバイス（例えば、パーソナル・デジタル・アシスタント（ＰＤＡ：personal digital assistant）または携帯電話１３０４、デスクトップ・コンピュータ１３０６、ラップトップ・コンピュータ１３０８、または自動車コンピュータ・システム１３１０、あるいはその組み合わせなど）が通信できる１つまたは複数のクラウド・コンピューティング・ノード１３０２を含んでいる。ノード１３０２は、互いに通信することができる。ノード１３０２は、１つまたは複数のネットワーク内で、本明細書において前述されたプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、またはハイブリッド・クラウド、あるいはこれらの組み合わせなどに、物理的または仮想的にグループ化され得る（図示されていない）。これによって、クラウド・コンピューティング環境１３００は、クラウドの利用者がローカル・コンピューティング・デバイス上でリソースを維持する必要のないインフラストラクチャ、プラットフォーム、またはＳａａＳ、あるいはその組み合わせを提供できる。図１３に示されたコンピューティング・デバイス１３０４〜１３１０の種類は、例示のみが意図されており、コンピューティング・ノード１３０２およびクラウド・コンピューティング環境１３００は、任意の種類のネットワークまたはネットワーク・アドレス可能な接続（例えば、Ｗｅｂブラウザを使用した接続）あるいはその両方を経由して任意の種類のコンピュータ制御デバイスと通信することができると理解される。
【００９７】
ここで図１４を参照すると、クラウド・コンピューティング環境１３００（図１３）によって提供される機能的抽象レイヤのセットが示されている。本明細書に記載された他の実施形態で採用されている類似する要素の説明の繰り返しは、簡潔にするために省略されている。
【００９８】
図１４に示されたコンポーネント、レイヤ、および機能は、例示のみが意図されており、本発明の実施形態がこれらに限定されないということが、あらかじめ理解されるべきである。図示されているように、次のレイヤおよび対応する機能が提供される。
【００９９】
ハードウェアおよびソフトウェア・レイヤ１４０２は、ハードウェア・コンポーネントおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例としては、メインフレーム１４０４、ＲＩＳＣ（Reduced Instruction Set Computer）アーキテクチャベースのサーバ１４０６、サーバ１４０８、ブレード・サーバ１４１０、ストレージ・デバイス１４１２、ならびにネットワークおよびネットワーク・コンポーネント１４１４が挙げられる。一部の実施形態では、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア１４１６およびデータベース・ソフトウェア１４１８を含む。
【０１００】
仮想化レイヤ１４２０は、仮想サーバ１４２２、仮想ストレージ１４２４、仮想プライベート・ネットワークを含む仮想ネットワーク１４２６、仮想アプリケーションおよびオペレーティング・システム１４２８、ならびに仮想クライアント１４３０などの仮想的実体を提供できる抽象レイヤを提供する。
【０１０１】
一例を挙げると、管理レイヤ１４３２は、以下で説明される機能を提供することができる。リソース・プロビジョニング１４３４は、クラウド・コンピューティング環境内でタスクを実行するために利用される計算リソースおよびその他のリソースの動的調達を行う。計測および価格設定１４３６は、クラウド・コンピューティング環境内でリソースが利用される際のコスト追跡、およびそれらのリソースの利用に対する請求書の作成と送付を行う。一例を挙げると、それらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウドの利用者およびタスクのＩＤ検証を行うとともに、データおよびその他のリソースの保護を行う。実体のポータル１４３８は、クラウド・コンピューティング環境へのアクセスを利用者およびシステム管理者に提供する。サービス・レベル管理１４４０は、必要なサービス・レベルを満たすように、クラウドの計算リソースの割り当てと管理を行う。サービス水準合意（ＳＬＡ：Service Level Agreement）計画および実行１４４２は、未来の要求が予想されるクラウドの計算リソースの事前準備および調達を、ＳＬＡに従って行う。
【０１０２】
ワークロード・レイヤ１４４４は、クラウド・コンピューティング環境で利用できる機能の例を示している。このレイヤから提供できるワークロードおよび機能の例としては、マッピングおよびナビゲーション１４４６、ソフトウェア開発およびライフサイクル管理１４４８、仮想クラスルーム教育の配信１４５０、データ解析処理１４５２、トランザクション処理１４５４、および処理サービスに対する実体の脆弱性の評価１４５６が挙げられる。本発明のさまざまな実施形態は、図１３および図１４を参照して説明されたクラウド・コンピューティング環境を利用して、１つまたは複数の実体に関連付けられた委託物の処分の価値（trust disposition value）を決定するか、または委託物の処分の価値に基づいて１つまたは複数の処理サービスに対する１つまたは複数の実体の脆弱性を決定するか、あるいはその両方を行うことができる。
【０１０３】
本発明は、任意の可能な統合の技術的詳細レベルで、システム、方法、またはコンピュータ・プログラム製品、あるいはその組み合わせであることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含んでいるコンピュータ可読ストレージ媒体を含むことができる。コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持および格納できる有形のデバイスであることができる。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであることができるが、これらに限定されない。コンピュータ可読ストレージ媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・フロッピー（Ｒ）・ディスク、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ：random access memory）、読み取り専用メモリ（ＲＯＭ：read-only memory）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ：erasable programmable read-only memoryまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ：static random access memory）、ポータブル・コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：compact disc read-only memory）、デジタル多用途ディスク（ＤＶＤ：digital versatile disk）、メモリ・スティック、フロッピー（Ｒ）・ディスク、パンチカードまたは命令が記録されている溝の中の隆起構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組み合わせを含む。本明細書において使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波（例えば、光ファイバ・ケーブルを通過する光パルス）、あるいはワイヤを介して送信される電気信号などの一過性の信号であると解釈されるべきではない。
【０１０４】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から各コンピューティング・デバイス／処理デバイスへ、またはネットワーク（例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワーク、あるいはその組み合わせ）を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組み合わせを備えることができる。各コンピューティング・デバイス／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス／処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。
【０１０５】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ：instruction-set-architecture）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、あるいは、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または同様のプログラミング言語などの手続き型プログラミング言語を含む１つまたは複数のプログラミング言語の任意の組み合わせで記述されたソース・コードまたはオブジェクト・コードであることができる。コンピュータ可読プログラム命令は、実体のコンピュータ上で全体的に実行すること、実体のコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、実体のコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを介して実体のコンピュータに接続することができ、または接続は、（例えば、インターネット・サービス・プロバイダを使用してインターネットを介して）外部コンピュータに対して行われ得る。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ：field-programmable gate array）、またはプログラマブル・ロジック・アレイ（ＰＬＡ：programmable logic array）を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行することができる。
【０１０６】
本発明の態様は、本明細書において、本発明の実施形態に従って、方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得るということが理解されるであろう。
【０１０７】
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すことができる。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読ストレージ媒体がフローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作の態様を実施する命令を含んでいる製品を備えるように、コンピュータ可読ストレージ媒体に格納され、コンピュータ、プログラム可能なデータ処理装置、または他のデバイス、あるいはその組み合わせに特定の方式で機能するように指示できるものであることもできる。
【０１０８】
コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作を実施するように、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスに読み込むこともでき、それによって、一連の動作可能なステップを、コンピュータ上、その他のプログラム可能な装置上、またはコンピュータ実装プロセスを生成するその他のデバイス上で実行させる。
【０１０９】
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための１つまたは複数の実行可能な命令を含んでいる、命令のモジュール、セグメント、または部分を表すことができる。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生することができる。例えば、連続して示された２つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行され得る。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組み合わせは、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組み合わせを実行する専用ハードウェアベースのシステムによって実装され得るということにも注意する。
【０１１０】
開示される主題のさまざまな態様の状況を提供するために、図１５および以下の説明は、開示される主題のさまざまな態様が実装され得る適切な環境の概要を示すよう意図されている。図１５は、本明細書に記載された１つまたは複数の実施形態を容易にすることができる例示的な非限定的動作環境のブロック図を示している。本明細書に記載された他の実施形態で採用されている類似する要素の説明の繰り返しは、簡潔にするために省略されている。図１５を参照すると、本開示のさまざまな態様を実装するための適切な動作環境１５００は、コンピュータ１５１２を含むことができる。コンピュータ１５１２は、処理ユニット１５１４、システム・メモリ１５１６、およびシステム・バス１５１８を含むこともできる。システム・バス１５１８は、システム・メモリ１５１６を含むが、これに限定されないシステム・コンポーネントを、処理ユニット１５１４に動作可能なように結合することができる。処理ユニット１５１４は、さまざまな使用可能なプロセッサのいずれかであることができる。デュアル・マイクロプロセッサおよびその他のマルチプロセッサ・アーキテクチャが、処理ユニット１５１４として採用されてもよい。システム・バス１５１８は、ＩＳＡ（Industry Standard Architecture）、ＭＣＡ（Micro Channel Architecture）、ＥＩＳＡ（Extended ISA）、ＩＤＥ（Intelligent Drive Electronics）、ＶＥＳＡローカル・バス（ＶＬＢ：VESA Local Bus）、ＰＣＩ（Peripheral Component Interconnect）、カードバス、ユニバーサル・シリアル・バス（ＵＳＢ：Universal SerialBus）、ＡＧＰ（Advanced Graphics Port）、ＦｉｒｅＷｉｒｅ、および小型コンピュータ・システム・インターフェイス（ＳＣＳＩ：Small Computer Systems Interface）を含むが、これらに限定されない、任意のさまざまな使用可能なバス・アーキテクチャを使用する、メモリ・バスもしくはメモリ・コントローラ、ペリフェラル・バスもしくは外部バス、またはローカル・バス、あるいはその組み合わせを含む、複数の種類のバス構造のいずれかであることができる。システム・メモリ１５１６は、揮発性メモリ１５２０および不揮発性メモリ１５２２を含むこともできる。起動中などにコンピュータ１５１２内の要素間で情報を転送するための基本ルーチンを含む基本入出力システム（ＢＩＯＳ：basic input/output system）が、不揮発性メモリ１５２２に格納され得る。不揮発性メモリ１５２２の例としては、読み取り専用メモリ（ＲＯＭ：read only memory）、プログラマブルＲＯＭ（ＰＲＯＭ：programmable ROM）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ：electrically programmable ROM）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ：electrically erasable programmable ROM）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ：random access memory）（例えば、強誘電体ＲＡＭ（ＦｅＲＡＭ：ferroelectric RAM）が挙げられるが、これらに限定されない。揮発性メモリ１５２０は、外部キャッシュ・メモリとして機能するランダム・アクセス・メモリ（ＲＡＭ）を含むこともできる。例えばＲＡＭは、スタティックＲＡＭ（ＳＲＡＭ：static RAM）、ダイナミックＲＡＭ（ＤＲＡＭ：dynamic RAM）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ：synchronous DRAM）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ：double data rate SDRAM）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、シンクリンクＤＲＡＭ（ＳＬＤＲＡＭ：Synchlink DRAM）、ダイレクト・ラムバスＲＡＭ（ＤＲＲＡＭ：direct Rambus RAM）、ダイレクト・ラムバス・ダイナミックＲＡＭ（ＤＲＤＲＡＭ：direct Rambus dynamic RAM）、およびラムバス・ダイナミックＲＡＭなどの、ただしこれらに限定されない、多くの形態で利用可能である。
【０１１１】
コンピュータ１５１２は、取り外し可能／取り外し不可能な揮発性／不揮発性のコンピュータ記憶媒体を含むこともできる。例えば図１５は、ディスク・ストレージ１５２４を示している。ディスク・ストレージ１５２４は、磁気ディスク・ドライブ、フロッピー（Ｒ）・ディスク・ドライブ、テープ・ドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュ・メモリ・カード、またはメモリ・スティックなどの、ただしこれらに限定されない、デバイスを含むこともできる。ディスク・ストレージ１５２４は、コンパクト・ディスクＲＯＭデバイス（ＣＤ−ＲＯＭ：compact disk ROM device）、記録可能ＣＤドライブ（ＣＤ−Ｒドライブ：CD recordable drive）、再書き込み可能ＣＤドライブ（ＣＤ−ＲＷドライブ：CD rewritable drive）、またはデジタル多用途ディスクＲＯＭドライブ（ＤＶＤ−ＲＯＭ：digital versatile disk ROM drive）などの光ディスク・ドライブを含むが、これらに限定されない記憶媒体を、別々に、または他の記憶媒体と組み合わせて、含むこともできる。システム・バス１５１８へのディスク・ストレージ１５２４の接続を容易にするために、インターフェイス１５２６などの、取り外し可能または取り外し不可能なインターフェイスが使用され得る。図１５は、実体と、適切な動作環境１５００において説明された基本的なコンピュータ・リソースとの間の仲介として機能できるソフトウェアも示している。そのようなソフトウェアは、例えば、オペレーティング・システム１５２８を含むこともできる。ディスク・ストレージ１５２４に格納できるオペレーティング・システム１５２８は、コンピュータ１５１２のリソースを制御し、割り当てるように動作する。システムのアプリケーション１５３０は、プログラム・コンポーネント１５３２を介して、オペレーティング・システム１５２８によるリソースの管理を利用し、例えばシステム・メモリ１５１６またはディスク・ストレージ１５２４のいずれかに格納されたデータ１５３４をプログラムすることができる。さまざまなオペレーティング・システムまたはオペレーティング・システムの組み合わせを使用して本開示が実装され得るということが、理解されるべきである。実体は、１つまたは複数の入力デバイス１５３６を介して、コマンドまたは情報をコンピュータ１５１２に入力する。入力デバイス１５３６は、マウスなどのポインティング・デバイス、トラックボール、スタイラス、タッチ・パッド、キーボード、マイクロホン、ジョイスティック、ゲーム・パッド、衛星放送受信アンテナ、スキャナ、ＴＶチューナー・カード、デジタル・カメラ、デジタル・ビデオ・カメラ、Ｗｅｂカメラなどを含むことができるが、これらに限定されない。これらおよびその他の入力デバイスは、１つまたは複数のインターフェイス・ポート１５３８を介してシステム・バス１５１８を通り、処理ユニット１５１４に接続することができる。１つまたは複数のインターフェイス・ポート１５３８は、例えば、シリアル・ポート、パラレル・ポート、ゲーム・ポート、およびユニバーサル・シリアル・バス（ＵＳＢ）を含むことができる。１つまたは複数の出力デバイス１５４０は、入力デバイス１５３６と同じ種類のポートの一部を使用できる。このようにして、例えば、ＵＳＢポートを使用して、入力をコンピュータ１５１２に提供し、コンピュータ１５１２から出力デバイス１５４０に情報を出力できる。出力アダプタ１５４２は、特殊なアダプタを必要とする出力デバイス１５４０の中でも特に、モニタ、スピーカ、およびプリンタのような何らかの出力デバイス１５４０が存在することを示すために提供され得る。出力アダプタ１５４２の例としては、出力デバイス１５４０とシステム・バス１５１８との間の接続の手段を提供するビデオ・カードおよびサウンド・カードが挙げられるが、これらに限定されない。１つまたは複数のリモート・コンピュータ１５４４などの、その他のデバイスまたはデバイスのシステムあるいはその両方が、入力機能および出力機能の両方を提供するということに、注意するべきである。
【０１１２】
コンピュータ１５１２は、リモート・コンピュータ１５４４などの１つまたは複数のリモート・コンピュータへの論理接続を使用して、ネットワーク環境内で動作できる。リモート・コンピュータ１５４４は、コンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサベースの機器、ピア・デバイス、またはその他の一般的なネットワーク・ノードなどであることができ、通常は、コンピュータ１５１２に関連して説明された要素の多くまたはすべてを含むこともできる。簡潔にするために、メモリ・ストレージ・デバイス１５４６のみが、リモート・コンピュータ１５４４と共に示されている。リモート・コンピュータ１５４４は、ネットワーク・インターフェイス１５４８を介してコンピュータ１５１２に論理的に接続されてから、通信接続１５５０を介して物理的に接続され得る。さらに、動作は、複数の（ローカルまたはリモートの）システムにわたって分散され得る。ネットワーク・インターフェイス１５４８は、ローカル・エリア・ネットワーク（ＬＡＮ：local-area network）、広域ネットワーク（ＷＡＮ：wide-area network）、セルラー・ネットワークなどの、有線通信ネットワークまたは無線通信ネットワークあるいはその両方を包含できる。ＬＡＮ技術は、光ファイバ分散データ・インターフェイス（ＦＤＤＩ：Fiber Distributed Data Interface）、銅線分散データ・インターフェイス（ＣＤＤＩ：Copper Distributed Data Interface）、イーサネット（Ｒ）、トークン・リングなどを含む。ＷＡＮ技術は、ポイントツーポイント・リンク、総合デジタル通信網（ＩＳＤＮ：Integrated Services Digital Network）およびその変形などの回路交換網、パケット交換網、およびデジタル加入者回線（ＤＳＬ：Digital Subscriber Line）を含むが、これらに限定されない。１つまたは複数の通信接続１５５０は、ネットワーク・インターフェイス１５４８をシステム・バス１５１８に接続するために採用されたハードウェア／ソフトウェアのことを指す。通信接続１５５０は、説明を明確にするために、コンピュータ１５１２内に示されているが、コンピュータ１５１２の外部に存在することもできる。ネットワーク・インターフェイス１５４８に接続するためのハードウェア／ソフトウェアは、単に例示の目的で、通常の電話の等級のモデム、ケーブル・モデム、およびＤＳＬモデムを含むモデム、ＩＳＤＮアダプタ、およびイーサネット（Ｒ）・カードなどの、内部および外部の技術を含むこともできる。
【０１１３】
本発明の実施形態は、任意の可能な統合の技術的詳細レベルで、システム、方法、装置、またはコンピュータ・プログラム製品、あるいはその組み合わせであることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含んでいるコンピュータ可読ストレージ媒体を含むことができる。コンピュータ可読ストレージ媒体は、命令実行デバイスによって使用するための命令を保持および格納できる有形のデバイスであることができる。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであることができるが、これらに限定されない。コンピュータ可読ストレージ媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・フロッピー（Ｒ）・ディスク、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ：random access memory）、読み取り専用メモリ（ＲＯＭ：read-only memory）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭ：erasableprogrammable read-only memoryまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ：static random access memory）、ポータブル・コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：compact disc read-only memory）、デジタル多用途ディスク（ＤＶＤ：digital versatile disk）、メモリ・スティック、フロッピー（Ｒ）・ディスク、パンチカードまたは命令が記録されている溝の中の隆起構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組み合わせを含むこともできる。本明細書において使用されるとき、コンピュータ可読ストレージ媒体は、それ自体が、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波（例えば、光ファイバ・ケーブルを通過する光パルス）、あるいはワイヤを介して送信される電気信号などの一過性の信号であると解釈されるべきではない。
【０１１４】
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から各コンピューティング・デバイス／処理デバイスへ、またはネットワーク（例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワーク、あるいはその組み合わせ）を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組み合わせを含むことができる。各コンピューティング・デバイス／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス／処理デバイス内のコンピュータ可読ストレージ媒体に格納するために転送する。本発明のさまざまな態様の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ：instruction-set-architecture）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路のための構成データ、あるいは、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または同様のプログラミング言語などの手続き型プログラミング言語を含む１つまたは複数のプログラミング言語の任意の組み合わせで記述されたソース・コードまたはオブジェクト・コードであることができる。コンピュータ可読プログラム命令は、実体のコンピュータ上で全体的に実行すること、実体のコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、実体のコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを介して実体のコンピュータに接続することができ、または接続は、（例えば、インターネット・サービス・プロバイダを使用してインターネットを介して）外部コンピュータに対して行われ得る。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ：field-programmable gate array）、またはプログラマブル・ロジック・アレイ（ＰＬＡ：programmable logic array）を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行することができる。
【０１１５】
本発明の態様は、本明細書において、本発明の実施形態に従って、方法、装置（システム）、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得るということが理解されるであろう。これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すものであることができる。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読記憶媒体がフローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作の態様を実施する命令を含んでいる製品を含むように、コンピュータ可読記憶媒体に格納され、コンピュータ、プログラム可能なデータ処理装置、または他のデバイス、あるいはその組み合わせに特定の方式で機能するように指示できるものであることもできる。コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能／動作を実施するように、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスに読み込むこともでき、それによって、一連の動作可能な動作を、コンピュータ上、その他のプログラム可能な装置上、またはコンピュータ実装プロセスを生成するその他のデバイス上で実行させる。
【０１１６】
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための１つまたは複数の実行可能な命令を含んでいる、命令のモジュール、コンポーネント、セグメント、または部分を表すことができる。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生することができる。例えば、連続して示された２つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行され得る。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組み合わせは、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組み合わせを実行する専用ハードウェアベースのシステムによって実装され得るということにも注意する。
【０１１７】
上記では、１つのコンピュータまたは複数のコンピュータあるいはその両方で実行されるコンピュータ・プログラム製品のコンピュータ実行可能命令との一般的な関連において、主題が説明されたが、当業者は、本開示がその他のプログラム・モジュールまたはコンポーネントと組み合わせて実装されてもよいということを認識するであろう。通常、プログラム・モジュールまたはコンポーネントは、特定のタスクを実行するか、または特定の抽象データ型を実装するか、あるいはその両方を行うルーチン、プログラム、コンポーネント、データ構造などを含む。さらに、当業者は、本発明のコンピュータ実装方法が、シングルプロセッサ・コンピュータ・システムまたはマルチプロセッサ・コンピュータ・システム、ミニコンピューティング・デバイス、メインフレーム・コンピュータ、コンピュータ、ハンドヘルド・コンピューティング・デバイス（例えば、ＰＤＡ、電話）、マイクロプロセッサベースまたはプログラム可能な家庭用電化製品または産業用電子機器などを含む、その他のコンピュータ・システム構成を使用して実践され得るということを理解するであろう。示された態様は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される、分散コンピューティング環境内で実践されてもよい。ただし、本開示の態様の全部ではないとしても一部は、スタンドアロン・コンピュータ上で実践され得る。分散コンピューティング環境において、プログラム・モジュールまたはコンポーネントは、ローカルおよびリモートの両方のメモリ・ストレージ・デバイスに配置され得る。
【０１１８】
本出願において使用されるとき、「コンポーネント」、「システム」、「プラットフォーム」、「インターフェイス」などの用語は、１つまたは複数の特定の機能を含むコンピュータ関連の実体または動作可能なマシンに関連する実体を指すことができるか、またはそれらの実体を含むことができるか、あるいはその両方が可能である。本明細書で開示された実体は、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかであることができる。例えば、コンポーネントは、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行ファイル、実行のスレッド、プログラム、またはコンピュータ、あるいはその組み合わせであることができるが、これらに限定されない。例として、サーバ上で実行されるアプリケーションおよびサーバの両方が、コンポーネントであることができる。１つまたは複数のコンポーネントが、プロセス内または実行のスレッド内あるいはその両方に存在することができ、コンポーネントは、１つのコンピュータ上に局在するか、または２つ以上のコンピュータ間で分散されるか、あるいはその両方が可能である。別の例では、各コンポーネントは、さまざまなデータ構造が格納されているさまざまなコンピュータ可読媒体から実行できる。コンポーネントは、１つまたは複数のデータ・パケット（例えば、ローカル・システム内または分散システム内の別のコンポーネントと相互作用するか、またはインターネットなどのネットワークを経由して、信号を介して他のシステムと相互作用するか、あるいはその両方によって相互作用する、１つのコンポーネントからのデータ）を含んでいる信号などに従って、ローカルまたはリモートあるいはその両方のプロセスを介して通信できる。別の例として、コンポーネントは、電気または電子回路によって動作される機械的部品によって提供される特定の機能を有する装置であることができ、プロセッサによって実行されるソフトウェア・アプリケーションまたはファームウェア・アプリケーションによって動作される。そのような場合、プロセッサは、装置の内部または外部に存在することができ、ソフトウェア・アプリケーションまたはファームウェア・アプリケーションの少なくとも一部を実行できる。さらに別の例として、コンポーネントは、機械的部品を含まない電子コンポーネントを介して特定の機能を提供する装置であることができ、それらの電子コンポーネントは、少なくとも一部において電子コンポーネントの機能を与えるソフトウェアまたはファームウェアを実行するためのプロセッサまたはその他の手段を含むことができる。１つの態様では、コンポーネントは、例えばクラウド・コンピューティング・システム内で、仮想マシンを介して電子コンポーネントをエミュレートすることができる。
【０１１９】
加えて、「または」という用語は、排他的論理和ではなく、包含的論理和を意味するよう意図されている。すなわち、特に指定されない限り、または文脈から明らかでない限り、「ＸがＡまたはＢを採用する」は、自然な包含的順列のいずれかを意味するよう意図されている。すなわち、ＸがＡを採用するか、ＸがＢを採用するか、またはＸがＡおよびＢの両方を採用する場合、「ＸがＡまたはＢを採用する」が、前述の事例のいずれかにおいて満たされる。さらに、本明細書および添付の図面において使用される冠詞「ａ」および「ａｎ」は、単数形を対象にすることが特に指定されない限り、または文脈から明らかでない限り、「１つまたは複数」を意味すると一般に解釈されるべきである。本明細書において使用されるとき、「例」または「例示的」あるいはその両方の用語は、例、事例、または実例となることを意味するために使用される。誤解を避けるために、本明細書で開示された主題は、そのような例によって制限されない。加えて、「例」または「例示的」あるいはその両方として本明細書に記載された任意の態様または設計は、他の態様または設計よりも好ましいか、または有利であると必ずしも解釈されず、当業者に知られている同等の例示的な構造および技術を除外するよう意図されていない。
【０１２０】
本明細書において採用されるとき、「プロセッサ」という用語は、シングルコア・プロセッサと、ソフトウェアのマルチスレッド実行機能を備えるシングルプロセッサと、マルチコア・プロセッサと、ソフトウェアのマルチスレッド実行機能を備えるマルチコア・プロセッサと、ハードウェアのマルチスレッド技術を備えるマルチコア・プロセッサと、並列プラットフォームと、分散共有メモリを備える並列プラットフォームとを含むが、これらに限定されない、実質的に任意の計算処理ユニットまたはデバイスを指すことができる。さらに、プロセッサは、集積回路、特定用途向け集積回路（ＡＳＩＣ：application specific integrated circuit）、デジタル信号プロセッサ（ＤＳＰ：digital signal processor）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ：field programmable gate array）、プログラマブル・ロジック・コントローラ（ＰＬＣ：programmable logic controller）、複合プログラム可能論理デバイス（ＣＰＬＤ：complex programmable logic device）、個別のゲートまたはトランジスタ論理、個別のハードウェア・コンポーネント、あるいは本明細書に記載された機能を実行するように設計されたこれらの任意の組み合わせを指すことができる。さらに、プロセッサは、空間利用を最適化するか、または実体の機器の性能を向上させるために、分子および量子ドットベースのトランジスタ、スイッチ、およびゲートなどの、ただしこれらに限定されない、ナノスケール・アーキテクチャを利用することができる。プロセッサは、計算処理ユニットの組み合わせとして実装されてもよい。本開示では、コンポーネントの動作および機能に関連する「ストア」、「ストレージ」、「データ・ストア」、「データ・ストレージ」、「データベース」、および実質的に任意のその他の情報格納コンポーネントなどの用語は、「メモリ・コンポーネント」、「メモリ」内に具現化された実体、またはメモリを含んでいるコンポーネントを指すために利用される。本明細書に記載されたメモリまたはメモリ・コンポーネントあるいはその両方が、揮発性メモリまたは不揮発性メモリのいずれかであることができ、あるいは揮発性メモリおよび不揮発性メモリの両方を含むことができるということが、理解されるべきである。不揮発性メモリの例としては、読み取り専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ）（例えば、強誘電体ＲＡＭ（ＦｅＲＡＭ）が挙げられるが、これらに限定されない。揮発性メモリは、例えば外部キャッシュ・メモリとして機能できる、ＲＡＭを含むことができる。例えばＲＡＭは、シンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張ＳＤＲＡＭ（ＥＳＤＲＡＭ）、シンクリンクＤＲＡＭ（ＳＬＤＲＡＭ）、ダイレクト・ラムバスＲＡＭ（ＤＲＲＡＭ）、ダイレクト・ラムバス・ダイナミックＲＡＭ（ＤＲＤＲＡＭ）、およびラムバス・ダイナミックＲＡＭ（ＲＤＲＡＭ：Rambus dynamic RAM）などの、ただしこれらに限定されない、多くの形態で利用可能である。さらに、本明細書において開示されたシステムまたはコンピュータ実装方法のメモリ・コンポーネントは、これらおよび任意のその他の適切な種類のメモリを含むが、これらに限定されない、メモリを含むよう意図されている。
【０１２１】
前述した内容は、システム、コンピュータ・プログラム製品、およびコンピュータ実装方法の単なる例を含んでいる。当然ながら、本開示を説明する目的で、コンポーネント、製品、またはコンピュータ実装方法、あるいはその組み合わせの考えられるすべての組み合わせについて説明することは不可能であるが、当業者は、本開示の多くのその他の組み合わせおよび並べ替えが可能であるということを認識できる。さらに、「含む」、「有する」、「所有する」などの用語が、発明を実施するための形態、特許請求の範囲、付録、および図面において使用される範囲では、それらの用語は、「備えている」が特許請求における移行句として採用されるときに解釈されるような、用語「備えている」と同様の方法で、包含的であるよう意図されている。さまざまな実施形態の説明は、例示の目的で提示されているが、網羅的であることは意図されておらず、開示された実施形態に制限されない。説明された実施形態の範囲から逸脱することなく多くの変更および変形が可能であることは、当業者にとって明らかであろう。本明細書で使用された用語は、実施形態の原理、実際の適用、または市場で見られる技術を超える技術的改良を最も適切に説明するため、または他の当業者が本明細書で開示された実施形態を理解できるようにするために選択されている。
【図１】
2021531529.tif 000039
【図２】
2021531529.tif 000040
【図３】
2021531529.tif 000041
【図４】
2021531529.tif 000042
【図５】
2021531529.tif 000043
【図６Ａ】
2021531529.tif 000044
【図６Ｂ】
2021531529.tif 000045
【図７】
2021531529.tif 000046
【図８】
2021531529.tif 000047
【図９】
2021531529.tif 000048
【図１０】
2021531529.tif 000049
【図１１】
2021531529.tif 000050
【図１２】
2021531529.tif 000051
【図１３】
2021531529.tif 000052
【図１４】
2021531529.tif 000053
【図１５】
2021531529.tif 000054
【手続補正書】
【提出日】令和3年5月10日(2021.5.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためのシステムであって、
コンピュータ実行可能コンポーネントを格納するメモリと、
前記メモリに動作可能なように結合され、前記メモリに格納された前記コンピュータ実行可能コンポーネントを実行するプロセッサと、を備えており、前記コンピュータ実行可能コンポーネントが、
それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定するための計算コンポーネントと、
時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定するための結合コンポーネントと、
注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよび前記ＲＮＮ依存関係デコーダに基づいて１つまたは複数の時系列データの予測値を決定するための解析コンポーネントとを含んでいる、システム。
【請求項２】
前記結合コンポーネントが、前記少なくとも２つのデコードされるＲＮＮを結合するためにさらに動作可能であり、前記解析コンポーネントが、前記少なくとも２つの時系列データにおける時系列間依存関係を決定するためにさらに動作可能である、請求項１に記載のシステム。
【請求項３】
前記コンピュータ実行可能コンポーネントが、
前記少なくとも２つの時系列データを収集するデータ収集コンポーネントをさらに含んでおり、前記少なくとも２つの時系列データが多変量時系列データを含んでいる、請求項１または２に記載のシステム。
【請求項４】
前記計算コンポーネントが、前記少なくとも２つのＲＮＮを反復的にエンコードすることによって、収束したＲＮＮをさらに決定する、請求項１ないし３のいずれかに記載のシステム。
【請求項５】
前記少なくとも２つのＲＮＮをエンコードする前記計算コンポーネントと、前記少なくとも２つのデコードされるＲＮＮを結合する前記結合コンポーネントとが、共に同時に実行される、請求項１ないし４のいずれかに記載のシステム。
【請求項６】
前記ＲＮＮが長短期記憶ニューラル・ネットワークを含んでいる、請求項１ないし５のいずれかに記載のシステム。
【請求項７】
前記ＲＮＮが、前記ＲＮＮのゲーティング機構としてゲート付き回帰型ユニットを備えている、請求項１ないし６のいずれかに記載のシステム。
【請求項８】
前記システムが、前記少なくとも２つの時間的文脈ベクトルの前記決定のために、前記注意機構に基づくニューラル・ネットワークをさらに備えている、請求項１ないし７のいずれかに記載のシステム。
【請求項９】
ニューラル・ネットワークを使用して時系列データにおける時間的依存関係を決定するためにプロセッサが実行する方法であって、
プロセッサに動作可能なように結合された計算コンポーネントによって、それぞれの時系列データを有する少なくとも２つの回帰型ニューラル・ネットワーク（ＲＮＮ）をエンコードし、少なくとも２つの時間的文脈ベクトルに基づいて少なくとも２つのデコードされるＲＮＮを決定して、少なくとも２つの時系列データにおける時間的依存関係を決定することと、
前記プロセッサに動作可能なように結合された結合コンポーネントによって、時系列間依存関係文脈ベクトルおよびＲＮＮ依存関係デコーダを決定することと、
前記プロセッサに動作可能なように結合された解析コンポーネントによって、注意機構に基づくニューラル・ネットワークを伴うＲＮＮエンコーダおよび前記ＲＮＮ依存関係デコーダに基づいて１つまたは複数の時系列データの予測値を決定することとを含んでいる、方法。
【請求項１０】
前記結合コンポーネントによって、前記少なくとも２つのデコードされるＲＮＮを結合することと、
前記解析コンポーネントによって、前記少なくとも２つの時系列データにおける時系列間依存関係を決定することとをさらに含んでいる、請求項９に記載の方法。
【請求項１１】
前記プロセッサに動作可能なように結合されたデータ収集コンポーネントによって、前記少なくとも２つの時系列データを収集するデータ収集コンポーネントをさらに含んでおり、前記少なくとも２つの時系列データが多変量時系列データを含んでいる、請求項９または１０に記載の方法。
【請求項１２】
前記計算コンポーネントによって、前記少なくとも２つのＲＮＮを反復的にエンコードすることによって収束したＲＮＮを決定することをさらに含んでいる、請求項９ないし１１のいずれかに記載の方法。
【請求項１３】
前記計算コンポーネントによって前記少なくとも２つのＲＮＮをエンコードすることと、前記結合コンポーネントによって前記少なくとも２つのデコードされるＲＮＮを結合することとが、共に同時に実行される、請求項９ないし１２のいずれかに記載の方法。
【請求項１４】
前記ＲＮＮが長短期記憶ニューラル・ネットワークを含んでいる、請求項９ないし１３のいずれかに記載の方法。
【請求項１５】
前記ＲＮＮが、前記ＲＮＮのゲーティング機構としてゲート付き回帰型ユニットを備えている、請求項９ないし１４のいずれかに記載の方法。
【請求項１６】
前記注意機構に基づくニューラル・ネットワークによって、前記少なくとも２つの時間的文脈ベクトルを決定することをさらに含んでいる、請求項９ないし１５のいずれかに記載の方法。
【請求項１７】
プロセッサに、請求項９ないし１６のいずれかに記載の方法を実行させる、コンピュータ・プログラム。
【請求項１８】
請求項９ないし１６のいずれかに記載の方法をプロセッサに実行させるためのコンピュータ・プログラムを記録した、コンピュータ可読媒体。
【国際調査報告】
2021531529.tif 000055
2021531529.tif 000056
2021531529.tif 000057