(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-11-10
(54)【発明の名称】時系列の大規模集合のためのスケーラブル・モデリング
(51)【国際特許分類】
G06N 20/00 20190101AFI20231102BHJP
G06F 11/34 20060101ALI20231102BHJP
【FI】
G06N20/00
G06F11/34 152
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023526040
(86)(22)【出願日】2021-10-26
(85)【翻訳文提出日】2023-04-27
(86)【国際出願番号】 CN2021126412
(87)【国際公開番号】W WO2022095755
(87)【国際公開日】2022-05-12
(32)【優先日】2020-11-07
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-04-15
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(74)【復代理人】
【識別番号】110000420
【氏名又は名称】弁理士法人MIP
(72)【発明者】
【氏名】クアンツ、ブライアン レオ
(72)【発明者】
【氏名】ギフォード、ウェスリー、エム
(72)【発明者】
【氏名】シーゲル、スチュアート
(72)【発明者】
【氏名】シャー、デュラブ
(72)【発明者】
【氏名】カラグナナム、ジャヤント アール
(72)【発明者】
【氏名】ナラヤナスワミ、チャンドラセカール
(72)【発明者】
【氏名】エカラバラム、ヴィジャイ
(72)【発明者】
【氏名】シャーマ、ヴィヴェク
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042GA11
5B042MA08
5B042MA11
(57)【要約】
様々な実施形態において、時系列データの処理におけるコンピューティング・プラットフォームの計算効率を改善するコンピューティング・デバイス、記憶媒体、およびコンピュータ実装方法は、時系列データを受信することと、関連する時系列の区分の階層にこれをグループ分けすることとを含む。階層は、複数の異なる区分レベルを有する。コンピューティング・プラットフォームの計算能力が決定される。上記複数の異なる区分レベルからの1つの区分レベルが、決定されている計算能力に基づいて選択される。1つまたは複数のモデリング・タスクが定義され、各モデリング・タスクは、選択されている区分レベルに基づく、上記複数の時系列の時系列グループを含む。各モデリング・タスクについて、対応するモデリング・タスクの時系列グループ内のすべての時系列を使用してモデルを訓練することによって、1つまたは複数のモデリング・タスクが、コンピューティング・プラットフォーム上で並列に実行される。
【特許請求の範囲】
【請求項1】
コンピューティング・デバイスであって、
プロセッサと、
ネットワークを介した通信を可能にするために前記プロセッサに結合されているネットワーク・インターフェースと、
前記プロセッサに結合されている記憶デバイスと、
前記記憶デバイスに記憶されているエンジンと
を備え、
前記プロセッサによって前記エンジンを実行することによって、前記コンピューティング・デバイスが、
複数の時系列を含む時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、前記1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む動作を実施するように構成される、コンピューティング・デバイス。
【請求項2】
各区分レベルが、前記時系列データに基づく複数の時系列グループを含む、請求項1に記載のコンピューティング・デバイス。
【請求項3】
各区分レベルが、実質的に同様の数の時系列を含む、請求項2に記載のコンピューティング・デバイス。
【請求項4】
前記計算能力の前記決定が、基準データベースから前記計算能力を受信することを含む、請求項1に記載のコンピューティング・デバイス。
【請求項5】
前記計算能力の前記決定が、前記コンピューティング・プラットフォーム上の前記複数の区分レベルにおいて部分モデリングを実施することによって初期近似を実施することを含む、請求項1に記載のコンピューティング・デバイス。
【請求項6】
前記区分レベルの前記選択が、所定の正確度に対する最高の時間効率に基づく、請求項1に記載のコンピューティング・デバイス。
【請求項7】
前記区分レベルの前記選択が、所定の時間効率に対する最高の正確度に基づく、請求項1に記載のコンピューティング・デバイス。
【請求項8】
各モデリング・タスクについて、交差時系列モデリングが、前記選択されているレベルにおいて並列に実施される、請求項1に記載のコンピューティング・デバイス。
【請求項9】
前記時系列の前記グループ分けが、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方によって実施される、請求項1に記載のコンピューティング・デバイス。
【請求項10】
前記コンピューティング・プラットフォームが、複数のコンピューティング・ノードを含み、
コンピューティング・プラットフォームの前記計算能力の前記決定が、ノードごとに別個に実施される、請求項1に記載のコンピューティング・デバイス。
【請求項11】
実行されると、コンピュータ・デバイスに、時系列データの処理におけるコンピューティング・プラットフォームの計算効率を改善する方法を実行させるコンピュータ可読命令を有するコンピュータ可読プログラム・コードを有形に具現化するコンピュータ可読記憶媒体であって、前記方法が、
複数の時系列を含む前記時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、前記1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む、コンピュータ可読記憶媒体。
【請求項12】
各区分レベルが、前記時系列データに基づく複数の時系列グループを含む、請求項0に記載のコンピュータ可読記憶媒体。
【請求項13】
前記計算能力の前記決定が、基準データベースから前記計算能力を受信することを含む、請求項0に記載のコンピュータ可読記憶媒体。
【請求項14】
前記計算能力の前記決定が、前記コンピューティング・プラットフォーム上の前記複数の区分レベルにおいて部分モデリングを実施することによって初期近似を実施することを含む、請求項0に記載のコンピュータ可読記憶媒体。
【請求項15】
前記区分レベルの前記選択が、所定の正確度に対する最高の時間効率に基づく、請求項0に記載のコンピュータ可読記憶媒体。
【請求項16】
前記区分レベルの前記選択が、所定の時間効率に対する最高の正確度に基づく、請求項0に記載のコンピュータ可読記憶媒体。
【請求項17】
各モデリング・タスクについて、交差時系列モデリングが、前記選択されているレベルにおいて並列に実施される、請求項0に記載のコンピュータ可読記憶媒体。
【請求項18】
前記時系列の前記グループ分けが、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方によって実施される、請求項0に記載のコンピュータ可読記憶媒体。
【請求項19】
前記コンピューティング・プラットフォームが、複数のコンピューティング・ノードを含み、
コンピューティング・プラットフォームの前記計算能力の前記決定が、ノードごとに別個に実施される、請求項0に記載のコンピュータ可読記憶媒体。
【請求項20】
コンピュータ実装方法であって、
複数の時系列を含む時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む、コンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して時系列予測に関し、より詳細には、コンピューティング・デバイスが時系列予測を実施する統計的正確度および計算効率の改善に関する。
【背景技術】
【0002】
時系列とは、固定の時間間隔をおいて連続的に収集されるデータの系列などの、時間的順序においてインデックス付けされているデータ点の系列である。時系列予測とは、モデルを使用して、時系列の以前に観測されている値に基づいて時系列の将来の値を予想することである。多数の関連する時系列にわたる予測は、多くの実際の産業上の問題および適用の顕著な態様である。事実、これは、後続の決定、最適化、ならびに計画システムおよびプロセスを駆動する中核的な構成要素であり得る。
【0003】
今日、データ・セットは、数千の時点にわたる数百万の相関する時系列を有し得る。非限定例として、電気予測(たとえば、異なる地理および時間にわたる電力使用量を予想すること)、道路交通分析などは、時としてビッグ・データとして参照される、極端に多数の時系列を伴う場合がある。多数の時系列は、モデルの数、モデル複雑度、変動、モデリング・プロセスの一部として自動的に探索される外部データを含める可能な方法の増大とともに、多時系列モデリングを実施するときの許容できない計算上の課題を引き起こす。
【0004】
予測のための既存のシステムおよび方法は、データ・サイズ(コンピューティング・アーキテクチャのメモリの容量に合わせることができない可能性がある)と、データが非常に大きい状況を作り出すすべての利用可能な時系列にわたるモデリングの両方に関して、言うまでもなく最先端の(SOTA)予測構成要素およびモデル(交差系列モデリングを提供する)を動員しても、そのような大量の時系列に対応することができるレベルまでスケーリングすることができない。したがって、従来のコンピューティング・システムは、(仮にも)大量の時系列データに基づくモデルの訓練および使用に効率的に対応することができない。さらに、モデルを適合させるために利用可能な時系列データ全体を使用することには、大きく複雑なモデル全体を巻き込む可能性があり、スケーラビリティがさらに悪化し、一方、複数の時系列を使用しないことは、依然として多数のモデルを適合させることを必要とし、ただし、機械学習(ML)モデルまたは深層学習(DL)モデルあるいはその両方などの複雑なモデルに対応し、大量の外因的データとの関係を学習するのに十分なデータを提供することができない。
【発明の概要】
【0005】
様々な実施形態によれば、時系列データの処理におけるコンピューティング・プラットフォームの計算効率を改善するコンピューティング・デバイス、記憶媒体、およびコンピュータ実装方法が提供される。複数の時系列を含む時系列データが受信される。時系列データは、関連する時系列の複数の区分から成る階層にグループ分けされる。階層は、複数の異なる区分レベルを有する。コンピューティング・プラットフォームの計算能力が決定される。上記複数の異なる区分レベルからの1つの区分レベルが、決定されている計算能力に基づいて選択される。1つまたは複数のモデリング・タスクが定義され、各モデリング・タスクは、選択されている区分レベルに基づく、上記複数の時系列の時系列グループを含む。各モデリング・タスクについて、対応するモデリング・タスクの時系列グループ内のすべての時系列を使用してモデルを訓練することによって、1つまたは複数のモデリング・タスクが、コンピューティング・プラットフォーム上で並列に実行される。
【0006】
1つの実施形態において、各区分レベルは、時系列データに基づく複数の時系列グループを含む。
【0007】
1つの実施形態において、各区分レベルは、実質的に同様の数の時系列を含む。
【0008】
1つの実施形態において、計算能力の決定は、基準データベースから計算能力を受信することを含む。
【0009】
1つの実施形態において、計算能力の決定は、コンピューティング・プラットフォーム上の複数の区分レベルにおいて部分モデリングを実施することによって初期近似を実施することを含む。
【0010】
1つの実施形態において、区分レベルの選択は、所定の正確度に対する最高の時間効率に基づく。
【0011】
1つの実施形態において、区分レベルの選択は、所定の時間効率に対する最高の正確度に基づく。
【0012】
1つの実施形態において、各モデリング・タスクについて、交差時系列モデリングが、選択されているレベルにおいて並列に実施される。
【0013】
1つの実施形態において、時系列のグループ分けは、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方によって実施される。
【0014】
1つの実施形態において、コンピューティング・プラットフォームは、複数のコンピューティング・ノードを含む。コンピューティング・プラットフォームの計算能力の決定は、ノードごとに別個に実施される。
【0015】
添付の図面とともに読まれるべきである以下の例示的な実施態様の詳細な説明から、本発明のこれらのおよび他の特徴が明らかになる。
【0016】
図面は、例示的な実施形態のものである。それらの図面は、すべての実施形態を示しているわけではない。加えて、または代わりに、他の実施形態が使用されてもよい。明らかであるかまたは不要であり得る詳細は、空間を節約するか、または、より効果的な例示のために省略される場合がある。いくつかの実施形態は、追加の構成要素もしくはステップを伴って、または、図示されている構成要素もしくはステップのすべてを伴わずに、あるいはその両方で実践されてもよい。異なる図面に同じ参照符号が現れる場合、それは、同じまたは同様の構成要素またはステップを参照する。
【図面の簡単な説明】
【0017】
【
図1】時系列データの大規模集合のスケーラブル・モデリングのためのシステムを実装するために使用することができる例示的なアーキテクチャを示す図である。
【
図2】例示的な実施形態と一致する、時系列区分化およびタスク生成のためのシステムのブロック図である。
【
図3】例示的な実施形態と一致する、種々の予測構成要素、および、それらがどのように相互に関係するかの概念ブロック図である。
【
図4】例示的な実施形態と一致する、ツールキット高レベル・フローの概念ブロック図である。
【
図5】例示的な実施形態と一致する、コンピューティング・プラットフォームによって対応することができる複数の異なる区分レベルにあるグループに時系列データを区分化するための例示的なプロセス、および、多時系列モデリング全体の実行を提示する図である。
【
図6】
図1の効率サーバの機能を実装するために使用することができるコンピュータ・ハードウェア・プラットフォームの機能ブロック図である。
【
図7】例示的な実施形態によるクラウド・コンピューティング環境を示す図である。
【
図8】例示的な実施形態による抽象化モデル・レイヤを示す図である。
【発明を実施するための形態】
【0018】
概説
以下の詳細な説明において、関連する本教示の完全な理解を提供するために、例として多数の具体的な詳細が記載される。しかしながら、本教示は当該詳細なしに実施することができることが明らかなはずである。他の事例において、周知の方法、手順、構成要素、もしくは回路またはこれらの組み合わせは、本教示の態様を不必要に曖昧にすることを回避するために、詳細を省いて、相対的に高いレベルにおいて説明されている。
【0019】
本開示は、時系列の大規模集合のためのスケーラブル・モデリングのシステムおよび方法に関する。今日、産業は計画および経営を促進するための予測を伴う。しかしながら、時系列の数は、データ処理、ならびに、組み込み、探索すべきモデル変形例およびデータの急増とともに、現在の予測システムがコンピューティング・プラットフォーム上で満たすことができない、許容できない計算上の課題を生じる。たとえば、コンピューティング・プラットフォームは、計算を実施するための十分な計算リソースを有しない場合があるか、または、予測結果を受け取るためにかかる時間が長すぎる場合があるか、あるいはその両方である場合がある。この状況は、交差系列モデリングを伴う場合がある、すなわち、モデルに供給されるすべての系列からのデータを使用して予測モデル・パラメータを適合させ、モデルから予測を収集する、最新のML/DL予測モデルについて悪化する。
【0020】
産業界は、利用可能であり得る多数の時系列に予測をスケーリングしようと模索しており、典型的には、追跡可能なモデリングを可能にするために予測モデルの正確度を犠牲にしており(たとえば、パイプライン/モデルおよび特徴複雑度、探索されるモデル、および含まれる外因的データに関して)、場合によっては、これらの計算を実施するコンピューティング・デバイスの計算正確度が劣化する結果となっている。さらに、今日の産業界には、人工知能(AI)/深層学習(DL)方法および予測技法などの、最新の予測構成要素に、大量のデータ(ビッグ・データ)を十分に活用させて予測タスクを容易にするようにすることができない場合がある。事実、モデル内のすべての系列からの情報を活用する交差系列または多変量モデルは言うまでもなく、商用予測において、AI、特にDLの用途は非常に限られている。
【0021】
限定ではなく一例として、需要計画/予測における目標は、観測されている販売または需要および他の外因的要因の履歴を所与として将来の需要または販売を予想することであり得、ここで、時系列は所定の分解能(たとえば、毎日の販売)における一連の販売である。たとえば、サプライ・チェーンにおいて、各エンティティは、下流予測に依拠して、その需要を満たすために準備または出荷あるいはその両方を行うための製品の量を決定し、上流予測に依拠して、それらが種々の供給元から得ることができる供給の量を予想することができる。たとえば、小売業者は、小売業者が定期的に再発注するための必要な量を決定し、各ロケーションに対して定期的に(たとえば、毎週、毎月など)補充するための製品の量を決定するために、場合によっては数千の異なるロケーション(たとえば、店舗)における、場合によっては数百万の製品の各々に対する需要を予測する必要があり得る。これらの製品と店舗との組合せの各々が、1つの時系列を提供する。結果は、数百万またはさらには数十億の時系列データになり得る。
【0022】
他の例は、異なるロケーションおよび時刻におけるトラフィック予測(道路交通などにおける物理的なもの、または、インターネット・トラフィックなどにおける仮想的なもの)、異なる時刻における電気予測(たとえば、地域にわたる電力使用量の予想)、製造およびモノのインターネット(IoT)センサ時系列モデリング(たとえば、数十万の異なるセンサおよびロケーションに関する予測)を含む。異なるノードからの、または、さらには同じノードからの時系列データと関連付けられる多くの課題がある。たとえば、時系列は、整列していない場合があり、値を欠く場合があり、大量の外因的データ(たとえば、気象事象)を含む場合があり、データが疎である場合がある、などである。
【0023】
1つの態様において、本明細書における教示は、スケーラブルであるとともに効果的である(すなわち、所与のコンピューティング・プラットフォーム上で計算的に実現可能であり、その正確度を改善する)現行技術水準の予測技法を用いて、各区分が、並列に実行することができる予測タスクを形成する、並列な交差系列モデリングを実施するための時系列の適切な区分レベルを自動的に決定することによって、多数の時系列および大規模なデータの予測を行う。加えて、本明細書における教示は、予測正確度を改善するとともに、天候、イベント、ソーシャル・メディアなどのような外部要因に関する、増大している量の外因的データを含めるために、時系列およびマルチ・タスク・モデルまたは多変量モデルあるいはその両方にわたる予測、ならびにモデル化またはモデル・パラメータの共有に対する最新の手法を提供する、交差時系列機械学習アルゴリズムが活用されることを容易にする。
【0024】
本明細書における教示によって、エンティティは、自身のデータをアップロードし、試行するモデルのセット、訓練および評価する時間期間を指定し、予測モデル評価結果ならびに展開および使用する予測モデルを効率的に受信することができる。システムは、指定された予測タスクを、利用可能なコンピューティング・リソースに対応するための適切な、適度に分散された/並列計算タスクに自動的に変換し、それによって、処理を可能にするだけでなく、所与のコンピューティング・プラットフォーム上でより正確にもする。データ・サイエンティストは、モデリングのフローおよび変形例を容易に探索することができ、理解に至るために正確度を犠牲にすることなく、一定のスケールにおいて結果を決定することができる。アーキテクチャは、時系列データを、同時に(すなわち、並列に)処理することができるグループに区分化することが可能であることによって、計算効率および処理速度を改善する。ここで、添付の図面に示し、下記に論じる実施例を詳細に参照する。
【0025】
例示的なアーキテクチャ
図1は、時系列データの大規模集合のスケーラブル・モデリングのためのシステムを実装するために使用することができる例示的なアーキテクチャ100を示す。アーキテクチャ100は、複数のノード103(1)~103(N)からの入力データ104を含む。ノードは、同じ領域内にあってもよく、または、分散されていてもよい。たとえば、ノード103(1)および103(2)は、第1の領域170(たとえば、サンフランシスコ市(SF)内にあってもよく、ノード103(3)および103(4)は、第2の領域172(たとえば、ニューヨーク市(NYC))内にあってもよく、ノード103(5)~103(N)は、第3の領域(たとえば、ロサンゼルス市(LA))内にあってもよい、などである。本明細書において使用される場合、ノードは、シリアル情報のソースである。たとえば、ノードは、様々な製品に関する情報を提供する小売店、トラフィック情報または天候情報あるいはその両方を提供するセンサなどであり得る。
【0026】
ネットワーク106は、限定ではなく、ローカル・エリア・ネットワーク(「LAN」)、仮想私設ネットワーク(「VPN」)、セルラ・ネットワーク、インターネット、またはそれらの組合せであってもよい。たとえば、ネットワーク106は、時系列データ・リポジトリ114との通信などの様々な付帯的サービスを提供するイントラネットとして参照されることがある、私設ネットワークに通信可能に結合されるモバイル・ネットワークを含んでもよい。本論述を容易にするために、ネットワーク106は、限定ではなく例としてのみ、多種多様なモバイル通信サービスおよび付加サービスまたは特徴を、その加入顧客および関連するモバイル・デバイス・ユーザに提供するためにキャリアまたはサービス提供者によって運営され得るようなモバイル・ネットワークとして記述される。
【0027】
1つの実施形態において、時系列データ・リポジトリ114は、ノード103(1)~103(N)によって生成される大量の時系列データを記憶するように構成されており、すなわち、各ノードが時系列に対応する。時系列データ・リポジトリ114の時系列データ115は、所定の間隔をおいて、または、トリガ事象(たとえば、効率サーバ130からの要求)を受けて、効率サーバ130に提供することができる。いくつかの実施形態において、時系列データ140は、ノード103(1)~103(N)から効率サーバ130によって直接的に受信される。
【0028】
アーキテクチャ100は、効率サーバ130上で作動するプログラムである時系列効率エンジン103を含む。効率エンジン103は、時系列データ・リポジトリ114から、または、直接的にノード103(1)~103(N)から、あるいはその両方から時系列データ115を受信するように構成されている。効率エンジン103は、大量の時系列データの階層的区分化を実施するように動作可能である。様々な実施形態において、より詳細に後述する、ドメイン・ベースのグループ分けまたはデータ・ベースのグループ分けあるいはその両方が使用されてもよい。この初期グループ分けを受けて、効率エンジン103によってグループ分けレベルが自動的に決定される。各時系列データ・グループは、コンピューティング・ノード150(1)~150(N)によって表されるコンピューティング・デバイスによって処理されることになるモデリング・タスクを表す。タスクは、タスクを並列に実行するために、1つまたは複数のコンピューティング・デバイス150(1)~150(N)に分散される。時系列データ・グループによって表される計算負荷を分散することによって、処理時間が低減され、同時に、グループごとの的を絞ったモデルを有効化することによって、正確度も改善される可能性がある。これらの概念の各々については、下記により詳細に論じる。
【0029】
効率エンジン103は、時系列データを自動的に区分化して、1つまたは複数のコンピューティング・デバイス上で並列に実行するためのタスクを生成するように構成されている。1つの態様において、複数の系列にわたるモデリングは(たとえば、系列当たり単一のモデルを訓練することに対して)、スケーラビリティと、機械学習(ML)および深層学習(DL)ベースのモデリングに関する性能の両方に関する改善を提供する。単一の時系列は、複雑なモデルの正確な訓練を可能にするのに十分なデータを有しない場合がある。この状況は、共通のパターン(時系列にわたるものと外因的データからのものの両方)を学習するために複数の関連する時系列を活用することと、マルチタスク・モデリングと多変量モデリングの両方において相関および依存などの関連する系列間の関係を含めることを要求する、外因的データが導入されるときに悪化する。
【0030】
しかしながら、1つのモデルに対して含まれる系列が多すぎる場合も、スケーラビリティが欠如し、不要な複雑度がもたらされる。すなわち、データ・サイズとモデル・サイズの両方が大きくなりすぎ、モデルは、別個のモデルであればより容易に捕捉されるであろう、複数の異なるタイプの関係を符号化するのに十分に大きくならなければならない。
【0031】
たとえば、小売業者は、電子機器と衣類の両方を販売する場合があるが、これらのジャンルは一般的には、共通関係または相互関係をあまり有せず、より一般的なパターンを捕捉するのに十分なデータが各ジャンルにあり得る。事実、両方のグループにまたがるモデルを訓練することから複雑度が加わるのみである。したがって、そのようなシナリオにおいては、各ジャンルについて別個のモデルを訓練する方がよい。これに関連して、効率エンジン103は、グループごとのモデリングを実施するために時系列のどのような区分化が行われるべきか(区分)を決定することが可能である。そのような区分化は、各モデルがより関連性の高いデータに制約されるため、モデルがより正確になることを可能にするため、より効果的なモデリングを可能にする。さらに、モデルは、別個の情報に対処する必要がないため、複雑度を低くすることができる。効率エンジン103のパイプライン全体(およびすべての予測ステップ)は、特定の区分向けに調整することができる(異なるグループは構成要素向けにまったく異なる設定を必要とし得るため)。
【0032】
各区分モデリング・タスクを、各コンピューティング・ノード(たとえば、150(1)~150(N))上で並列に実行することができ、各コンピューティング・ノードが、低減された時系列データ・サイズを受信するため、効率エンジン103の区分化はまた、はるかに高いスケーラビリティを可能にする。一実施形態において、他の区分からの情報も、集約レベルにおける各区分のモデリング(たとえば、各他のグループからの系列の平均値をとる)に含めることができる。
【0033】
論述を目的として、時系列データの区分化およびそのための処理に使用することができるデバイスのいくつかの例を表すために、異なるコンピューティング・デバイス(たとえば、150(1)~150(N)および130)が、図面に見られる。今日は、コンピューティング・デバイスは、典型的には、タブレット・コンピュータ、ラップトップ、デスクトップ、個人情報端末(PDA)、ポータブル・ハンドセット、スマート・フォン、およびスマート・ウォッチの形態をとるが、それらは、消費者向けおよび企業向けの電子デバイスを含む、他のフォーム・ファクタにおいて実装されてもよい。効率エンジンは、膨大な量の時系列データを処理することが可能であるように1つまたは複数のコンピューティング・デバイスの機能を増強することが可能である、特別に構成されたコンピューティング・デバイスになるように、そのホストを構成することにおいて、技術的改善を提供する。時系列データ・リポジトリ114および効率サーバ130は、例として異なるプラットフォーム上にあるように示されているが、様々な実施形態において、これらのプラットフォームは、様々な組合せにおいて組み合わされてもよい。他の実施形態において、これらのコンピューティング・プラットフォームのうちの1つまたは複数は、クラウド120においてホストされる仮想機械またはソフトウェア・コンテナの形態で仮想コンピューティング・デバイスによって実装されてもよく、それによって、より詳細に後述する、処理および記憶のための弾性的なアーキテクチャが提供される。したがって、時系列データ・リポジトリ114および効率サーバ130の各々に関して本明細書に記載されている機能はまた、1つまたは複数の異なるコンピューティング・デバイスによって提供することもできる。
【0034】
例示的なブロック図
図2は、例示的な実施形態と一致する、時系列区分化およびタスク生成のためのシステム200のブロック図である。論述を目的として、
図2のブロック図は、
図1のアーキテクチャ100を参照して説明される。システム200は、効率エンジン103によって、時系列を自動的に区分化して時系列モデリングを並列に実行するための3つの主な動作が存在することを示す。第1に、時系列データ202が、効率エンジン103によって受信され、階層的区分化が実施される。区分化は、より大きいグループ・サイズ(および、より少ない総グループ数)を有する区分、および、より小さいグループ・サイズ(および、より多い総グループ数)を有する下位区分が存在し得るという点において、階層的である。たとえば、最大グループ・サイズ区分207は、これに含めるための最も緩い基準を含み得(たとえば、同じ領域、同じ店舗など)、したがって、最も大きいグループを含み得る(すなわち、本例においては時系列(ts1~ts10))。より緊密な区分グループは、関連し、交差系列モデリング209から受益する可能性がより高い時系列セットを表す。最も緊密な区分グループは、本明細書においてはレベル1区分グループ(またはグループ分け)として参照され、レベルはグループがより多くの時系列を導入するにつれて増大する。第1レベル区分は、これに含めるためのより厳密な基準を有する(たとえば、領域内の同じ製品ライン)(たとえば、211、213)。
【0035】
様々な実施形態において、異なる階層的区分化戦略204が使用されてもよい。1つの実施形態において、ブロック206によって表される、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方が使用されてもよい。別の実施形態において、ブロック208によって表される、データ・ベースのグループ分けが、データ間の関係を推測するために使用されてもよい。データ・ベースのグループ分けは、時系列履歴および特性自体に基づくグループ分けであり、すなわち、事前に指定されたグループ分けセットではなく、データ自体に基づいて自動的に計算される(すなわち、データ駆動の)グループ分けである。たとえば、データ・ベースのグループ分けの1つの実施形態は、たとえば、動的時間伸縮(DTW)距離または相関のような類似度および距離測度を、階層的凝集クラスタリングまたは反復k平均クラスタリングなどの階層的クラスタリング・アルゴリズムと組み合わせて使用すること、時系列距離メトリックを使用することなど、時系列を、それらの履歴パターンおよび大きさに基づいてクラスタリングすることを含んでもよい。別の例示的な実施形態は、階層的クラスタリングを適用するための特徴として、カテゴリ・レベル(たとえば、小売の場合の製品カテゴリ、製品クラス、市場区分、店舗数、店舗の州/領域など)などの周知の属性などの、平均、最大値、分散、ナイーブ/終値予測誤差、傾向および季節感受性などの履歴系列値の要約統計を含む、時系列の属性を使用することである。別の実施形態は、グラフを導出することであり得、当該グラフは、各時系列をグラフ内のノードとして有し、時系列間の複数のタイプの関係を、ノードを接続するグラフ内の異なるリンクとして表し、関係の強度を表す異なる重みを有する。これらのリンクは、以前に言及した相関、時系列距離、属性類似度などを含む、異なる関係から導出することができる。このとき、階層的グラフ区分化/クラスタリング・アルゴリズムをこのグラフに適用して、異なるレベルの区分を形成することができる。階層的区分化のための他の技法も、本明細書における教示によってサポートされる。さらに、モデリング・タスクならびにその複雑度および計算負担が同じ区分レベル内の各グループについて同様になるように、所与の区分化レベルの各グループにおけるサイズ(すなわち、時系列の数)が異なりすぎないことを強制する、グループ・サイズに対する制約も含むことができる。これは、複数の異なる実施形態によって達成することができる。たとえば、1つの実施形態において、階層的凝集クラスタリングを使用すると、各階層レベルにおけるクラスタ・サイズは、常に固定サイズ範囲内に入る。アルゴリズム的クラスタリングなどの他の実施形態において、サイズ類似度制約を、クラスタリング最適化問題に追加することができる。いくつかの実施形態において、クラスタの後処理(小さすぎるクラスタの併合または大きすぎるクラスタの分割など)を使用することができる。
【0036】
1つの実施形態において、区分内の各グループは、他のグループからの任意の追加の情報をスケーラブルに活用することを可能にするために、他のグループからの大域的集約(たとえば、平均値系列)などの、他のグループからの1つまたは複数の集約系列、または、グループごとの集約系列を含むこともできる。そのような手法は、各階層レベルにおけるモデリングを改善することができる。
【0037】
第2に、効率エンジン103が、使用する区分レベル210を決定する。その目的のために、効率エンジンは、モデリング正確度とモデリング時間とのトレード・オフを図ることができる。その目的は、階層的区分化において、スケーラビリティを提供しながら、所定の所望されるレベルにあるモデリング正確度を提供する、モデルを訓練するための適切な区分化レベルを見つけることである。その目的のために、効率エンジンは、本明細書においては初期近似として参照される、算出を実施するコンピューティング・デバイスの計算能力の初期決定を行うことができる。様々な実施形態において、初期近似は、直接的に各コンピューティング・デバイスから、または、コンピューティング・デバイスの能力(たとえば、プロセッサおよびコアの数、メモリの量、クロック速度、現在負荷など)を記憶する基準データベースから受信されてもよい。初期近似に基づいて、所定の時間期間内に時系列データを処理することが可能である区分レベルが選択される。1つの実施形態において、コンピューティング・ノードは均質であり、1つのコンピューティング・ノードの性能が、他のコンピューティング・ノードを代表すると仮定される。代替的に、各コンピューティング・ノード150(1)~150(N)は、独立して評価される。
【0038】
1つの実施形態において、効率エンジン103は、各々の正確度および計算時間を試験するために候補レベルセットからの各レベルからのサブセット(たとえば、1つまたは複数のグループ)について部分モデリングを(並列に)実施することによって、試験を実施する。このように、計算能力が決定される。時系列データの処理を実施するコンピューティング・デバイスの計算能力が決定されると、所定の時間期間および所定の閾正確度における時系列データの処理に対応することができる区分化レベルが選択される。
図2の例において、効率エンジン103は、レベル2区分(別個にかつ同時にモデル化される区分内の2つの異なるグループとしてグループ1(たとえば、215)およびグループ2(たとえば、209)を含む)が、より良好な正確度を提供すると判定し、これは、単純に、モデリング構成のサブセットについて、グループ1(たとえば、215)のみなどの、そのレベル(たとえば、試験されているレベル2)のグループのサブセットを最初に試験し、他のレベルにおける同様の試験と比較することに基づくことができる。たとえば、選択すべき区分化レベルは、それ自体のグループ内の各個々の時系列を含むレベル0(この場合、モデルは各個々の時系列に別個に適合される)、3つの異なるグループとして211、213、および215を含むレベル1(別個のモデルが3つのグループの各々に並列に適合される)、独立してモデル化することができるそのレベル内の2の異なるグループとして209および215を含むレベル2、ならびに、1つのモデルをすべての時系列にわたって適合させること(時系列セット全体をともにモデリングすること)に対応するレベル3=207であってもよい。この階層結果を上下に動かすことによって、正確度と効率の両方に関して異なる結果が得られ、たとえば、これら両方が、レベル0から或る点(たとえば、レベル1または2)まで増大し、より高いレベルに対して低減し始め得る。
【0039】
コンピューティング・デバイスによってこのレベルに対応することができると判定されると、その区分化レベルが選択される。その区分レベルにおける各グループは、別個のコンピューティング・デバイスによって並列に実施されるべきタスクと考えられる。1つの実施形態において、1つの区分レベルにおける各グループは、同様の量の計算リソースを利用する。このように、すべての計算が、所定の時間範囲内に完了する。
【0040】
第3に、効率エンジンが、対応するコンピューティング・ノード上で各タスクを並列に実行する。この時点で、適切な階層レベルが選択されており、そのレベルにおけるすべてのグループ分けに対するモデリング全体を実施することができる。上記で言及したように、いくつかの実施形態において、コンピューティング・ノード150(1)~150(N)が均質であると仮定される。しかしながら、コンピューティング・ノードが異質であると判定するシナリオにおいては、様々な実施形態において、この作業は、性能が最低のコンピューティング・ノードに基づいて並列に分散されるか、または、タスクは、対応するコンピューティング・ノードの能力に対応するように区分化することができる。たとえば、効率エンジン103は、グループ・サイズおよび推定タスク複雑度に基づいて、各ノードに適切に割り当てることができる(より小さい/より容易なタスクを、それほど強力でないコンピューティング・ノードに割り当てる)。
【0041】
例示的な予測構成要素
予測は、下流の決定および最適化システムに供給するためのスケールにおいて、複数の関連する時系列および複数の水平線にわたるそれらの不確実性を予想することを含む。これに関連して、例示的な実施形態と一致する、種々の予測構成要素、および、それらがどのように相互に関係するかの概念ブロック
図300を提供する
図3が参照される。大量の時系列データ302が、効率エンジンによって受信される。ブロック304において、データの品質が評価され、それに従ってクリーニングされ得る。たとえば、異常値検出および補正を実施することができる(たとえば、単純な方法で、所定の標準偏差を超えて変動するデータがフィルタリング除外またはウィンザライズされる)。1つの実施形態において、欠測日および欠測値に、これらの値を適切に埋めて、それらのデータ内でフラグ立てすることによって、対処することができる。ブロック306において、時系列データは、すべての時点値にタイム・スタンプを割り当て、(欠測フラグ値を有する)配列データ内の欠測時点を埋めることによって仮想的に整列され、したがって、各時点のデータを、適切に参照することができ、共通インターフェース内で提供することができ、可能な異なる分解能の時系列データが解決される(たとえば、最も高い分解能にある値を提供し、値の欠測している高分解能の時点について、より低い分解能にある値の入力/補間、反復、または欠測としてフラグ立てのいずれかを行うことによって)。
【0042】
ブロック308において、モデリングが管理され、各々が異なる特徴、目標、設定などを有し得る複数のタスクに対して,系列データが準備される。各タスクは、たとえば、異なる水平線および時間オフセットについて時系列値を予想することを含み得る予想タスクである。たとえば、小売時系列について次の日の総出荷数を予想することが1つのタスクであり得、別のタスクは、再来週の出荷数を予想することであり得、別のタスクは、再来月の平均出荷数を予想することであり得る、などである。これはまた、予想モデルを使用して最初に欠測値を埋め、その後、予測モデルを使用して、それらの埋められた値を使用して将来の値を予想することなど、最終予想を行うことの一部になるサブ・タスクも含むことができる。ブロック310において、季節性効果のモデリングが、変換、モデルなどを介して対処される。たとえば、季節性効果は、一週間のうちの特定の曜日が他の曜日よりも大きい値を有する週間パターン、または、時間パターンなど、関連する時系列のセットにわたって共通であることが多い、時系列の定期的な、典型的には循環的なパターンであってもよい。たとえば、小売業において、週末中に販売が増大し、週の半ばに低減する、異なる領域の店舗にわたって共有される週間季節パターン、および、感謝祭の休暇あたりでそれらの週の間に販売がはるかに高い休日季節パターンが存在することが多い。別の例として、電力消費において、典型的には、仕事の後に急増し、深夜時間帯に向かって低減する家庭エネルギー使用など、複数の異なるロケーション・タイプにおけるエネルギー使用が異なる時間において急増する時間パターンが存在する。季節性効果をモデリングすることによって、結果的に、これらを、先行するステップとしての別個の季節モデルの適合もしくは分解によって行うことができるか、または、時系列予測モデル自体の一部として組み込むことができる。効率エンジンは、目標生成312を提供することができる。目標生成とは、顕著な予想タスクの各々の予想目標を計算および生成することである(たとえば、次週合計予想タスクに対応する、次週の各時点の各時系列の値の合計を生成すること)。
【0043】
ブロック314において、問題に特有の特徴が、異なる変換セットによって対処され得る。時系列データは、日付または値あるいはその両方などの欠測特徴を有する場合がある。その目的のために、ブロック318において、欠測特徴が回復される。時系列データは、ドリフトを受ける場合がある。たとえば、時系列の基礎となる性質およびパターンは、経時的に変化する場合がある。言い換えれば、時系列の分布は非定常性である場合があり、分布が経時的に漸進的にシフトまたは変化する要素を有する場合がある。たとえば、エネルギー需要の場合、エネルギーに対する需要は、定期的な循環季節パターンに従い得るが、需要のベース・レベルは、時としてランダムにドリフトするように経時的に低速に変化し得るか、または、経時的に低速に増大もしくは低減し得る。これに関連して、ブロック316において、ドリフトが解決される。最近時点をより重く強調するとともに、モデリング、および、現在の状態をより反映する時点に焦点を当てるために、現在時点におけるモデルを訓練するときのサンプル重み付けなどの、種々の技法を使用して、ドリフトを処理することができる。
【0044】
効率エンジンによる別の考慮事項は、複数の異なるタイプの学習であり得る。たとえば、マルチ・タスク学習モデリング320、単変量モデリング322、およびモデル/ハイパーパラメータ最適化324があり得る。需要信号は、異なる要因の間に非線形関係を有することが多く、柔軟な機械学習/深層学習モデルが使用され得る。特定の予測は、天候、計画、競合相手情報、イベント情報などのような外部データを使用し得る。
【0045】
1つの実施形態において、効率エンジンは、不確実性モデリングを実施する(すなわち、ブロック330)。たとえば、効率エンジンは、実際の使用および下流システムを有効化するための予測について顕著である予想分布をモデリング(および評価)することができる。不確実性モデリング330は、ユーザ制御326とともに、メタ・モデリング328を実施するために使用することができる。次いで、メタ・モデリング328は、決定最適化332および時系列データの評価/解釈(すなわち、334)に使用することができる。評価/解釈モジュール334は、問題特有の性能メトリックを、メタ・モデリング情報328および決定最適化332情報とともに使用して、効率的な展開および更新可能なモデルならびにデータ構造を提供することができる。
【0046】
図4は、例示的な実施形態と一致する、効率エンジン高レベル・フローの概念ブロック
図400である。モデルまたはモデリング・パイプラインが利用可能なデータに適合される任意の予測モデリング・タスク訓練402、および、訓練されたモデルまたはモデリング・パイプラインがいくつかのデータに適用されて予想が生成される推測または予想(図示せず)のための2つの主な段階があり得る。モデリング・タスクおよび仕様(たとえば、構成)は、タスク仕様404によって与えられる。このタスク仕様404は、欠測日付を埋めること、欠測値インピュテーション、集約、特徴変換、特定の予測モデル・セットなどのような、モデリング・パイプラインに含まれるべきである構成要素のセットを、モデルの挙動を変化させるモデル設定、ならびに、たとえば、ディープ・ニューラル・ネットのレイヤの数およびレイヤあたりのニューロンの数、および学習率などの、予測モデル・ハイパー・パラメータである、インピュテーション方法およびハイパー・パラメータなどの、これらの各々について試行する設定のセットまたは範囲とともに、定義する。
【0047】
タスク仕様に基づいて、指定のモデリング・ステップのすべてを有するパイプライン・オブジェクト406がインスタンス化される。次いで、パイプラインが、ハイパー・パラメータ最適化(HPO)を実施するための、すなわち、そのパイプラインならびに入力データおよび時系列の所与のセットについての最良の設定/ハイパー・パラメータを見つけるための、異なる設定またはハイパー・パラメータについて、計算リソースが許容する限り並列に、訓練および評価データ420について訓練408および評価412される。このように、異なる時系列サブセット・グループについてモデリング・パイプラインの異なる訓練済みバージョン(すなわち、異なる設定)を使用するためにタスクを分割することによって、グループごとに最良のハイパー・パラメータ設定を選択することが可能になる。ハイパー・パラメータ最適化に関して、各タスクおよび対応するパイプラインは、多くの異なる設定に対して実行され、以前に言及したように、これらの設定の小さいサブセットを使用して、ランダムにサンプリングされるか、または、モデリング複雑度に従う、区分化レベルを決定することができる。
出力は、データに関するその性能メトリックを伴う、訓練済みパイプライン414である。次いで、試験データ420が訓練済みパイプライン422に渡されて、使用可能な予想出力、すなわち、各タスクに対する予想、ベンチマーク結果、レポートなど424が得られる。
図4の例に示す一般的な手法において、入力データは、特定のフィールド430を有するSparkデータフレームの正規化形式にある。
【0048】
例示的なプロセス
時系列データの大規模集合のスケーラブルなモデリングのためのシステムのアーキテクチャ100の上記の概説、ならびに、時系列区分化およびタスク生成のためのシステム200のブロック図の論述を用いて、ここで、例示的なプロセスの高レベルの論述を考察することが有用であり得る。その目的のために、
図5は、例示的な実施形態と一致する、コンピューティング・プラットフォームによって対応することができる区分レベルに時系列データを区分化するための例示的なプロセス500、および、多時系列モデリング全体の実行を提示する。このプロセスは、効率サーバ130の効率エンジン103によって実施されてもよい。プロセス500は、ハードウェア、ソフトウェア、またはそれらの組合せにおいて実装することができる一連の動作を表す論理フローチャート内のブロックの集合として示されている。ソフトウェアのコンテキストにおいて、ブロックは、1つまたは複数のプロセッサによって実行されると、記載されている動作を実施するコンピュータ実行可能命令を表す。一般的に、コンピュータ実行可能命令は、特定の機能を実行するかまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含んでもよい。動作が記載されている順序は、限定として解釈されるようには意図されておらず、プロセスを実施するために、任意の数の記載されているブロックを、任意の順序で組み合わせること、または、並列に実施すること、あるいはその両方ができる。論述を目的として、プロセス500は、
図1のアーキテクチャ100を参照して説明される。
【0049】
ブロック502において、時系列データが、効率エンジン103によって受信される。様々な実施形態において、時系列データは、直接的に様々なノード103(1)~103(N)から(すなわち、140)、または、時系列データ・リポジトリ114から(すなわち、115)、あるいはその両方から受信されてもよい。ブロック504において、階層的区分化が、系列データに対して実施される。
【0050】
ブロック504において、効率エンジン103が、利用可能な計算リソースに基づいて階層の最適な区分レベルを決定する。その目的のために、計算リソースの初期決定が実施され得る。1つの実施形態において、効率エンジン103は、計算能力を確認するために、各々の正確度および計算時間を試験するために候補レベルセットにおいて当該レベルからのいくつかのグループについて部分モデリングを(並列に)実施することによって、試験を実施する。
【0051】
時系列データの処理を実施することになっているコンピューティング・プラットフォームの計算能力が決定されると、ブロック506において、所定の時間期間および所定の閾正確度における時系列データの処理に対応することができる区分化レベルが選択される。
【0052】
ブロック508において、効率エンジン103が、対応するコンピューティング・ノード上で、選択された区分レベル内の各タスクを並列に実行する。たとえば、区分は、すべての時系列をグループ(クラスタとしても知られる)に割り当てること、すなわち、時系列を異なるグループのセットに分割することであるため、区分自体がすべてのグループの集合である。効率エンジン103は、区分内の各グループに対するモデリングを実施する、すなわち、異なる別個の予想モデル(たとえば、交差時系列または多変量モデル)が、区分内の各グループに適合される。異なるモデルが、各グループに対して生成される。したがって、モデルの数は、区分内のグループの数に等しい。たとえば、時系列ID{1,2,3,4,5}を考察する。1つの区分は、{{1,2},{3,4,5}}となる。本例において、この区分は、それぞれ2つおよび3つの時系列を有する2つのグループ(本明細書においては「部分」、「ブロック」、または「セル」として参照されることがある)を有し、各グループについて、そのグループ内のすべての時系列を使用して、かつ、それに基づいて、別個のモデルが訓練される。第1のグループは{1,2}であり、第2のグループは{3,4,5}である。別の区分は、{{1,3},{4,2},{5}}となる。この例において、区分は3つのグループを有し、モデリング・プロセスから3つの予想モデル(またはモデリング・パイプライン)がもたらされる。
【0053】
1つの実施形態において、各区分グループに対する各交差時系列モデリング・タスクは、データ変換および前処理、外因的データ特徴構築および包含、ならびに時系列モデリングを含む、その区分グループに特有であるモデリングのプロセスにおける1つまたは複数の最良のハイパー・パラメータおよび設定を選択することによって、その区分のモデルおよび構成要素の最良のセットを識別することを含み、それによって、関連する時系列の異なるサブセットの最良の設定を可能にすることによって1つの区分または個々の時系列モデリングを使用するよりも高いモデリング正確度が可能になる。
【0054】
1つの実施形態において、区分内の関連する時系列の各グループに対する交差時系列モデリングのための各モデリング・タスクは、時系列の集合全体のスケーラビリティ、および、時系列モデリング結果を効率的に達成することを可能にするために、分散コンピューティング・フレームワークを活用することによって並列に実行される。時系列階層的区分化は、領域知識および意味論モデリングによって決定することができ、結果、区分化は、領域不可知的に適用することができる。
【0055】
1つの実施形態において、時系列階層的区分化は、一致する異なる属性/特性の強度、履歴的相関の強度および系列間の依存関係などのような、時系列間の関係を決定するスケーラブルなデータ分析によって決定することができ、これは、ノードとしての時系列、ならびに、関係およびそれらの強度を表すエッジを有するグラフに変換することができる。スケーラブル履歴的グラフ区分化を適用して、階層的区分化を決定することができる。
【0056】
1つの実施形態において、モデリングを実施するために階層的区分化におけるレベルを選択することは、モデリング考慮事項に基づいて最小および最大データ・サイズに対する基準を満足するレベルのサブセットを選択すること、それらのレベルのモデリング正確度または効率あるいはその両方を推定すること、ならびに、満足する正確度および効率の要件に基づいて最良のレベルを選択することによって実施される。たとえば、効率要件内の最も正確なレベル、または、正確度要件内の最も効率的なレベルを選択することができる。
【0057】
1つの実施形態において、サブセット内の各レベルにおけるモデリングの正確度および効率は、提出されるこれらの試験グループの各々について正確度および効率を測定し、1つのレベル内のグループのセット全体に外挿することによって、各レベルにおいて、各レベルにおける各グループを実行するのにかかる時間、および、モデリングがどれだけ正確であるかを推定するために、計算リソースにわたって並列に、各レベル内のグループのサブセットに対して部分モデリング・タスク(たとえば、限られた反復回数または設定のサブセットあるいはその両方にわたってなど、ある時間予算内で訓練すること)を実行することによって推定される。正確度の外挿は、部分モデリング中の複数の異なる時点におけるモデリング正確度を評価して関係および収束を推定することによって、時間予算とモデルの正確度との間の関係を推定することによって、実施することができる。
【0058】
1つの実施形態において、各階層的区分化レベル内の各グループは、スケーラビリティに影響を与えることなく、グループごとの交差時系列モデリングを場合によって改善するために、他のグループからの1つまたは複数の追加の集約時系列を含むことができる。すべてのグループにわたる平均(または他の統計あるいはその両方)値集約系列を、1つの系列として各グループに追加して、グループ内でモデリングするときに大域的系列情報を捕捉することを可能にすることができる。1つの実施形態において、グループの数が相対的に少ない場合、同じレベル内の各他のグループの平均(または他の統計あるいはその両方)値集約系列を、1つの系列として各グループに追加して、グループ内でモデリングするときに交差グループ関係を捕捉することを可能にすることができる。
【0059】
例示的なコンピュータ・プラットフォーム
上述したように、各区分が並列に実行することができる予測タスクを形成する、交差系列モデリングを並列に実施するための時系列の適切な区分を決定するためのシステムの実装に関係する機能は、
図1に示すように、かつ、
図5のプロセスに従って、無線または有線通信を介してデータ通信のために接続されている1つまたは複数のコンピューティング・デバイスを使用することによって実施することができる。
図6は、
図1の効率サーバ130の機能を実装するために使用することができるコンピュータ・ハードウェア・プラットフォーム600の機能ブロック図を提供する。
【0060】
コンピュータ・プラットフォーム600は、システム・バス602に接続されている、中央処理装置(CPU)604、ランダム・アクセス・メモリ(RAM)または読み出し専用メモリ(ROM)あるいはその両方606、ハード・ディスク・ドライブ(HDD)608、キーボード610、マウス612、ディスプレイ614、および通信インターフェース616を含むことができる。
【0061】
1つの実施形態において、HDD608は、本明細書に記載されているように、効率エンジン640などの様々なプロセスを実行することができるプログラムを記憶することを含む機能を有する。効率エンジン640は、ノードの各クラスタのパラメータの設定を決定するための種々の機能を実施するように構成されている様々なモジュールを有することができる。たとえば、時系列データ・リポジトリ114からの時系列データ115、複数の異なるロケーションにあり得る様々な入力ノードからの時系列データ140、または、クラウド120内にあり得る他のデータ、あるいはその組合せを含む、様々なソースからの時系列データを受信するように動作可能であるインタラクション・モジュール642があり得る。
【0062】
1つの実施形態において、ドメイン・ベース/意味論モデル・ベースのグループ分けを実施するように動作可能である第1のグループ分けモジュール644が存在する。代替的に、または加えて、データ・ベース・グループ分けモジュール646が存在してもよい。
【0063】
時系列データの階層的区分化を実施するように動作可能なグループ分けレベル・モジュール648が存在し得る。
【0064】
利用可能な計算リソースに基づいて最適な区分レベルを決定するように動作可能であるタスク定義モジュール650が存在し得る。各時系列データ・グループは、コンピューティング・ノード150(1)~150(N)によって表されるコンピューティング・デバイスによって処理されることになるタスクを表す。
【0065】
選択された区分レベルに基づいて、タスクが並列に処理されるように、1つまたは複数のコンピューティング・デバイス150(1)~150(N)にタスクを分散するように動作可能である実行モジュール652が存在し得る。
【0066】
例示的なクラウド・プラットフォーム
上述したように、各区分が並列に実行することができる予測タスクを形成する、交差系列モデリングを並列に実施するための時系列の適切な区分を決定するためのシステムの実装に関係する機能は、クラウドを含んでもよい。本開示は、クラウド・コンピューティングに関する詳細な説明を含むが、本明細書において記載されている教示の実施態様は、クラウド・コンピューティング環境に限定されないことは理解されたい。むしろ、本開示の実施形態は、現在知られているかまたは後に開発される任意の他のタイプのコンピューティング環境とともに実施されることが可能である。
【0067】
クラウド・コンピューティングは、最小限の管理労力またはサービスの提供者との対話によって迅速に提供しリリースすることができる、設定可能なコンピューティング・リソース(たとえば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械、およびサービス)の共有されるプールに対する簡便なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも5つの特性、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルを含むことができる。
【0068】
特性は以下のとおりである。
【0069】
オンデマンド・セルフサービス:クラウド顧客は、人間がサービスの提供者と対話することなく、必要に応じて自動的に、サーバ時間およびネットワーク・ストレージのようなコンピューティング能力を一方的に供給することができる。
【0070】
ブロード・ネットワーク・アクセス:機能がネットワークを介して利用可能であり、異種のシンまたはシック・クライアント・プラットフォーム(たとえば、携帯電話、ラップトップ、およびPDA)による使用を促進する標準的なメカニズムを通じてアクセスされる。
【0071】
リソース・プーリング:提供者のコンピューティング・リソースが、種々の物理的および仮想リソースが需要に従って動的に割り当てられ、再割り当てされる、マルチテナント・モデルを使用して、複数の消費者にサービスするためにプールされる。消費者が一般的に、提供されるリソースの正確なロケーションに対する制御または知識を有しないが、より上位の抽象化(たとえば、国家、州、またはデータセンター)におけるロケーションを指定することが可能であり得るという点において、位置独立の感覚がある。
【0072】
スピーディな拡張性:機能を、場合によっては自動的に、迅速かつ適応的に供給して、迅速にスケール・アウトし、迅速にリリースして、迅速にスケール・インすることができる。消費者にとって、供給するために利用可能な機能は多くの場合、無制限であるように見え、いつでも任意の量を購入することができる。
【0073】
サービスが計測可能であること:クラウド・システムは、サービスのタイプにとって適切な何らかのレベルの抽象化(たとえば、ストレージ、処理、帯域幅、およびアクティブなユーザ・アカウント)における計量機能を活用することによって、リソース使用を自動的に制御および最適化する。リソース使用は、監視、制御、および報告することができ、利用されるサービスの提供者と消費者の両方にとっても透明性を提供する。
【0074】
サービス・モデルは以下のとおりである。
【0075】
サービス型ソフトウェア(SaaS):消費者に提供される機能は、クラウド・インフラストラクチャ上で作動する提供者のアプリケーションを使用することである。アプリケーションは、ウェブ・ブラウザ(たとえば、ウェブベースの電子メール)のようなシン・クライアント・インターフェースを通じて様々なクライアント・デバイスからアクセス可能である。消費者は、場合によっては制限されたユーザ特有のアプリケーション構成設定を除いて、ネットワーク、サーバ、オペレーティング・システム、ストレージ、またはさらには個々のアプリケーション機能を含む、基礎となるクラウド・インフラストラクチャを管理せず、制御しない。
【0076】
サービス型プラットフォーム(PaaS):消費者に提供される機能は、プログラミング言語および提供者によってサポートされるツールを使用して作成された、消費者が作成または取得しているアプリケーションを、クラウド・インフラストラクチャ上に展開することである。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む、基礎となるクラウド・インフラストラクチャを管理せず、制御しないが、展開されているアプリケーション、および、場合によっては、環境設定をホストするアプリケーションを制御する。
【0077】
サービス型インフラストラクチャ(IaaS):消費者に提供される機能は、消費者が、オペレーティング・システムおよびアプリケーションを含むことができる、任意のソフトウェアを展開および作動させることが可能である場合に、処理、ストレージ、ネットワーク、および他の基礎的なコンピューティング・リソースを供給することである。消費者は、基礎となるクラウド・インフラストラクチャを管理せず、制御しないが、オペレーティング・システム、ストレージ、展開されているアプリケーションを制御し、場合によっては、ネットワーク接続構成要素(たとえば、ホスト・ファイアウォール)の選択を制限付きで制御する。
【0078】
展開モデルは以下のとおりである。
【0079】
プライベート・クラウド:クラウド・インフラストラクチャは、組織のためにのみ運用される。当該インフラストラクチャは、組織またはサード・パーティによって管理され得、施設内または施設外に存在し得る。
【0080】
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織によって共有され、関心事(たとえば、任務、セキュリティ要件、ポリシ、およびコンプライアンス考慮事項)を共有している特定のコミュニティをサポートする。当該インフラストラクチャは、組織またはサード・パーティによって管理され得、施設内または施設外に存在し得る。
【0081】
公衆クラウド:クラウド・インフラストラクチャは、一般人または大規模な業界団体にとって利用可能にされ、クラウド・サービスを販売する組織によって所有される。
【0082】
ハイブリッド・クラウド:クラウド・インフラストラクチャは、固有の実体を保持するが、データおよびアプリケーションの移植性(たとえば、クラウド間の負荷平衡のためのクラウド・バースティング)を有効化する標準化されたまたは専有の技術によってともに拘束される2つ以上のクラウド(プライベート、コミュニティ、または公衆)から成る構成体である。
【0083】
クラウド・コンピューティング環境は、処理状態を把握しないこと、コンピュータ使用が少ないこと、モジュール方式であること、およびセマンティック相互運用性であることに焦点を当てた、サービス指向のものである。クラウド・コンピューティングの中核には、相互接続されたノードのネットワークを含むインフラストラクチャがある。
【0084】
ここで
図7を参照すると、例示的なクラウド・コンピューティング環境700が示されている。図示されているように、クラウド・コンピューティング環境700は、たとえば、個人情報端末(PDA)もしくは携帯電話754A、デスクトップ・コンピュータ754B、ラップトップ・コンピュータ754C、または自動車コンピュータ・システム754Nあるいはその組合せのような、クラウド消費者によって使用されるローカル・コンピューティング・デバイスが通信することができる1つまたは複数のクラウド・コンピューティング・ノード710を含む。ノード710は、互いに通信することができる。それらのノードは、上記で説明したようなプライベート、コミュニティ、公衆、またはハイブリッド・クラウド、またはその組合せのような、1つまたは複数のネットワークに物理的または仮想的にグループ分けされ得る(図示せず)。これによって、クラウド・コンピューティング環境750は、インフラストラクチャ、プラットフォームまたはソフトウェアあるいはその組合せをサービスとして提供することが可能になり、そのため、クラウド消費者は、ローカル・コンピューティング・デバイス上にリソースを維持する必要がない。
図7に示すコンピューティング・デバイス754A~Nのタイプは例示的である様にのみ意図されており、コンピューティング・ノード710およびクラウド・コンピューティング環境750は、(たとえば、ウェブ・ブラウザを使用して)任意のタイプのネットワークまたはネットワーク・アドレス指定可能接続あるいはその両方を介して任意のタイプのコンピュータ化デバイスと通信することができることが理解される。
【0085】
ここで
図8を参照すると、クラウド・コンピューティング環境750(
図7)によって提供される機能抽象化レイヤのセットが示されている。
図8に示す構成要素、レイヤ、および機能は、例示的であるようにのみ意図されており、本開示の実施形態はこれに限定されないことは、事前に理解されたい。図示されているように、以下のレイヤおよび対応する機能が提供される。
【0086】
ハードウェアおよびソフトウェア・レイヤ860は、ハードウェアおよびソフトウェア構成要素を含む。ハードウェア構成要素の例は、メインフレーム861、RISC(縮小命令セット・コンピュータ)アーキテクチャベースのサーバ862、サーバ863、ブレード・サーバ864、記憶デバイス865、ならびにネットワークおよびネットワーク接続構成要素866を含む。いくつかの実施形態において、ソフトウェア構成要素は、ネットワーク・アプリケーション・サーバ・ソフトウェア867およびデータベース・ソフトウェア868を含む。
【0087】
仮想化レイヤ870が、仮想エンティティの以下の例、すなわち、仮想サーバ871、仮想ストレージ872、仮想私設ネットワークを含む仮想ネットワーク873、仮想アプリケーションおよびオペレーティング・システム874、ならびに仮想クライアント875を提供することができる抽象化レイヤを提供する。
【0088】
一例において、管理レイヤ880が、後述する機能を提供することができる。リソース・プロビジョニング881が、コンピューティング・リソース、および、クラウド・コンピューティング環境内でタスクを実施するために利用される他のリソースの動的な調達を可能にする。計量および価格決定882が、クラウド・コンピューティング環境内でリソースが利用されるときのコスト追跡、および、これらのリソースの消費に対する課金または請求を可能にする。一例において、これらのリソースは、アプリケーション・ソフトウェア使用許諾を含んでもよい。セキュリティが、クラウド消費者およびタスクの識別検証、ならびに、データおよび他のリソースの保護を可能にする。ユーザ・ポータル883が、消費者およびシステム管理者がクラウド・コンピューティング環境にアクセスすることを可能にする。サービス・レベル管理884が、必要なサービス・レベルが満たされるように、クラウド・コンピューティング・リソース配分および管理を可能にする。サービス品質保証契約(SLA)計画および履行885は、SLAにより将来必要とされることが予測されるクラウド・コンピューティング・リソースの事前手配および調達を可能にする。
【0089】
作業負荷レイヤ890は、クラウド・コンピューティング環境が利用され得る機能の例を与える。このレイヤから提供される可能性がある作業負荷および機能の例は、マッピングおよびナビゲーション構成要素891、ソフトウェア開発およびライフサイクル管理構成要素892、仮想教室の教育の配信構成要素893、データ分析処理構成要素894、トランザクション処理構成要素895、および効率エンジン896を含む。
【0090】
結論
本教示の様々な実施形態の説明は、例示の目的のために提示されているが、網羅的であることも、開示されている実施形態に限定されることも意図されていない。説明されている実施形態の範囲から逸脱することなく、多くの修正および変形が当業者には明らかであろう。本明細書において使用されている用語は、実施形態の原理、実際の適用または市場に見出される技術にまさる技術的改善を最良に説明するため、または、当業者が本明細書において開示されている実施形態を理解することを可能にするために選択されている。
【0091】
上記は、最良の状態または他の例あるいはその両方であると考えられるものを説明しているが、その中で様々な修正を行うことができること、本明細書において開示されている主題は様々な形態および例において実施することができること、ならびに、本教示は、そのうちの一部のみが本明細書に記載されている、多数の用途に適用することができることが理解される。本教示の真の範囲内に入るあらゆる応用形態、修正形態および変形形態を特許請求することが、添付の特許請求の範囲によって意図されている。
【0092】
本明細書において論じた構成要素、ステップ、特徴、目的、利益および利点は例示に過ぎない。それらのいずれも、また、それらに関係する論述も、保護範囲を限定するようには意図されていない。様々な利点が本明細書に論じられているが、すべての実施形態が必ずしもすべての利点を含むとは限らないことが理解されよう。別途記載のない限り、添付の特許請求の範囲内を含む、本明細書に記載されているすべての測定値、値、レーティング、位置、大きさ、サイズ、および他の仕様は、近似であって、正確なものではない。それらは、それらが関係する機能、および、それらが属する分野において慣習であるものと一致する妥当な範囲を有するように意図されている。
【0093】
多数の他の実施形態も企図される。これらは、より少ない、追加の、または異なる、あるいはその組合せである構成要素、ステップ、特徴、目的、利益および利点を有する実施形態を含む。これらは、構成要素またはステップあるいはその両方が別様に配列または順序付けあるいはその両方を為される実施形態も含む。
【0094】
本開示の態様は、本明細書において、本開示の実施形態による、方法、装置(システム)およびコンピュータプログラム製品のフローチャートの図またはブロック図あるいはその両方を参照して説明されている。フローチャートの図またはブロック図あるいはその両方の各ブロック、および、フローチャートの図またはブロック図あるいはその両方の中の複数のブロックの組合せは、コンピュータ可読プログラム命令によって実装されることができることは理解されよう。
【0095】
これらのコンピュータ可読プログラム命令は、コンピュータ、専用コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供されてマシンを生成することができ、それによって、コンピュータまたは他のプラグラム可能データ処理装置のプロセッサを介して実行する命令は、フローチャートの図またはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定される機能/動作を実施するための手段を作り出す。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラム可能データ処理装置、または他のデバイスあるいはその組合せに特定の様式で機能するように指示することができるコンピュータ可読記憶媒体内に記憶することもでき、それによって、命令を記憶されているコンピュータ可読記憶媒体は、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定される機能/動作の態様を実施する命令を含む製造品を含む。
【0096】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラム可能データ処理装置、または他のデバイス上にロードされて、一連の動作ステップが、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行されるようにして、コンピュータで実施されるプロセスを生成することができ、それによって、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定される機能/動作を実施する。
【0097】
図面内のフローチャートおよびブロック図は本開示の様々な実施形態によるシステム、方法およびコンピュータプログラム製品の可能な実施態様のアーキテクチャ、機能、および動作を例示する。これに関連して、フローチャートまたはブロック図内の各ブロックは、指定の論理機能を実施するための1つまたは複数の実行可能命令を含む、モジュール、セグメント、または命令の一部分を表すことができる。いくつかの代替的な実施態様において、ブロックに記載されている機能は、図面に記載されている順序と一致せずに行われてもよい。たとえば、連続して示されている2つのブロックは実際には、関与する機能に応じて、実質的に同時に実行されてもよく、または、これらのブロックは、時として逆順に実行されてもよい。また、ブロック図またはフローチャートあるいはその両方の図解の各ブロック、ならびに、ブロック図またはフローチャートあるいはその両方の図解のブロックの組合せは、指定の機能もしくは動作を実施するか、または、専用ハードウェアとコンピュータ命令との組合せを実行する専用ハードウェアベースシステムによって実施することができることも留意されよう。
【0098】
上記は例示的な実施形態に関連して説明されているが、「例示的な」という用語は、最良または最適ではなく、例としてのみ意図されていることが理解される。すぐ上に述べた場合を除いて、陳述または例示されているものはいずれも、それが特許請求の範囲に記載されているか否かにかかわらず、任意の構成要素、ステップ、特徴、目的、利益、利点、または等価物が公衆にささげられるようにするようには意図されておらず、または、そのように解釈されるべきでもない。
【0099】
本明細書において使用されている用語および表現は、本明細書において特別な意味が別途記載されている場合を除き、それらの対応するそれぞれの調査および研究の分野に関してそのような用語および表現に対して認められているものとしての通常の意味を有することが理解されよう。第1および第2などのような関係語は、1つの実体または作用を別のものから区別するためのみに使用され得、必ずしもそのような実体または作用の間の任意の実際のそのような関係または順序を必要とせず、暗示もしない。用語「備える(comprises)」、「備えている(comprising)」、またはその任意の他の変化形は、たとえば、要素のリストを含むプロセス、方法、製品、または装置が必ずしも、それらの要素のみを含むのではなく、明示的にリストされていない、または、そのようなプロセス、方法、製品、または装置に内在する他の要素を含むことができるように、非排他的な包含をカバーするように意図されている。「1つの」(“a”or“an”)が前につく要素は、さらなる制約がなければ、その要素を含むプロセス、方法、物品、または装置内に追加の同一の要素が存在することを除外しない。
【0100】
本開示の要約は、読者が本技術開示の性質を迅速に解明することを可能にするために提供される。これは、特許請求項の範囲または意味を解釈または限定するために使用されないという了解の下で、提出される。加えて、上記の発明を実施するための形態において、様々な特徴が、本開示を合理化する目的で様々な実施形態においてともにグループ分けされていることが確認され得る。本開示方法は、特許請求されている実施形態が、各請求項に明示的に記載されているよりも多くの特徴を有するという意図を反映するものとして解釈されるべきではない。むしろ、添付の特許請求の範囲が反映するものとしては、発明的主題は、単一の開示されている実施形態のすべての特徴に満たない特徴に存する。したがって、添付の特許請求の範囲は、本明細書によって発明を実施するための形態に組み込まれ、各特許請求項は、別個に特許請求される主題としてそれ自体独立している。
【手続補正書】
【提出日】2023-05-09
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コンピューティング・デバイスであって、
プロセッサと、
ネットワークを介した通信を可能にするために前記プロセッサに結合されているネットワーク・インターフェースと、
前記プロセッサに結合されている記憶デバイスと、
前記記憶デバイスに記憶されているエンジンと
を備え、
前記プロセッサによって前記エンジンを実行することによって、前記コンピューティング・デバイスが、
複数の時系列を含む時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、前記1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む動作を実施するように構成される、コンピューティング・デバイス。
【請求項2】
各区分レベルが、前記時系列データに基づく複数の時系列グループを含む、請求項1に記載のコンピューティング・デバイス。
【請求項3】
各区分レベルが、実質的に同様の数の時系列を含む、請求項
1または2に記載のコンピューティング・デバイス。
【請求項4】
前記計算能力の前記決定が、基準データベースから前記計算能力を受信することを含む、請求項1
~3のいずれか1項に記載のコンピューティング・デバイス。
【請求項5】
前記計算能力の前記決定が、前記コンピューティング・プラットフォーム上の前記複数の区分レベルにおいて部分モデリングを実施することによって初期近似を実施することを含む、請求項1
~4のいずれか1項に記載のコンピューティング・デバイス。
【請求項6】
前記区分レベルの前記選択が、所定の正確度に対する最高の時間効率に基づく、請求項1
~5のいずれか1項に記載のコンピューティング・デバイス。
【請求項7】
前記区分レベルの前記選択が、所定の時間効率に対する最高の正確度に基づく、請求項1
~5のいずれか1項に記載のコンピューティング・デバイス。
【請求項8】
各モデリング・タスクについて、交差時系列モデリングが、前記選択されているレベルにおいて並列に実施される、請求項1
~7のいずれか1項に記載のコンピューティング・デバイス。
【請求項9】
前記時系列の前記グループ分けが、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方によって実施される、請求項1
~8のいずれか1項に記載のコンピューティング・デバイス。
【請求項10】
前記コンピューティング・プラットフォームが、複数のコンピューティング・ノードを含み、
コンピューティング・プラットフォームの前記計算能力の前記決定が、ノードごとに別個に実施される、請求項1
~9のいずれか1項に記載のコンピューティング・デバイス。
【請求項11】
実行されると、コンピュータ・デバイスに、時系列データの処理におけるコンピューティング・プラットフォームの計算効率を改善する方法を実行させるコンピュータ可読命令を有するコンピュータ可読プログラム・コードを有形に具現化するコンピュータ可読記憶媒体であって、
前記コンピュータ可読命令は前記
コンピューティング・デバイスに対して、
複数の時系列を含む前記時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、前記1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む
動作を実行させる、コンピュータ可読記憶媒体。
【請求項12】
各区分レベルが、前記時系列データに基づく複数の時系列グループを含む、請求項
11に記載のコンピュータ可読記憶媒体。
【請求項13】
前記計算能力の前記決定が、基準データベースから前記計算能力を受信することを含む、請求項
11または12に記載のコンピュータ可読記憶媒体。
【請求項14】
前記計算能力の前記決定が、前記コンピューティング・プラットフォーム上の前記複数の区分レベルにおいて部分モデリングを実施することによって初期近似を実施することを含む、請求項
11~13のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項15】
前記区分レベルの前記選択が、所定の正確度に対する最高の時間効率に基づく、請求項
11~14のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項16】
前記区分レベルの前記選択が、所定の時間効率に対する最高の正確度に基づく、請求項
11~14のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項17】
各モデリング・タスクについて、交差時系列モデリングが、前記選択されているレベルにおいて並列に実施される、請求項
11~16のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項18】
前記時系列の前記グループ分けが、ドメイン・ベースのグループ分けまたは意味論モデル・ベースのグループ分けあるいはその両方によって実施される、請求項
11~17のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項19】
前記コンピューティング・プラットフォームが、複数のコンピューティング・ノードを含み、
コンピューティング・プラットフォームの前記計算能力の前記決定が、ノードごとに別個に実施される、請求項
11~18のいずれか1項に記載のコンピュータ可読記憶媒体。
【請求項20】
コンピュータ実装方法であって、
複数の時系列を含む時系列データを受信することと、
前記時系列データを、関連する時系列の複数の区分から成る階層にグループ分けすることであって、前記階層が複数の異なる区分レベルを有する、前記グループ分けすることと、
コンピューティング・プラットフォームの計算能力を決定することと、
前記複数の異なる区分レベルからの1つの区分レベルを、決定されている前記計算能力に基づいて選択することと、
選択されている前記区分レベルに基づく、前記複数の時系列の時系列グループを各々が含む、1つまたは複数のモデリング・タスクを定義することと、
各モデリング・タスクについて、対応する前記モデリング・タスクの前記時系列グループ内のすべての前記時系列を使用してモデルを訓練することによって、
前記1つまたは複数のモデリング・タスクを、前記コンピューティング・プラットフォーム上で並列に実行することと
を含む、コンピュータ実装方法。
【国際調査報告】