(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-16
(45)【発行日】2024-12-24
(54)【発明の名称】時間間隔にわたる数値の推移を予測するシステム、方法及びコンピュータプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20241217BHJP
G06N 5/04 20230101ALI20241217BHJP
【FI】
G06N20/00
G06N5/04
(21)【出願番号】P 2022552419
(86)(22)【出願日】2021-03-04
(86)【国際出願番号】 EP2021055451
(87)【国際公開番号】W WO2021175987
(87)【国際公開日】2021-09-10
【審査請求日】2024-02-29
(32)【優先日】2020-03-06
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110003339
【氏名又は名称】弁理士法人南青山国際特許事務所
(72)【発明者】
【氏名】エルショット オリバー
(72)【発明者】
【氏名】アヌンシアカオ オルランド
(72)【発明者】
【氏名】ヴ カク トゥリ
【審査官】大倉 崚吾
(56)【参考文献】
【文献】特開2000-293582(JP,A)
【文献】特開2009-237832(JP,A)
【文献】特開2014-020923(JP,A)
【文献】米国特許出願公開第2018/0241812(US,A1)
【文献】特開2020-177531(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
G06F 18/00-18/40
G06F 123/02
(57)【特許請求の範囲】
【請求項1】
時間間隔にわたる数値の推移を予測するシステムであって、
前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出し、
前記時間間隔を第1及び第2のサブ間隔に分割し、
前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出し、
前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出する
ように構成される
処理回路
を具備する
システム。
【請求項2】
請求項1に記載のシステムであって、
前記処理回路は、前記時間間隔における前記数値の前記推定値から前記第1のサブ間隔における前記数値の前記推定値を減算することによって前記前記第2のサブ間隔における前記数値の推定値を算出するように構成される
システム。
【請求項3】
請求項1に記載のシステムであって、
前記処理回路は、前記各サブ間隔を2つのさらなるサブ間隔に分割し、前記履歴データに基づいて機械学習モデルをトレーニングすることによって前記さらなるサブ間隔のうち第1のさらなるサブ間隔における前記数値の推定値を算出し、前記第1のさらなるサブ間隔における前記数値の前記推定値と、前記2つのさらなるサブ間隔に分割される前記各サブ間隔における前記数値の前記推定値とに基づいて前記さらなるサブ間隔のうち第2のさらなるサブ間隔の前記数値の推定値を算出することによって、前記第1又は第2のサブ間隔のさらなるサブ間隔における前記数値の推定値をそれぞれ算出するように構成される
システム。
【請求項4】
請求項1に記載のシステムであって、
前記それぞれの第2のサブ間隔における前記数値の前記推定値は、機械学習モデルをトレーニングすることなく算出される
システム。
【請求項5】
請求項1に記載のシステムであって、
前記機械学習モデルは、機械学習アルゴリズムと前記機械学習アルゴリズムの1つ又は複数のパラメータとを指定する機械学習構成に基づいてトレーニングされ、前記処理回路は、前記推定値のうち少なくとも1つの評価に基づいて前記機械学習構成を適合させるように構成される
システム。
【請求項6】
請求項5に記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つのユーザ評価に基づいて前記機械学習構成を適合させるように構成される
システム。
【請求項7】
請求項5に記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェースを介してユーザに提供し、前記少なくとも1つの推定値の前記評価の情報を前記ユーザインタフェースを介して前記ユーザから取得することによって、前記推定値のうち少なくとも1つを評価するように構成される
システム。
【請求項8】
請求項5に記載のシステムであって、
当該システムは、前記機械学習構成を適合させた後、最初に用いられた前記機械学習構成に基づく前記推定値の算出を中止し、前記適合済みの機械学習構成を用いて前記推定値の算出を再度行うように構成される
システム。
【請求項9】
請求項1に記載のシステムであって、
前記各機械学習モデルは、前記履歴データの第1のサブセットと、前記各機械学習モデルのトレーニングが実行される前記時間間隔に等しい時間の長さを表す前記履歴データの第2のサブセットとを算出し、前記履歴データの前記第1のサブセットをトレーニング入力とし、前記第2のサブセットを前記各機械学習モデルの前記トレーニング用のトレーニング出力として用いることによってトレーニングされる
システム。
【請求項10】
請求項1に記載のシステムであって、
前記第2のサブ間隔は、前記第1のサブ間隔に時間的に後続する
システム。
【請求項11】
請求項1に記載のシステムであって、
前記第1及び第2のサブ間隔は、長さが同一である
システム。
【請求項12】
請求項1に記載のシステムであって、
前記第1及び第2のサブ間隔は、長さが異なる
システム。
【請求項13】
請求項1に記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェースを介してユーザに提供するように構成される
システム。
【請求項14】
請求項13に記載のシステムであって、さらに、
ディスプレイ
を具備し、
前記処理回路は、前記ディスプレイ上に表示されるユーザインタフェースを介して前記少なくとも1つの推定値に関する前記情報を提供するように構成される
システム。
【請求項15】
請求項13に記載のシステムであって、
前記処理回路は、前記少なくとも1つの推定値に関する前記情報をコンピュータネットワークを介して遠隔のユーザインタフェースに提供するように構成される
システム。
【請求項16】
請求項13に記載のシステムであって、
前記処理回路は、前記第1のサブ間隔における前記数値の前記推定値の算出の開始前又は完了前に、前記時間間隔における前記数値の前記推定値を前記ユーザに提供するように構成される
システム。
【請求項17】
請求項13に記載のシステムであって、
時間間隔又はサブ間隔における前記数値の前記推定値は、前記時間間隔のサブ間隔又は前記サブ間隔のさらなるサブ間隔における前記数値の前記推定値の算出前に提供される
システム。
【請求項18】
請求項1に記載のシステムであって、
前記処理回路は、前記時間間隔の情報、前記第1及び第2のサブ間隔の情報、及び機械学習構成の情報のうち少なくとも1つをユーザインタフェースを介してユーザから取得するように構成される
システム。
【請求項19】
時間間隔にわたる数値の推移を推定する方法であって、
前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出し、
前記時間間隔を第1及び第2のサブ間隔に分割し、
前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出し、
前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出する
方法。
【請求項20】
コンピュータ、プロセッサ、又はプログラマブルハードウェアコンポーネント上で実行された場合に、請求項19に記載の方法を実行するプログラムコードを有するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
例は、時間間隔にわたる数値の推移を予測するシステム、方法及びコンピュータプログラムに関する。
【背景技術】
【0002】
推移予測は、様々な用途に用いられる。例えば、ビジネスシーンにおいて、製品需要又はマーケットの推移を予測することができる。例えば、企業は、サプライチェーンを最適化するために製品需要を予測することができる。物流の分野では、車両又は道路の利用状況を予測するのに予測を利用することができる。車両について言えば、交通渋滞の状況を考慮して車両の給油(又は給電)に適したタイミングを算出するために予測を利用することができる。機械の分野では、メンテナンスの予定を立てるために予測を利用する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
数値の推移を予測する概念の改善が望まれる場合がある。
【課題を解決するための手段】
【0005】
係る要望は、独立請求項の主題によって対処される。
【0006】
本開示のいくつかの実施形態は、全体として予測される時間間隔全体を用いて予測を始め、所望の時間粒度に到達するまで徐々に短くなる時間間隔についての予測が繰り返されることで、予測誤差が長期にわたって蓄積されることを回避しながら予測品質を素早く評価することを可能とする数値の推移を予測する概念が提供されるという発見に基づくものである。他方、始めに予測値が時間間隔全体について提供されるため、(例えば、ユーザによって)予測品質の素早い評価が行われ、所望の時間粒度までの予測を完了させる必要なく、予測が中止されて他のパラメータ又は別の機械学習アルゴリズムを用いて予測が再び行われることができるため、予測の設定中の反復時間を短縮することができる。他方、徐々に短くなる時間間隔についての予測には、より長い時間間隔における予測結果を用いることができる。これにより、時間を節約することができると共により精度の高い結果を提供することができる。これは、より長い時間間隔における予測値の方が、短い時間間隔における個々の予測値よりも精度が高い場合が多いためである。
【0007】
本開示のいくつかの実施形態では、時間間隔にわたる数値の推移を予測するシステムが提供される。本システムは、前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出するように構成される処理回路を具備する。処理回路は、前記時間間隔を第1及び第2のサブ間隔に分割するように構成される。処理回路は、前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出するように構成される。処理回路は、前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出するように構成される。時間間隔における数値を推定することによって、時間間隔全体に対する全体の推定値を迅速に取得することができるため、ユーザは、用いられたアルゴリズム及びパラメータを素早く評価することができる。時間間隔における推定値と、第1のサブ間隔における推定値とに基づいて第2のサブ間隔における推定値を算出することによって、演算に係る負担を軽減することができると共に全体の推定精度を向上することができる。
【0008】
例えば、前記処理回路は、前記時間間隔における前記数値の前記推定値から前記第1のサブ間隔における前記数値の前記推定値を減算することによって前記前記第2のサブ間隔における前記数値の推定値を算出するように構成されてもよい。第2のサブ間隔における推定値が時間間隔全体における推定値に基づくため、推定誤差が蓄積されることを回避することができる。
【0009】
各種実施形態では、回帰的な手法を繰り返して、より短いサブ間隔における推定値を得てもよい。例えば、前記処理回路は、前記各サブ間隔を2つのさらなるサブ間隔に分割し、前記履歴データに基づいて機械学習モデルをトレーニングすることによって前記さらなるサブ間隔のうち第1のさらなるサブ間隔における前記数値の推定値を算出し、前記第1のさらなるサブ間隔における前記数値の前記推定値と、前記2つのさらなるサブ間隔に分割される前記各サブ間隔における前記数値の前記推定値とに基づいて前記さらなるサブ間隔のうち第2のさらなるサブ間隔の前記数値の推定値を算出することによって、前記第1又は第2のサブ間隔のさらなるサブ間隔における前記数値の推定値をそれぞれ算出するように構成されてもよい。したがって、これらの推定値は、ユーザに対していつでも予測を中止して別のアルゴリズム又はパラメータを試せる選択肢を与えつつ、後続の反復処理において洗練されていくことが可能である。
【0010】
各種実施形態では、前記それぞれの第2のサブ間隔における前記数値の前記推定値は、機械学習モデルをトレーニングすることなく算出されてもよい。これによって、時間を節約することができると共に、推定誤差の蓄積の回避を支援することができる。
【0011】
一般的に、前記機械学習モデルは、機械学習構成に基づいてトレーニングされてもよい。前記機械学習構成は、機械学習アルゴリズムと前記機械学習アルゴリズムの1つ又は複数のパラメータとを指定してもよい。前記処理回路は、前記推定値のうち少なくとも1つの評価に基づいて前記機械学習構成を適合させるように構成されてもよい。推定値のうち少なくとも1つ、好ましくは、時間間隔全体について算出される推定値を用いて、機械学習に基づく推定の性能を素早く評価し、アルゴリズム又はパラメータの適合を迅速に行うことを可能としてもよい。
【0012】
例えば、前記処理回路は、前記推定値のうち少なくとも1つのユーザ評価に基づいて前記機械学習構成を適合させるように構成されてもよい。換言すると、ユーザは、推定値又は推定値を評価し、推定値又は推定値が改善の余地を示す場合に機械学習構成を調整してもよい。
【0013】
換言すると、前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェースを介してユーザに提供し、前記少なくとも1つの推定値の前記評価の情報を前記ユーザインタフェースを介して前記ユーザから取得することによって、前記推定値のうち少なくとも1つを評価するように構成されてもよい。ユーザは、ユーザインタフェースを用いて推定値の算出、及びそれに関係する機械学習構成を制御することができる。
【0014】
当該システムは、前記機械学習構成を適合させた後、最初に用いられた前記機械学習構成に基づく前記推定値の算出を中止し、前記適合済みの機械学習構成を用いて前記推定値の算出を再度行うように構成されてもよい。したがって、迅速な処理の反復が可能となる。
【0015】
各種実施形態では、前記各機械学習モデルは、前記履歴データの第1のサブセットと、前記履歴データの第2のサブセットとを算出することによってトレーニングされてもよい。前記履歴データの第2のサブセットは、前記各機械学習モデルのトレーニングが実行される前記時間間隔に等しい時間の長さを表してもよい。前記各機械学習モデルは、前記履歴データの前記第1のサブセットをトレーニング入力とし、前記第2のサブセットを前記各機械学習モデルの前記トレーニング用のトレーニング出力として用いることによってトレーニングされてもよい。例えば、これらのサブセットは、トレーニング入力とトレーニング出力との関係が、各推定値を算出するのに用いられる履歴データと当該推定値が算出される時間間隔との関係と合致するように選ばれてもよい。したがって、トレーニング済み機械学習モデルを用いて、機械学習モデルに対する入力データとして用いられる履歴データと合致する関係を有する時間間隔又はサブ間隔における推定値を算出してもよい。
【0016】
例えば、前記第2のサブ間隔は、前記第1のサブ間隔に時間的に後続してもよい。第1のサブ間隔が履歴データに対して相対的に時間が早い場合、その推定値は、より精度が高いものであり得る。
【0017】
いくつかの実施形態では、前記第1及び第2のサブ間隔は、長さが同一であってもよい。代替的に、前記第1及び第2のサブ間隔は、長さが異なってもよい。同一の長さのサブ間隔を用いる場合、これらのサブ間隔を自動で算出することが容易となる。他方、所望の長さのサブ間隔を得ることができない場合、例えば、1年の四半期をそれぞれの月に分割し、複数のサブ間隔のうち1つのサブ間隔の範囲を1ヶ月とし、他のサブ間隔を2ヶ月とする場合、異なる長さのサブ間隔を用いてもよい。
【0018】
一般的に、本システムは、複数の機械学習構成を素早く評価する手段をユーザに提供するために用いてもよい。したがって、推定値をユーザに提供し、これによって、ユーザは評価を行うことができる。したがって、前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェースを介してユーザに提供するように構成されてもよい。
【0019】
例えば、本システムはさらに、ディスプレイを具備してもよい。前記処理回路は、前記ディスプレイ上に表示されるユーザインタフェースを介して前記少なくとも1つの推定値に関する前記情報を提供するように構成されてもよい。例えば、この構成は、本システムがワークステーションコンピュータ又はラップトップコンピュータによって実施される場合に適用され得る。
【0020】
代替的に又は付加的に、前記処理回路は、前記少なくとも1つの推定値の前記情報をコンピュータネットワークを介して遠隔のユーザインタフェースに提供するように構成されてもよい。例えば、バックエンドコンピュータ、例えば、データセンター又はクラウドコンピューティング環境におけるコンピュータ又はバーチャルマシンで推定値の算出を実行してもよい。
【0021】
いくつかの実施形態では、前記処理回路は、前記第1のサブ間隔における前記数値の前記推定値の算出の開始前又は完了前に、前記時間間隔における前記数値の前記推定値を前記ユーザに提供するように構成されてもよい。より一般的には、時間間隔又はサブ間隔における前記数値の前記推定値は、前記時間間隔のサブ間隔又は前記サブ間隔のさらなるサブ間隔における前記数値の前記推定値の算出前に提供されてもよい。したがって、ユーザは全ての推定値の算出完了を待つ必要がなくなるため、反復時間を短縮することが可能である。
【0022】
ユーザに対する推定値の提供に加えて(又は代えて)、ユーザインタフェースを、本システムを制御するため、例えば、推定に用いるパラメータを入力するために用いてもよい。例えば、前記処理回路は、前記時間間隔の情報、前記第1及び第2のサブ間隔の情報、及び機械学習構成の情報のうち少なくとも1つをユーザインタフェースを介してユーザから取得するように構成されてもよい。
【0023】
各種実施形態では、前記数値は、製品の需要に関する。前記履歴データは、前記製品の需要履歴に関してもよい。したがって、本開示のいくつかの実施形態は、製品需要の予測値のために用いられてもよい。
【0024】
本開示のいくつかの実施形態ではさらに、時間間隔にわたる数値の推移を推定する方法が提供される。本方法は、前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出することを含む。本方法は、前記時間間隔を第1及び第2のサブ間隔に分割することを含む。本方法は、前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出することを含む。本方法は、前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出することを含む。
【0025】
本開示のいくつかの実施形態ではさらに、コンピュータ、プロセッサ、又はプログラマブルハードウェアコンポーネント上で実行された場合に、上述の方法を実行するプログラムコードを有するコンピュータプログラムが提供される。
【0026】
装置及び/又は方法のいくつかの例を、添付の図面を参照して例示としてのみ以下に説明する。
【図面の簡単な説明】
【0027】
【
図1a】時間間隔にわたる数値の推移を予測するシステムの実施形態のブロック図を示す図である。
【
図1b】時間間隔にわたる数値の推移を予測するシステムの実施形態のブロック図を示す図である。
【
図1c】時間間隔にわたる数値の推移を予測するシステムの実施形態のブロック図を示す図である。
【
図2】時間間隔にわたる数値の推移を予測する方法のフローチャートを示す図である。
【
図3a】数値の推移を予測する2つの手法の概略図を示す図である。
【発明を実施するための形態】
【0028】
これより、いくつかの例が示された添付の図面を参照して種々の例をより詳しく説明する。各図において、線、層及び/又は領域の太さ(厚み)は分かり易いように誇張して示されている場合がある。
【0029】
さらなる例は種々の変形例及び代替形態が可能であるが、そのいくつかの特定の例を図示しており、以下に詳細に説明する。しかし、当該詳細な説明は、さらなる例を、記載する特定の形態に限定するものではない。さらなる例は、本開示の範囲内の変形例、等価物、及び代替例を包含する。同一又は同様の参照符号は、図面の説明全体を通して、同様又は類似の要素を指している。これらの要素は、同一又は同様の機能を与えつつ、互いに同一の又は変形された形態で実現可能である。
【0030】
或る1つの要素が別の要素に「接続(connected)」又は「接続(coupled)」されるものとして記載される場合、これらの要素は、直接接続される、又は1つ又は複数の介在要素を介して接続され得ることを理解されたい。2つの要素A及びBが「又は」で繋げられている場合、これは、別途明示的又は黙示的に定義されない限り、全てのあり得る組み合わせ、すなわち、Aのみ、Bのみ、及びA及びBを開示しているものと理解されたい。「A及びBのうち少なくとも1つ」又は「A及び/又はB」は、同一の組み合わせに対する代替的な表現である。これは、2以上の要素の組み合わせに対しても同様である。
【0031】
特定の例を説明するために本明細書で用いる術語は、さらなる例を限定することを意図するものではない。「a」、「an」及び「the」等の単数形が用いられる場合及び単一の要素の使用が明示的にも黙示的にも義務として定義されていない場合は常に、いくつかのさらなる例において複数の要素を用いて同一の機能を実施してもよい。同様に、或る1つの機能が後に複数の要素を用いて実施されるものとして説明される場合、いくつかのさらなる例において、単一の要素又は処理エンティティを用いて同一の機能を実施してもよい。また、「備える/有する(comprises)」、「備える/有する(comprising)」、「含む/有する(includes)」及び/又は「含む/有する(including)」という用語は、記載の特徴、整数、ステップ、操作、処理、動作、要素及び/又は構成要素の存在を指定するが、1つ又は複数の他の特徴、整数、ステップ、操作、処理、動作、要素、構成要素及び/又はその任意の群の存在又は追加を除外するものではないことを理解されたい。
【0032】
別途定義しない限り、全ての用語(技術用語及び科学用語を含む)は、本明細書において、当該技術分野における通常の意味で用いる。
【0033】
図1a~1cは、時間間隔にわたる数値の推移を予測するシステム100の実施形態のブロック図を示す。このシステムは、処理回路14を備える。いくつかの実施形態では、
図2a及び2cに示すように、システムは、インタフェース12及び/又は記憶回路16をさらに備えてもよい。一般的に、システムの機能は、処理回路14によって、例えば、インタフェース12及び/又は記憶回路16と協働して提供することができる。例えば、処理回路は、インタフェース12を介してユーザインタフェースを提供し、且つ/又はインタフェース12を介して履歴データ、機械学習構成及び/又はユーザ評価を取得するように構成されることができる。処理回路14は、記憶回路を用いて、履歴データ、機械学習構成、及び/又は1つ又は複数のトレーニング済み機械学習モデル等の情報を記憶するように構成されることができる。
【0034】
処理回路は、数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって時間間隔における数値の推定値を算出するように構成される。処理回路は、時間間隔を第1及び第2のサブ間隔に分割するように構成される。処理回路は、数値に関する履歴データに基づいて第2の機械学習モデルをトレーニングすることによって第1のサブ間隔における数値の推定値を算出するように構成される。処理回路は、時間間隔における数値の推定値と第1のサブ間隔における数値の推定値とに基づいて第2のサブ間隔における数値の推定値を算出するように構成される。
【0035】
本開示のいくつかの実施形態は、時間間隔にわたる数値の推移を予測するシステム、方法及びコンピュータプログラムに関する。一般的に、数値の推移は、時間間隔にわたる数値の動きを示す。例えば、数値は、製品の需要に関するものとすることができる。この場合、数値の推移は、製品の需要が時間と共にどのような動きを見せるかを示すことができる。代替的に、当該数値は、他の分野に関するものとしてもよい。例えば、数値は、車両の利用率、道路の利用率、車両給油の適切なタイミング、機械のメンテナンスの適切なタイミング、又は機械を動作させるために必要なエネルギー量等を表すものとしてもよい。対象とする数値の実際の動きとして、時間間隔にわたる「推移」は、時間間隔全体を範囲とする単一の数値(例えば、複合又は蓄積された数値)に関するものでなくてもよい。その代わりに、当該推移は、それぞれ時間間隔のサブ間隔を範囲とする(と共にサブ間隔にわたる数値の動きを示す)複数の数値に関するものとしてもよい。「製品需要」の例に戻ると、数値の推移は、時間間隔の個々の月(又は週)を範囲とする複数の数値に関するものとしてもよい。
【0036】
異なる時間間隔における数値が推定される場合について、以下、より詳細に用語の用い方を説明する。例えば、「時間間隔における数値」は、時間間隔全体を単一の数値として表す合算値に関する。例えば、製品需要に関して、時間間隔における数値は、単一の数値としての時間間隔全体における製品需要とすることができる。したがって、「サブ間隔(例えば、第1又は第2のサブ間隔)における数値」は、単一の数値として各サブ間隔を表す合算値に関する。例えば、4ヶ月に亘る製品需要を予測することができる。この場合、時間間隔は、4ヶ月を範囲とし、第1及び第2のサブ間隔はそれぞれ、2ヶ月、すなわち、第1の月及び第2の月と第3の月及び第4の月とを範囲とすることができる。この場合、時間間隔における数値は、4ヶ月全体を表す合算値(例えば、製品800個)に関し、第1のサブ間隔における数値は、第1の月及び第2の月を範囲とする合算値(例えば、製品300個)に関し、第2のサブ間隔における数値は、第3の月及び第4の月を範囲とする合算値(例えば、製品500個)に関する。各種実施形態では、時間間隔における数値は、時間間隔の各サブ間隔における数値の合計としてもよい。
【0037】
いくつかの実施形態では、時間間隔は、例えば、サブ間隔をさらに分割することによってさらに分割されてもよい。例えば、第1又は第2のサブ間隔は(それぞれ)、2つのさらなるサブ間隔に分割されてもよい。上述の例に戻ると、第1のサブ間隔のさらなる第1のサブ間隔は第1の月を範囲とし、第1のサブ間隔のさらなる第2のサブ間隔は第2の月を範囲とし、第2のサブ間隔のさらなる第1のサブ間隔は第3の月を範囲とし、第2のサブ間隔のさらなる第2のサブ間隔は第4の月を範囲としてもよい。したがって、第1のサブ間隔のさらなる第1のサブ間隔における数値は、第1の月等を範囲とする合算値に関する。このようなさらなるサブ間隔への分割は、例えば、週単位であってもよい。また、当該さらなるサブ間隔の長さは、同一であってもよく又は異なっていてもよい。
【0038】
上述したように、時間間隔は、第1及び第2のサブ間隔に分割することができ、これをさらに、さらなるサブ間隔に分割することができる。換言すると、当該時間間隔によって定義される時間長さは、当該時間間隔を構成するさらなる時間長さ(当該時間間隔のサブ間隔)にそれぞれ分割することができる。換言すると、時間間隔は、当該時間間隔の2つのサブ間隔の組み合わせとすることができる。また、いくつかの実施形態では、当該時間間隔は、3つのサブ間隔に分割してもよい。この場合、3つのサブ間隔を合わせると当該時間間隔となるように同一のロジックを適用することができる。また、この場合、2つの機械学習モデルをトレーニングして3つのサブ間隔のうち2つのサブ間隔の数値を推定してもよい。
【0039】
一般的に、(各)第2のサブ間隔は、(各)第1のサブ間隔に時間的に後続するものとすることができる。通常、第1のサブ間隔の方が履歴データに近いため、その推定値の精度はより高いものとなり得る。しかしながら、例えば、後続のサブ間隔における機械学習による推定値の精度の方が(例えば、当該サブ間隔における変動率の低さに起因して)高いことが約束されている場合、代替的に、(各)第2のサブ間隔は、(各)第1のサブ間隔に時間的に先行するものとすることができる。また、各種実施形態では、第1及び第2のサブ間隔は、同一の長さ(例えば、各々2ヶ月又は各々1ヶ月)とすることができる。代替的に、第1及び第2のサブ間隔は、異なる長さ(例えば、2ヶ月と1ヶ月(四半期がサブ間隔としてそれぞれの月に分割される場合、2ヶ月分のサブ期間は各単一の月にさらに分割される))であってもよい。
【0040】
処理回路は、数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって時間間隔における数値の推定値を算出するように構成される。したがって、処理回路は、数値に関する履歴データに基づいて第2の機械学習モデルをトレーニングすることによって第1のサブ間隔における数値の推定値を算出するように構成される。換言すると、時間間隔における推定値及び第1のサブ間隔における推定値は、機械学習を用いて算出される。
【0041】
機械学習は、コンピュータシステムが明示的な指示の代わりにモデル及び推論によって特定のタスクを実行するのに用いることができるアルゴリズム及び統計モデルを指す。例えば、機械学習では、ルールに基づくデータ変換の代わりに、履歴及び/又はトレーニングデータの分析から推論を行うデータ変換を利用することができる。例えば、機械学習モデル又は機械学習アルゴリズムを用いて画像内容を分析することができる。機械学習モデルが画像内容を分析するために、機械学習モデルは、トレーニング画像を入力とし、トレーニング内容情報を出力として用いてトレーニングすることができる。多数のトレーニング画像及び関連のトレーニング内容情報を用いて機械学習モデルをトレーニングすることによって、機械学習モデルは、画像内容を認識するように「学習する」ため、トレーニング画像に含まれていない画像内容は、機械学習モデルを用いて認識することができる。同様に同じ原理を数値等の他の種類のデータに用いてもよい。つまり、トレーニング履歴データ及び所望の出力数値を用いて機械学習モデルをトレーニングすることによって、機械学習モデルは、履歴データ及び出力数値間の変換を「学習する」。これによって、機械学習モデルに与えられる非トレーニング用履歴データに基づいて出力数値を供給することができる。
【0042】
機械学習モデルは、トレーニング用入力データを用いてトレーニングされる。上記で指定したいくつかの例では、「教師あり学習」と称されるトレーニング方法が用いられる。教師あり学習において、機械学習モデルは、複数のトレーニングサンプルを用いてトレーニングされる。ここで、各サンプルは、複数の入力データ値及び複数の所望の出力値を有し得る。すなわち、各トレーニングサンプルは、所望の出力値に関係付けられる。トレーニングサンプル及び所望の出力値の両方を指定することによって、機械学習モデルは、トレーニング時に提供されるサンプルに類似する入力サンプルに基づきどの出力値を供給するかを「学習する」。教師あり学習は、教師あり学習アルゴリズム、例えば、分類アルゴリズム、回帰アルゴリズム又は類似性学習アルゴリズムに基づくことが可能である。回帰アルゴリズムは、出力が(或る範囲内において)任意の数値をとる場合に用いることができる。
【0043】
いくつかの実施形態において、第1及び第2の機械学習モデルは、数値に関する履歴データに基づいて、例えば、教師あり学習及び回帰アルゴリズムを用いてトレーニングされる。回帰アルゴリズムは、履歴データに基づいて数値の推定値を算出する場合に用いることができる。例えば、線形回帰、サポートベクター回帰(SVR:Support Vector Regression)、又は回帰木を回帰アルゴリズムとして用いることが可能である。教師あり学習は、機械学習モデルがトレーニングされているデータ、この場合、履歴データに類似するデータから結果を導出することが可能な技術である場合に用いることができる。この場合、履歴データは、機械学習モデルのトレーニングと、及び推定値(当該履歴データの異なるサブセットではあるが)の算出との両方に用いることができる。
【0044】
一般的に、履歴データは、生成される推定値と同様となり得る(例えば、少なくとも粒度は同様となり得る)、又は少なくとも同様の粒度を有するように合算されることが可能である。例えば、数値に関する履歴データは、過去の時間間隔(例えば、昨年)にわたる数値の推移/動きに関する情報を含むことができる。例えば、月毎の(又は週毎の)推定値を算出したい場合、履歴データは、月単位(又は少なくとも概して月単位)又は週単位(又は少なくとも概して週単位)の過去の時間間隔にわたる数値の推移/動きに関する情報を含むことができる。例えば、履歴データは、例えば、月又は週単位(又は少なくとも概して月又は週単位)の製品の需要履歴に関することができる。
【0045】
ここで、履歴データの各サブセットは、推定値が直面するシナリオを再現するのに用いることができる。例えば、時間間隔が4ヶ月である場合、第1のサブセット及び第2のサブセットの、2つの履歴データのサブセットを用いることができる。ここで、第1のサブセットは、後に推定を実行するために利用可能である時間の長さを範囲とし、第2のサブセットは、推定対象である時間間隔又はサブ間隔の範囲となる同一の時間長さを範囲とすることができる。履歴データの第2のサブセットは所望の/トレーニング出力として合算及び使用することができ、履歴データの第1のサブセットはトレーニング入力として使用することができる。換言すると、各機械学習モデルは、履歴データの第1のサブセットと履歴データの第2のサブセットとを算出することによってトレーニングすることができる。履歴データの第2のサブセットは、各機械学習モデルのトレーニングが実行される時間間隔に等しい時間の長さを表すことができる。第1のサブセットは一般的に、任意の時間の長さを表す(但し、第1のサブセットは含まない)ことができるが、好ましくは、後に推定値を算出するのに用いられる同一の時間長さを表すことができる。また、第1のサブセットは、推定値を算出するのに用いられる履歴データと、推定値の算出対象となる時間間隔/サブ間隔との間に存在する時間間隔を考慮して選択することができる。例えば、時間間隔のうち第3の月における推定値を算出する(と同時に、履歴データが当該時間間隔の前の月まで利用可能である)場合、履歴データの第2のサブセットと履歴データの第1のサブセットと間に2ヶ月分の差が存在し得る。各機械学習モデルは、各機械学習モデルのトレーニング用の履歴データの第1のサブセットをトレーニング入力とし、第2のサブセットをトレーニング出力として用いてトレーニングすることができる。
【0046】
各機械学習モデルのトレーニング後、当該各機械学習モデルは、各時間間隔又はサブ間隔の推定値を算出するのに用いることができる。例えば、履歴データの少なくとも1つのサブセットは、各トレーニング済み機械学習モデル(例えば、第1又は第2の機械学習モデル)に対する入力として用いることができ、各トレーニング済み機械学習モデルの出力は、各数値の推定値(又は当該推定値から導出される値)として用いることができる。例えば、処理回路は、履歴データの少なくとも1つのサブセットを第1の機械学習モデルの入力とし、第1の機械学習モデルの出力を推定値(又は当該推定値から導出される値)として用いることによって時間間隔における数値の推定値を算出するように構成されることができる。したがって、処理回路は、履歴データの少なくとも1つのサブセットを第2の機械学習モデルの入力とし、第2の機械学習モデルの出力を推定値(又は当該推定値から導出される値)として用いることによって第1のサブ間隔における数値の推定値を算出するように構成されることができる。
【0047】
機械学習アルゴリズムは通常、機械学習モデルに基づく。換言すると、「機械学習アルゴリズム」という用語は、機械学習モデルを作成、トレーニング又は利用するのに用いることができる指示集合を示すことができる。「機械学習モデル」という用語は、例えば、機械学習アルゴリズムによって実行されるトレーニングに基づいて学習した知識を表すデータ構造及び/又はルール集合を示すことができる。いくつかの実施形態において、機械学習モデルの利用は、機械学習モデル及び/又は機械学習モデルであるデータ構造/ルール集合が機械学習アルゴリズムによってトレーニングされることを暗に意味する場合がある。
【0048】
例えば、機械学習モデルは、機械学習アルゴリズム及び機械学習アルゴリズムの1つ又は複数のパラメータを指定する機械学習構成に基づいてトレーニングすることができる。この機械学習構成は、本システムのユーザによって、例えば、より良い結果(すなわち、より精度の高い/信頼度の高い結果)を得る構成を見つけるように変更されてもよい。
【0049】
時間間隔及び第1のサブ間隔とは対照的に、第2のサブ間隔における数値の推定値は、2つの他の推定値、すなわち、時間間隔における数値の推定値と第1のサブ間隔における数値の推定値とに基づいて算出される。換言すると、第2のサブ間隔における数値の推定値は、時間間隔における数値の推定値と第1のサブ間隔における数値の推定値とから導出される。例えば、(2つのサブ間隔が合わさって当該時間間隔となっている場合、)時間間隔における推定値から減算して当該数値の推定値を得ることができる。換言すると、処理回路は、時間間隔における数値の推定値から第1のサブ間隔における数値の推定値を減算することによって第2のサブ間隔における数値の推定値を算出するように構成されることができる。これは、第2のサブ間隔における数値の推定値の算出には、追加の機械学習モデルのトレーニングが不要であり、当該処理の高速化が実現することをも意味する。換言すると、機械学習モデルをトレーニングすることなく、それぞれの第2のサブ間隔における数値の推定値を算出することができる。
【0050】
上述したように、各サブ間隔はさらなるサブ間隔に分割することができる。提示される手法を制御しながら、さらなるサブ間隔のうち一方に対する機械学習モデルをトレーニングし、2つの推定値に基づいてさらなるサブ間隔のうち他方に対する数値の推定値を導出することによって、さらなるサブ間隔における数値の推定値が算出されてもよい。実際、推定値の算出は、サブ間隔をさらに分割することによって回帰的に実行することができる。換言すると、処理回路は、各サブ間隔を2つのさらなるサブ間隔に分割し、履歴データに基づいて機械学習モデルをトレーニングすることによってさらなるサブ間隔のうち第1のさらなるサブ間隔における数値の推定値を算出し、第1のさらなるサブ間隔における数値の推定値と、2つのさらなるサブ間隔に分離された各サブ間隔における数値の推定値とに基づき、さらなるサブ間隔のうち第2のさらなるサブ間隔の数値の推定値を算出することによって、第1又は第2のサブ間隔のさらなるサブ間隔における数値の推定値をそれぞれ算出するように構成されることができる。例えば、第1の月及び第2の月を範囲とするサブ間隔は、第1の月に係る第1のさらなるサブ間隔と、第2の月に係る第2のさらなるサブ間隔とに分割することができる。機械学習モデルをトレーニング(して機械学習モデルを用いて推定値を算出)することによって第1の月に係る数値の推定値を算出し、第1の月及び第2の月に係る数値から第1の月に係る数値の推定値を減算することによって第2の月に係る数値の推定値を算出することができる。
【0051】
上述したように、上述の手法の利点は、大まかな推定値を迅速に生成することにある。この利点を活かして、本システムのユーザは算出した推定値を評価することができる。算出された推定値が間違っているようであれば、ユーザは、機械学習構成を変更/更新して当該変更/更新済の機械学習構成に基づいて推定値を再び算出する。
【0052】
評価の基準として、推定値のうち少なくとも1つ(すなわち、最初に算出することができる時間間隔における推定値)がユーザに提示される。換言すると、処理回路は、推定値のうち少なくとも1つに関する情報をユーザインタフェース18,20(
図1b及び/又は1c参照)を介してユーザに提示するように構成されることができる。例えば、少なくとも1つの推定値が算出され次第、その推定値を表示することが可能である。例えば、第1及び第2の機械学習モデルは、順番にトレーニングすることが可能である。すなわち、第1の機械学習モデルのトレーニングの完了後に第2の機械学習モデルをトレーニングすることができる。これは、さらなるサブ間隔についてトレーニングされる機械学習モデル又はモデルも同様である。つまり、機械学習モデルは同時ではなく時間的に前後してトレーニングされる。同時に、トレーニング済み機械学習モデルに基づいて算出される数値の1つ又は複数の推定値は、取得され次第、ユーザインタフェースを介してユーザに提供することができる。
【0053】
例えば、一般的に、処理回路が実行する処理は、本システムのオペレーティングシステムと、推定値を算出するアプリケーションプログラム等のアプリケーションプログラムとの両方を実行するのに用いることができる汎用プロセッサであるCPU(Central Processing Unit)によって実行することができる。しかし、多くの場合、機械学習モデルは、1つ又は複数のGPUによる汎用計算部(GP-GPU:General-Purpose Graphics Processing Units)等の追加の処理装置を用いてトレーニングされる。したがって、処理回路は、係る追加の処理装置、例えば、GP-GPUを備えることができる。しかし、トレーニング済み機械学習モデルに基づいた推定値の算出は、CPUによって実行してもよい。したがって、機械学習モデルのトレーニングが完了すると、CPUによって対応の数値の推定値を算出し、GPUを用いて後続の機械学習モデルをトレーニングしてもよい。通常、機械学習モデルを利用すると演算負荷が非常に低くなるため(例えば、数分以上に対し、秒又はコンマ数秒単位)、後続の機械学習モデルがトレーニングされている間に各数値の推定値をユーザに提供することができ、初期の結果を取得するまでのユーザの待ち時間を短縮することができる。換言すると、ユーザは、完全な結果を取得する前に部分的な結果を確認することができる。当該処理装置は、徐々に狭まるサブ間隔について算出される真の推定値を保持する。これにより、(一度に全ての推定値が提示される場合と比較して)徐々に洗練される推定値を、取得され次第ユーザインタフェースを介してユーザに提供することができる。
【0054】
大まかに言えば、処理回路は、第1のサブ間隔における数値の推定値の算出を開始又は完了する前に時間間隔における数値の推定値をユーザに提供するように構成されることができる。例えば、処理回路は、第2の機械学習モデルがトレーニングされている間にユーザに数値の推定値を提供するように構成されることができる。したがって、処理回路は、例えば、機械学習モデルがサブ間隔のさらなるサブ間隔についてトレーニングされている間、サブ間隔における数値のさらなるサブ間隔の推定値の算出を開始又は完了する前にサブ間隔における数値の推定値をユーザに提供するように構成されることができる。例えば、一般的に、時間間隔又はサブ間隔における数値の推定値は、時間間隔のさらなるサブ間隔における数値の推定値の算出又はさらなるサブ間隔の算出の完了前に提供することができる。
【0055】
1つ又は複数の推定値又は推定値がユーザに提供されることで、ユーザは、選択した機械学習構成が適切かどうかを迅速に確認することができ、これにより、ユーザは、当該推定値の算出を中止し、機械学習構成を更新し、更新後の機械学習構成を用いて推定値の算出を再度行うことができる。したがって、処理回路は、推定値のうち少なくとも1つの評価に基づいて機械学習構成を適合させるように構成されることができる。いくつかの実施形態では、本システム自体は、少なくとも1つの推定値を評価し、少なくとも1つの推定値が明らかに誤っている場合、機械学習構成を適合させることができる。しかし、各種実施形態では、この評価は、ユーザによって、すなわち、ユーザインタフェースを介したユーザの入力に基づいて実行することができる。換言すると、処理回路は、推定値のうち少なくとも1つに対するユーザ評価に基づいて機械学習構成を適合させるように構成されることができる。
【0056】
例えば、ユーザ評価は、ユーザインタフェースを介して実行することができる。換言すると、処理回路は、推定値のうち少なくとも1つに関する情報を(例えば、各推定値が算出され次第、順に)ユーザに対してユーザインタフェース18,20を介して提供し、ユーザからの少なくとも1つの推定値に対する評価に関する情報をユーザインタフェースを介して取得することによって、推定値のうち少なくとも1つを評価するように構成されることができる。例えば、少なくとも1つの推定値の評価に関する情報は、推定値の算出を中止させ、更新後の機械学習構成を用いて推定値の算出を再開させる命令を含むことができる。換言すると、少なくとも1つの推定値を提示された場合、ユーザには、当該処理を中止して機械学習構成を適合させる(すなわち、異なる機械学習構成を選択する)選択肢が与えられる。したがって、評価に関する情報は、更新後の機械学習モデルに関する情報を含み得る。例えば、処理回路は、評価に関する情報に基づいて機械学習構成を適合させるように構成されることができる。本システムは、機械学習構成の適合後、最初に用いられていた機械学習構成に基づいた推定値の算出を中止し、適合済みの機械学習構成を(例えば、少なくとも1つの推定値の評価の結果として)用いて推定値の算出を再度行うように構成されることができる。
【0057】
上述したように、ユーザは、ユーザインタフェースを介して処理を制御することができる。特に、ユーザは、インタフェースを介して推定値の算出を開始及び/又は中止し、機械学習構成を調整し、且つ/又はユーザインタフェースを介して時間間隔及びサブ間隔を設定してもよい。換言すると、処理回路は、時間間隔に関する情報、第1及び第2のサブ間隔に関する情報、及びユーザからの機械学習構成に関する情報のうち少なくとも1つをユーザインタフェースを介して取得するように構成されることができる。特に、ユーザは、機械学習アルゴリズム及び機械学習アルゴリズムの1つ又は複数のパラメータをユーザインタフェースを介して(機械学習構成の一部として)選択することができる。換言すると、ユーザは、例えば、推定値の算出の開始前に、又は少なくとも1つの推定値の評価の一部として機械学習構成(アルゴリズム+パラメータ)を選択することができる。付加的に、処理回路は、履歴データをユーザインタフェースを介して取得するように構成されることができる。例えば、ユーザは、履歴データをアップロード又は入力することができる。代替的に、履歴データは、システムの記憶回路に既に存在、例えば、記憶されていてもよい。
【0058】
図1b及び1cは、本システムのいくつかの実施形態に係る概略図を示す。同図において、異なる手段を用いてユーザインタフェースがユーザに提供される。例えば、
図1bは、本システムの一実施形態に係る概略図を示す。同図において、本システムは、処理回路14とインタフェース12を介して接続されるディスプレイ18を含む。ディスプレイは、ユーザ用のユーザインタフェースを提供するために用いることが可能である。例えば、処理回路は、ディスプレイ18上に表示されるユーザインタフェースを介して少なくとも1つの推定値に関する情報を提供するように構成されることができる。付加的に、処理回路は、ユーザからの情報をユーザインタフェースを介して取得するように構成されることができる。例えば、処理回路は、時間間隔に関する情報、第1及び第2のサブ間隔に関する情報、機械学習構成に関する情報、及びユーザからの評価に関する情報のうち少なくとも1つをユーザインタフェースを介して取得するように構成されることができる。例えば、ユーザインタフェースは、グラフィックユーザインタフェースとすることができ、ユーザは、時間間隔に関する情報、第1及び第2のサブ間隔に関する情報、ユーザからの評価に関する情報及び/又は機械学習構成に関する情報を、ユーザインタフェースを介して、例えば、ユーザインタフェース上で入力又は選択を行うことによって入力することができる。例えば、ディスプレイは、ユーザ入力を取得するためのタッチスクリーンディスプレイであってもよいし、又はユーザ入力は、(例えば、インタフェースを介して)処理回路と接続されるキーボード、マウス又はタッチパッドを介して取得してもよい。例えば、ディスプレイは、液晶ディスプレイ又はOELD(Organic Electro Luminescence Diode:有機発光ダイオード)ディスプレイであってもよい。
【0059】
代替的に、ユーザインタフェースは、遠隔のユーザインタフェース、すなわち、例えば、webブラウザ又はアプリケーションプログラムを介して遠隔の演算デバイスによって提示されるユーザインタフェースであってもよい。換言すると、処理回路は、少なくとも1つの推定値に関する情報を遠隔のユーザインタフェース20に対してコンピュータネットワーク30を介して提供するように構成されることができる。例えば、
図1cは、本システムの一実施形態に係る概略図を示す。同図において、処理回路は、遠隔のユーザインタフェース20に対してコンピュータネットワーク30を介して、例えば、インタフェース12を介して接続される。例えば、遠隔のユーザインタフェースは、webブラウザ又はアプリケーションプログラムによって実現されてもよい。処理回路は、コンピュータネットワークを介して、例えば、インターネット又はイントラネットを介して遠隔のユーザインタフェースと情報のやり取りを行うように構成されることができる。例えば、処理回路は、時間間隔に関する情報、第1及び第2のサブ間隔に関する情報、ユーザからの評価に関する情報及び機械学習構成に関する情報のうち少なくとも1つを遠隔のユーザインタフェースを介してユーザから取得するように構成されることができる。例えば、ユーザは、遠隔のユーザインタフェースによって表示されるフォームに各情報を入力することができる(又は各情報をフォームから選択することができる)。
【0060】
一般的に、いくつかの実施形態は、機械学習及び機械学習モデルに関する。例えば、機械学習モデル(例えば、第1及び/又は第2の機械学習モデル)は、人工ニューラルネットワークとすることができる。人工ニューラルネットワークは、脳内に見られるような生物学的な神経網に着想を得たシステムである。人工ニューラルネットワークは、複数の内部接続ノードと、当該ノード間における複数の接続、いわゆるエッジとを備える。通常、3種類のノード、つまり、入力値を受け付ける入力ノードと、他のノードに接続する(だけ)の隠れノードと、及び出力値を供給する出力ノードとが存在する。各ノードは、人工ニューロンを表すことができる。各エッジは、1つのノードから別のノードへ情報を伝達することができる。1つのノードの出力は、当該ノードの複数の入力の合計の(非線形)関数として定義することができる。1つのノードの複数の入力は、当該入力を供給するエッジ又はノードの「重み」に基づく関数で用いることができる。ノード及び/又はエッジの重みは、学習過程で調整することができる。換言すると、人工ニューラルネットワークのトレーニングには、人工ニューラルネットワークのノード及び/又はエッジの重みを調整すること、すなわち、所与の入力に対して所望の出力を提供することが含まれ得る。少なくともいくつかの実施形態では、機械学習モデルは、ディープニューラルネットワーク、例えば、隠れノードの1つ又は複数の層(すなわち、隠れ層)、好ましくは、隠れノードの複数の層を有するニューラルネットワークとすることができる。
【0061】
代替的に、第1又は第2の機械学習モデル(又はさらなる機械学習モデル)は、サポートベクターマシンとすることができる。サポートベクターマシン(すなわち、サポートベクターネットワーク)は、例えば、分類又は回帰分析においてデータを分析するのに用いることができる関連学習アルゴリズムを有する教師あり学習モデルである。サポートベクターマシンは、2つのカテゴリーのうちの一方に属する複数のトレーニング入力値を入力することによってトレーニングすることができる。サポートベクターマシンは、2つのカテゴリーのうちの一方に新たな入力値を割り当てるようにトレーニングすることができる。代替的に、機械学習モデルは、確率の有向非巡回グラフで表されるモデルであるベイジアンネットワークとすることができる。ベイジアンネットワークは、有向非巡回グラフを用いてランダムな可変数の集合とそれらの条件付きの依存関係とを表現するものとすることができる。代替的に、機械学習モデルは、検索アルゴリズムである遺伝的アルゴリズムと、自然な選択過程を模倣するヒューリスティクス技術とに基づくものであってもよい。
【0062】
いくつかの実施形態において、処理回路14は、準拠したソフトウェアと共に動作可能であるプロセッサ、コンピュータ又はプログラマブルハードウェアコンポーネント等の1つ又は複数の処理部、1つ又は複数の処理デバイス、任意の処理手段を用いて実装することができる。換言すると、処理回路14の説明した機能は、1つ又は複数のプログラマブルハードウェアコンポーネント上で実行されるソフトウェア上でも実現することができる。係るハードウェアコンポーネントは、汎用プロセッサ、DSP(Digital Signal Processor)、マイクロコントローラ等によって構成され得る。
【0063】
インタフェース12は、或る1つのモジュール内、複数のモジュール間又は異なるエンティティの各モジュール間において、デジタルであり得る情報(指定されたコードに応じたビット値)を受信及び/又は送信するための1つ又は複数の入力及び/又は出力に対応することができる。例えば、インタフェース12は、情報を受信及び/又は送信するように構成されるインタフェース回路を有することができる。
【0064】
少なくともいくつかの実施形態では、記憶回路16は、磁気又は光記憶媒体等のコンピュータ可読記憶媒体、例えば、ハードディスクドライブ、フラッシュメモリ、フロッピーディスク、RAM(Random Access Memory)、PROM(Programmable Read Only Memory)、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electronically Erasable Programmable Read Only Memory)、又はネットワークストレージから成る群のうち少なくとも1つの要素によって構成されることができる。
【0065】
例えば、システム100は、コンピュータシステムであってもよい。代替的に、コンピュータシステムは、システム100を含んでもよい。
【0066】
本システムのさらなる詳細及び態様を、提案の概念又は上述又は後述の1つ又は複数の例(例えば、
図2~3b)と合わせて説明する。本システムは、提案の概念又は上述又は後述の1つ又は複数の例の1つ又は複数の態様に対応する1つ又は複数の付加的な任意選択の特徴を有し得る。
【0067】
図2は、時間間隔にわたる数値の推移を予測する対応の方法のフローチャートを示す。本方法は、数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって時間間隔における数値の推定値を算出する(210)ことを含む。本方法は、時間間隔を第1及び第2のサブ間隔に分割する(220)ことを含む。本方法は、数値に関する履歴データに基づいて第2の機械学習モデルをトレーニングすることによって第1のサブ間隔における数値の推定値を算出する(230)ことを含む。本方法は、時間間隔における数値の推定値と第1のサブ間隔における数値の推定値とに基づいて第2のサブ間隔における数値の推定値を算出する(240)ことを含む。
【0068】
上述のように、
図1a~1cのシステムと合わせて説明した特徴は、同様に
図2の方法にも適用可能である。
【0069】
本方法のさらなる詳細及び態様を提案の概念又は上述又は後述の1つ又は複数の例(例えば、
図1a~1c、
図3a~3b)と合わせて説明する。本方法は、提案の概念又は上述又は後述の1つ又は複数の例の1つ又は複数の態様に対応する1つ又は複数の付加的な任意選択の特徴を有し得る。
【0070】
少なくともいくつかの実施形態は、漸進的な需要予測に関する。
【0071】
企業は、サプライチェーンを最適化するために製品需要を予測することを望む。
図3aは、製品需要を予測するのに用いることができる、数値の推移を予測する2つの手法の概略図である。
図3aには、今後4ヶ月の需要予測が示されている。
【0072】
係る予測値は、以下の方法で算出することができる。いくつかの手法のうち一手法(
図3aではナイーブ手法「A」として示す)を採用することができる。ここでは、全体の予測が所望の時間粒度で算出された後、ユーザに提示される。
【0073】
始めに、ユーザ(例えば、アナリスト)は、製品需要の履歴データ等の履歴データ300をシステムに、例えば、そのフロントエンドユーザインタフェース(UI)を介してダウンロードすることができる。ユーザは、ユーザインタフェースを用いて、例えば、予測期間ユニットの長さ、及びユニット数(例えば、それぞれ1ヶ月分の長さである期間が4つ存在する)、使用する予測方法、及びどのようにして入力データから特徴を導出するか等、いくつかの予測パラメータを構成することもできる。
【0074】
ユーザインタフェースは、必要なデータ処理(例えば、機械学習)を実行し、モデル320をトレーニングして予測値325を生成する何らかのバックエンド人工知能(AI:Artificial Intelligence)エンジンにそのデータを転送する(310)ことができる。例えば、予測すべき未来の期間毎(例えば、本例ではそれぞれ1ヶ月分の4つの期間のうちの各期間毎)に、モデルを履歴データに一番合うようにトレーニングさせることができ、また、トレーニング後のモデルを最新の履歴データ点(複数可)に対してのみ実行して未来のデータ点を予測することができる。この動作は、予測すべき未来の期間毎に反復することが可能である。予測結果は、何らかの処理遅延を経てユーザに返される場合がある。
【0075】
換言すると、ケースAの場合、処理ステップは、月+1、月+2、月+3、及び月+4についての4つの異なる機械学習モデルをトレーニングすることを含む。当該処理の演算負荷は高い。
図3aに示す例では、各機械学習トレーニングには(一例として)1分を要し、合計4分かかることが想定される。今後4ヶ月の需要は、4つのモデルのそれぞれを実行することによって個々に予測される。
【0076】
機械学習モデルのトレーニングでは通常、異なるアルゴリズム及びパラメータをテストして、最良のモデル(すなわち、履歴データに適用した際、最も精度の高い予測値)を得る構成を見つける必要がある。1つのアルゴリズムは、アルゴリズム固有のいくつかの構成パラメータ(例えば、学習率や正規化パラメータ等の予測パラメータとは異なる場合がある)の異なる値で動作することができる。また、それぞれ異なる機械学習アルゴリズム自体を評価することが可能である。
【0077】
この異なるパラメータ又はアルゴリズムの評価は、機械学習トレーニングによって遅延されることがある。というのも、機械学習トレーニングは、長引く可能性があり、また、各予測期間に対して実行されるため、トレーニングが終了するまで結果が一切返ってこないからである。したがって、係る処理遅延も長引き、その間、ユーザにはフィードバックが与えられない。ユーザは、係る遅延を待って、当該予測処理にアクセスし、予測パラメータを修正して別の予測処理を実行することを決断してもよい。
【0078】
データに含まれる各期間間のバラツキが多い場合、予測に基づく機械学習に影響を及ぼし得る別の問題が生じる。この場合、当該バラツキは、当該モデルによって抽出されるパターンが曖昧になることを意味するため、履歴データであっても、精度の高いモデルをトレーニングするのは難しい場合がある。換言すると、当該バラツキをランダムな雑音と区別するのが難しい場合がある。上記問題によって引き起こされる予測誤差は蓄積し得る。例えば、今後12ヶ月の月毎の需要の過大予測は、積み重なって翌年分の需要予測に大幅な誤差を生み出す可能性がある。
【0079】
一方、本開示のいくつかの実施形態では、別の手法を選択することができる(図中、提案手法「B」として示す)。この提案手法では、全体の予測期間(すなわち、時間間隔)を一度に予測することができる(すなわち、時間間隔における推定値を算出することができる)。例えば、以下に紹介するトレーニング及び予測は、
図1a~1dのシステムによって実行することができる。例えば、
図3aでは、今後4ヶ月を一ブロックとして需要の予測を行うことができる。例えば、これは最初に実行することができる。対応の機械学習モデルをトレーニングし(330)、予測値335を算出することができる。
【0080】
次いで、一ブロックとしての今後2ヶ月(すなわち、第1のサブ間隔)について需要を予測することができる。対応の機械学習モデルをトレーニングし(340)、予測値345を算出することができる。上述の予測値を互いに減算することで第3の月及び第4の月の需要を推測することができる(すなわち、第2のサブ間隔における推定値を算出することができる)。
【0081】
当該予測値は、上記と同一の手順に従って再起的に定義され得る。例えば、月毎に予測値を予測する場合、機械学習モデルをトレーニングして第1の月の需要における予測値355を予想し(350)、第1の月及び第2の月について予測される需要と第1の月について予測される需要とに基づいて第2の月における需要を推測することができる。したがって、機械学習モデルをトレーニングして第3の月における需要の予測値365を予測し(360)、第3の月及び第4の月について予測される需要と第3の月について予測される需要とに基づいて第4の月における需要を推測することができる。
【0082】
換言すると、まず、4ヶ月全体を一ブロックとして当該期間の需要を一度に予測することができる。1つのみのモデルのトレーニング(330)には1分しかかからない。当該モデルを実行することによって需要を予測することができる。中間(まだ粗い)予測値335をユーザに返すことができる。次いで、今後2ヶ月(月1+2)を一ブロックとして当該期間の需要を予測することができる。これにはまた、1つのモデルのトレーニング(340)が含まれ、1分かかる。上述の予測値を互いに減算することによって月3+4についての需要を推測することができる。ここでもまた、洗練された(それでもまだいくらか粗い)予測値345をユーザに返すことができる。この予測値は、上記と同一の処理によって再起的に洗練させることができる。
【0083】
この手法を用いて、ユーザは、早い段階での(洗練されていない)結果を受け取り、当該予測が不十分であると判断し、予測処理を中止し、別の予測パラメータセットを試すことができる。
図3bは、全体の時間期間/時間間隔における例示的な予測値335a、335bを示す概略図である。予測が履歴データに対してあり得ないようなものである場合、
図3bに示すように、ユーザは、当該予測が不十分であると判断し、予測処理を中止し、別の予測パラメータセットを試すことができる。
【0084】
さらに、予測誤差が追加されていくことを回避することができる。例えば、
図3aを参照すると、4ヶ月毎の予測誤差を合計する代わりに、全体の4ヶ月分の期間が一度に予測されている。予測の不連続性は中間予測値の差分特性によって回避することができる。
【0085】
例えば、履歴データ内の月毎のバラツキが大きいことに起因して、明確なパターンを抽出して安定した精度の高いモデルをトレーニングすることが難しい場合がある。そしてこれは、例えば、今後12ヶ月の月毎の需要の過大予測に繋がり得る。共に、当該月毎の過大推定値は、積み重なって来年分の需要予測との大幅な誤差を生み出す可能性がある。
【0086】
しかし、各種実施形態では、第1のステップにおいて、履歴データにおける全ての月毎の値には、先行する月(上述の例では12ヶ月)についてのデータの和を代入することができる。これによって、月と月との間のバラツキを減らすことができ、より精度の高い(12ヶ月分の)モデルのトレーニングを支援することができる。例えば、
月Mには、Σ(M-11,M-10,M-9…M)を代入することができ、
月M+1には、Σ(M-10,M-9…M,M+1)を代入することができ、
月M+2には、Σ(M-9…M,M+1,M+2)を代入することができる。
【0087】
この例では、2つの連続した代入値は、共通の和の12項のうちの10項を含む。これによって、連続した値間の(相対的な)バラツキを減らすことができる。モデルは、この合計データのうち、12ヶ月分の期間についての値の合計を予測するようにトレーニングすることができる。
【0088】
また、長い(12ヶ月分の)期間から他の短い期間における予測値を減算することによって(未来の)短い期間についての値が予測されるため、月毎の予測値が正しく合算されることが保証される。
【0089】
例えば、例示的な形式的な定義において、当日をN、翌月(予測すべき第1の月)をN+1、以降の月をそれぞれN+2、N+3等とした場合、予測値は、以下のように定義することができる。
予測値([N+1~N+4]):=モデル([N+1~N+4]):
換言すると、月N+1~N+4における予測値は、月N+1~N+4についての(単一の)モデルをトレーニングすることによって得られる。
予測値([N+1~N+2]):=モデル([N+1~N+2]):
月N+1~N+2における予測値は、月N+1~N+2についての(単一の)モデルをトレーニングすることによって得られる。
予測値([N+3~N+4)):=予測値([N+1~N+4])-予測値([N+1~N+2])
月N+3~N+4における予測値は、月N+1~N+4における予測値から月N+1及びN+2における予測値を減算することによって得られる。
【0090】
同じ処理を個々の月に対して再起的に実行することができる。
予測値(N+1):=モデル(N+1):
月N+1における予測値は、月N+1についての(単一の)モデルをトレーニングすることによって得られる。
予測値(N+2):=予測値([N+1~N+2])-予測値(N+1):
月N+2における予測値は、月N+1及びN+2における予測値から月N+1における予測値を減算することによって得られる。
予測値(N+3):=モデル(N+3):
月N+3における予測値は、月N+3についての(単一の)モデルをトレーニングすることによって得られる。
予測値(N+4):=予測値([N+3~N+4))-予測値(N+3):
月N+4における予測値は、月N+3及びN+4における予測値から月N+3における予測値を減算することによって得られる。
【0091】
したがって、予測の不連続性は中間予測値の差分特性によって回避することができる。本例から分かるように、いくつかの実施形態では、2つの連続した短期間の値は、バラツキが大きい可能性がある短期間モデルから予測されることがない。その代わりに、第1の値は、短期間モデル(但し、より近い将来)から予測することができる。第2の値は、より長い期間のモデル(したがって、よりバラツキが少ない)に対して第1の値を減算することによって予測することができる。
【0092】
本概念のさらなる詳細及び態様を提案の概念又は上述又は後述の1つ又は複数の例(例えば、
図1a~2)と合わせて説明する。本概念は、提案の概念又は上述又は後述の1つ又は複数の例の1つ又は複数の態様に対応する1つ又は複数の付加的な任意選択の特徴を有し得る。
【0093】
以下の例は、さらなる実施形態に属する。
(1) 時間間隔にわたる数値の推移を予測するシステム(100)であって、
前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出し、
前記時間間隔を第1及び第2のサブ間隔に分割し、
前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出し、
前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出する
ように構成される
処理回路(14)
を具備する
システム。
(2) (1)に記載のシステムであって、
前記処理回路は、前記時間間隔における前記数値の前記推定値から前記第1のサブ間隔における前記数値の前記推定値を減算することによって前記前記第2のサブ間隔における前記数値の推定値を算出するように構成される
システム。
(3) (1)又は(2)に記載のシステムであって、
前記処理回路は、前記各サブ間隔を2つのさらなるサブ間隔に分割し、前記履歴データに基づいて機械学習モデルをトレーニングすることによって前記さらなるサブ間隔のうち第1のさらなるサブ間隔における前記数値の推定値を算出し、前記第1のさらなるサブ間隔における前記数値の前記推定値と、前記2つのさらなるサブ間隔に分割される前記各サブ間隔における前記数値の前記推定値とに基づいて前記さらなるサブ間隔のうち第2のさらなるサブ間隔の前記数値の推定値を算出することによって、前記第1又は第2のサブ間隔のさらなるサブ間隔における前記数値の推定値をそれぞれ算出するように構成される
システム。
(4) (1)~(3)のうちの1つに記載のシステムであって、
前記それぞれの第2のサブ間隔における前記数値の前記推定値は、機械学習モデルをトレーニングすることなく算出される
システム。
(5) (1)~(4)のうちの1つに記載のシステムであって、
前記機械学習モデルは、機械学習アルゴリズムと前記機械学習アルゴリズムの1つ又は複数のパラメータとを指定する機械学習構成に基づいてトレーニングされ、前記処理回路は、前記推定値のうち少なくとも1つの評価に基づいて前記機械学習構成を適合させるように構成される
システム。
(6) (5)に記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つのユーザ評価に基づいて前記機械学習構成を適合させるように構成される
システム。
(7) (5)又は(6)に記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェース(18,20)を介してユーザに提供し、前記少なくとも1つの推定値の前記評価の情報を前記ユーザインタフェースを介して前記ユーザから取得することによって、前記推定値のうち少なくとも1つを評価するように構成される
システム。
(8) (5)~(7)のうちの1つに記載のシステムであって、
当該システムは、前記機械学習構成を適合させた後、最初に用いられた前記機械学習構成に基づく前記推定値の算出を中止し、前記適合済みの機械学習構成を用いて前記推定値の算出を再度行うように構成される
システム。
(9) (1)~(8)のうちの1つに記載のシステムであって、
前記各機械学習モデルは、前記履歴データの第1のサブセットと、前記各機械学習モデルのトレーニングが実行される前記時間間隔に等しい時間の長さを表す前記履歴データの第2のサブセットとを算出し、前記履歴データの前記第1のサブセットをトレーニング入力とし、前記第2のサブセットを前記各機械学習モデルの前記トレーニング用のトレーニング出力として用いることによってトレーニングされる
システム。
(10) (1)~(9)のうちの1つに記載のシステムであって、
前記第2のサブ間隔は、前記第1のサブ間隔に時間的に後続する
システム。
(11) (1)~(10)のうちの1つに記載のシステムであって、
前記第1及び第2のサブ間隔は、長さが同一である
システム。
(12) (1)~(10)のうちの1つに記載のシステムであって、
前記第1及び第2のサブ間隔は、長さが異なる
システム。
(13) (1)~(12)のうちの1つに記載のシステムであって、
前記処理回路は、前記推定値のうち少なくとも1つの情報をユーザインタフェース(18,20)を介してユーザに提供するように構成される
システム。
(14) (13)に記載のシステムであって、さらに、
ディスプレイ(18)
を具備し、
前記処理回路は、前記ディスプレイ上に表示されるユーザインタフェースを介して前記少なくとも1つの推定値に関する前記情報を提供するように構成される
システム。
(15) (13)に記載のシステムであって、
前記処理回路は、前記少なくとも1つの推定値に関する前記情報をコンピュータネットワーク(30)を介して遠隔のユーザインタフェース(20)に提供するように構成される
システム。
(16) (13)~(15)のうちの1つに記載のシステムであって、
前記処理回路は、前記第1のサブ間隔における前記数値の前記推定値の算出の開始前又は完了前に、前記時間間隔における前記数値の前記推定値を前記ユーザに提供するように構成される
システム。
(17) (13)~(16)のうちの1つに記載のシステムであって、
時間間隔又はサブ間隔における前記数値の前記推定値は、前記時間間隔のサブ間隔又は前記サブ間隔のさらなるサブ間隔における前記数値の前記推定値の算出前に提供される
システム。
(18) (1)~(17)のうちの1つに記載のシステムであって、
前記処理回路は、前記時間間隔の情報、前記第1及び第2のサブ間隔の情報、及び機械学習構成の情報のうち少なくとも1つをユーザインタフェースを介してユーザから取得するように構成される
システム。
(19) (1)~(18)のうちの1つに記載のシステムであって、
前記数値は、製品の需要に関し、前記履歴データは、前記製品の履歴需要に関する。
(20) 時間間隔にわたる数値の推移を推定する方法であって、
前記数値に関する履歴データに基づいて第1の機械学習モデルをトレーニングすることによって前記時間間隔における前記数値の推定値を算出し(210)、
前記時間間隔を第1及び第2のサブ間隔に分割し(220)、
前記数値に関する前記履歴データに基づいて第2の機械学習モデルをトレーニングすることによって前記第1のサブ間隔における前記数値の推定値を算出し(230)、
前記時間間隔における前記数値の前記推定値と、前記第1のサブ間隔における前記数値の前記推定値とに基づいて前記第2のサブ間隔における前記数値の推定値を算出する(240)
方法。
(21) コンピュータ、プロセッサ、又はプログラマブルハードウェアコンポーネント上で実行された場合に、(20)に記載の方法を実行するプログラムコードを有するコンピュータプログラム。
【0094】
上記で説明した例及び図面のうちの1以上と合わせて言及及び説明した態様及び特徴は、他の例の同様の特徴と置き換えるため又は当該特徴を追加的に導入するために当該他の例のうちの1以上と同様に組み合わせることができる。
【0095】
例はさらに、コンピュータ又はプロセッサ上で実行される場合に上述の方法のうちの1以上を実行するプログラムコードを有する当該コンピュータプログラムとすることができる、又は、当該コンピュータプログラムに関することができる。上述した様々な方法のステップ、動作又は処理は、プログラムされたコンピュータ又はプロセッサによって実行することができる。また、例は、マシン可読、プロセッサ可読又はコンピュータ可読であると共にエンコードマシン実行可能、プロセッサ実行可能又はコンピュータ実行可能である命令プログラムであるデジタルデータ記憶媒体等のプログラム記憶装置も含み得る。当該命令は、上述の方法の動作の一部又は全てを実行する又は実行させる。当該プログラム記憶装置は、例えば、磁気ディスク及び磁気テープ、ハードドライブ、又は、光学的に読み出し可能なデジタルデータ記憶媒体等のデジタルメモリ、磁気記憶媒体を有することができる又はそれら自体とすることができる。さらなる例は、上述の方法の動作を実行するようにプログラムされたコンピュータ、プロセッサ又は制御部、又は、上述の方法の動作を実行するようにプログラムされた(フィールド)プログラマブル論理アレイ((F)PLA)又は(フィールド)プログラマブルゲートアレイ((F)PGA)も含み得る。
【0096】
上記の説明及び図面は、本開示の原理を例示しているに過ぎない。また、本明細書において列挙した例は全て、本発明者(ら)によって当該技術分野の発展に貢献する本開示の原理及び概念に対する読者の理解の助けとなるように原則として例示のためだけのものとして明確に意図されている。本開示の原理、態様、実施例、及びそれらの具体的な例に関する本明細書の記載は全て、それらの等価物を包含することが意図されている。
【0097】
或る特定の機能を実行する「…の手段」として示される機能ブロックは、或る特定の機能を実行するように構成された回路とすることができる。したがって、「何らかのもののための手段」は、各タスクに対して構成された又は各タスクに適した装置又は回路等の「何らかのものに対して構成された又は何らかのものに適した手段」として実施することができる。
【0098】
「手段」、「信号を供給する手段」、「信号を生成する手段」等で標記されている任意の機能ブロックを含む、図示されている様々な要素の機能は、「信号供給部」、「信号処理部」、「プロセッサ」、「コントローラ」等の専用ハードウェアの形態及び適当なソフトウェアに関連してソフトウェアを実行することができるハードウェアの形態で実施することができる。プロセッサによって実行される場合、当該機能は、単一の専用プロセッサによって、単一の共用プロセッサによって、又は、複数の個別のプロセッサによって実行することができ、これらのうちの一部又は全ては共用してもよい。しかし、「プロセッサ」又は「コントローラ」という用語は、ソフトウェアを実行することができるハードウェアに排他的に限定されず、デジタル信号プロセッサ(DSP)ハードウェア、ネットワークプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ソフトウェアを格納する読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)及び不揮発性記憶装置を含んでもよい。従来の及び/又はカスタムの他のハードウェアも含んでもよい。
【0099】
ブロック図は、例えば、本開示の原理を実施する高レベルの回路図を示している。同様に、フローチャート、フロー図、状態遷移図、疑似コード等は、例えばコンピュータ可読媒体内で実質的に表現することができ、そのため、コンピュータ又はプロセッサが明示的に図示されているか否かにかかわらず、係るコンピュータ又はプロセッサによって実行することができる様々な処理、動作又はステップを表すことができる。本明細書又は特許請求の範囲に開示されている方法は、これらの方法の各動作を実行する手段を有する装置によって実施することができる。
【0100】
本明細書又は特許請求の範囲に開示されている複数の動作、処理、操作、ステップ又は機能に関する開示は、別途明示的又は黙示的な記載がない限り、例えば、技術的な理由によって特定の順序になっていると解釈されるものではないことを理解されたい。そのため、複数の動作又は機能に関する開示は、係る動作又は機能が、技術的な理由のために置換不能でない限り、当該動作又は機能を特定の順序に限定しないものとする。また、いくつかの例において、単一の動作、機能、処理、操作又はステップは、それぞれ、複数のサブ動作、サブ機能、サブ処理、サブ操作又はサブステップを含んでもよく、又はそれらに分けてもよい。このようなサブ動作は、明示的に除外されていない限り、当該単一の動作に関する本開示の一部として含めることができる。
【0101】
また、以下の請求項は、これによって詳細な説明に組み込まれるものとし、各請求項は、それ自体が独立した例として有効である。各請求項はそれ自体が独立した例として有効であり、従属請求項は当該請求項において1以上の他の請求項との特定の組み合わせに言及することができるが、他の例は、当該従属請求項と他の各従属又は独立請求項の主題との組み合わせも含んでもよいことに留意されたい。このような組み合わせは、特定の組み合わせは意図されていないと記載されない限り、本明細書において明示的に提案されているのである。また、或る請求項が任意の他の独立請求項に直接従属していない場合であっても、当該請求項の特徴をこの任意の他の独立請求項にも含めることが意図されている。