IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧

特許7400819予測装置、予測方法、及び予測プログラム
<>
  • 特許-予測装置、予測方法、及び予測プログラム 図1
  • 特許-予測装置、予測方法、及び予測プログラム 図2
  • 特許-予測装置、予測方法、及び予測プログラム 図3
  • 特許-予測装置、予測方法、及び予測プログラム 図4
  • 特許-予測装置、予測方法、及び予測プログラム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-11
(45)【発行日】2023-12-19
(54)【発明の名称】予測装置、予測方法、及び予測プログラム
(51)【国際特許分類】
   G06Q 10/04 20230101AFI20231212BHJP
【FI】
G06Q10/04
【請求項の数】 5
(21)【出願番号】P 2021528753
(86)(22)【出願日】2019-06-26
(86)【国際出願番号】 JP2019025473
(87)【国際公開番号】W WO2020261448
(87)【国際公開日】2020-12-30
【審査請求日】2021-11-08
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】佐藤 大祐
(72)【発明者】
【氏名】松林 達史
(72)【発明者】
【氏名】戸田 浩之
【審査官】谷川 智秀
(56)【参考文献】
【文献】特開2009-104408(JP,A)
【文献】特開2009-043291(JP,A)
【文献】特開2008-152318(JP,A)
【文献】特開2013-060927(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
時空間データは、所定の観測期間に観測された、観測地点及び観測時刻ごとの観測値を含み、
対象範囲は、予測先の時刻までの各時刻を含む期間、観測地点ごと、曜日ごととし、
モデルは、前記観測期間より前に予め抽出された時空間データにクラスタリング手法を適用して得られたクラスタ及び前記対象範囲の組の各々に対応した予測値の集合であって、前記対象範囲に含まれる各時刻の複数の予測値の集合として、
前記時空間データの各々と、前記モデルの各々とに基づいて、前記観測地点の各々について、前記モデルの各々のクラスタごとに、当該クラスタに含まれる各時刻の予測値の集合と、当該観測地点の前記時空間データに含まれる観測値の集合との残差をとり、残差が最も小さくなるクラスタのモデルに対応する予測先の時刻の予測値を、前記時空間データに対応する第一予測値として予測する通常予測部と、
前記残差が第一閾値以上である観測地点の前記モデルを更新対象とするフラグを記憶部に登録すると共に、前記残差が第二閾値以上となった観測地点の前記時空間データの集合を時空間残差データとして抽出する残差抽出部と、
前記時空間残差データを入力として、ベクトル自己回帰、縮小ランク回帰、ガウス過程回帰、及び前記時空間データを対象とした任意の予測手法の少なくとも一つを用いて、当該時空間残差データを抽出した観測地点の各々について、当該予測手法による各時刻の予測値の集合と、当該観測地点の前記時空間残差データに含まれる観測値の集合との残差をとり、残差が最も小さくなる予測先の時刻の予測値を、第二予測値として予測する残差予測部と、
前記対象範囲ごとに、前記第一予測値と前記第二予測値とを平均して合成した予測値を出力する合成部と、
を含む予測装置。
【請求項2】
前記記憶部に登録された前記フラグを参照し、前記フラグに対応する前記モデルについて、前記記憶部に記憶された、当該モデルの前記対象範囲に対応する複数日分の前記時空間データの観測値の各々を抽出し、抽出した当該観測値の各々をデータセットとして用いて、変動を分析するためのクラスタリング手法を前記データセットに対して適用して得られる複数日分の各時刻の観測値のクラスタにおけるセントロイドの値又は平均値の各時刻の集合を前記予測値の集合としてもつように当該モデルを更新する変動分析部を更に含む請求項に記載の予測装置。
【請求項3】
時空間データは、所定の観測期間に観測された、観測地点及び観測時刻ごとの観測値を含み、
対象範囲は、予測先の時刻までの各時刻を含む期間、観測地点ごと、曜日ごととし、
モデルは、前記観測期間より前に予め抽出された時空間データにクラスタリング手法を適用して得られたクラスタ及び前記対象範囲の組の各々に対応した予測値の集合であって、前記対象範囲に含まれる各時刻の複数の予測値の集合として、
前記時空間データの各々と、前記モデルの各々とに基づいて、前記観測地点の各々について、前記モデルの各々のクラスタごとに、当該クラスタに含まれる各時刻の予測値の集合と、当該観測地点の前記時空間データに含まれる観測値の集合との残差をとり、残差が最も小さくなるクラスタのモデルに対応する予測先の時刻の予測値を、前記時空間データに対応する第一予測値として予測し、
前記残差が第一閾値以上である観測地点の前記モデルを更新対象とするフラグを記憶部に登録すると共に、前記残差が第二閾値以上となった観測地点の前記時空間データの集合を時空間残差データとして抽出し、
前記時空間残差データを入力として、ベクトル自己回帰、縮小ランク回帰、ガウス過程回帰、及び前記時空間データを対象とした任意の予測手法の少なくとも一つを用いて、当該時空間残差データを抽出した観測地点の各々について、当該予測手法による各時刻の予測値の集合と、当該観測地点の前記時空間残差データに含まれる観測値の集合との残差をとり、残差が最も小さくなる予測先の時刻の予測値を、第二予測値として予測し、
前記対象範囲ごとに、前記第一予測値と前記第二予測値とを平均して合成した予測値を出力する、
ことを含む処理をコンピュータが実行することを特徴とする予測方法。
【請求項4】
前記記憶部に登録された前記フラグを参照し、前記フラグに対応する前記モデルについて、前記記憶部に記憶された、当該モデルの前記対象範囲に対応する複数日分の前記時空間データの観測値の各々を抽出し、抽出した当該観測値の各々をデータセットとして用いて、変動を分析するためのクラスタリング手法を前記データセットに対して適用して得られる複数日分の各時刻の観測値のクラスタにおけるセントロイドの値又は平均値の各時刻の集合を前記予測値の集合としてもつように当該モデルを更新するステップを更に含む請求項に記載の予測方法。
【請求項5】
時空間データは、所定の観測期間に観測された、観測地点及び観測時刻ごとの観測値を含み、
対象範囲は、予測先の時刻までの各時刻を含む期間、観測地点ごと、曜日ごととし、
モデルは、前記観測期間より前に予め抽出された時空間データにクラスタリング手法を適用して得られたクラスタ及び前記対象範囲の組の各々に対応した予測値の集合であって、前記対象範囲に含まれる各時刻の複数の予測値の集合として、
前記時空間データの各々と、前記モデルの各々とに基づいて、前記観測地点の各々について、前記モデルの各々のクラスタごとに、当該クラスタに含まれる各時刻の予測値の集合と、当該観測地点の前記時空間データに含まれる観測値の集合との残差をとり、残差が最も小さくなるクラスタのモデルに対応する予測先の時刻の予測値を、前記時空間データに対応する第一予測値として予測し、
前記残差が第一閾値以上である観測地点の前記モデルを更新対象とするフラグを記憶部に登録すると共に、前記残差が第二閾値以上となった観測地点の前記時空間データの集合を時空間残差データとして抽出し、
前記時空間残差データを入力として、ベクトル自己回帰、縮小ランク回帰、ガウス過程回帰、及び前記時空間データを対象とした任意の予測手法の少なくとも一つを用いて、当該時空間残差データを抽出した観測地点の各々について、当該予測手法による各時刻の予測値の集合と、当該観測地点の前記時空間残差データに含まれる観測値の集合との残差をとり、残差が最も小さくなる予測先の時刻の予測値を、第二予測値として予測し、
前記対象範囲ごとに、前記第一予測値と前記第二予測値とを平均して合成した予測値を出力する、
ことをコンピュータに実行させる予測プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の技術は、予測装置、予測方法、及び予測プログラムに関する。
【背景技術】
【0002】
時空間的な広がりを有する統計量がある時間間隔で観測される時空間データに関する技術がある。統計量は、例えば、人の流れ、交通の流れ、雨量、及び大気の化学物質量などである。現在の時刻から過去のある時刻までに観測された時空間データを用いて、現在の時刻から近未来の時刻までの時空間変数値を予測する技術がある。
【0003】
時空間データを予測するための手法は、これまでにも数多く提案されている。中でも、特許文献1に記載される手法は、例えばイベント会場に急激に人が集まるような、通常時と異なる突発的な変動を含む時空間データに対しても予測が可能である。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-22237号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
先行文献1に記載される従来手法は、通常時とは異なる時空間データの変動を精度よくとらえるため、逐次観測される最新の時空間データを取り込みながら予測モデルの更新を行う。このとき、予測モデルは時間的及び空間的な相関を利用するため、観測時刻数×観測地点数の説明変数を持つ。そのため、扱う時空間データが時空間的に高密度で範囲が大きい場合、予測モデルを逐次更新するには計算負荷が大きくなりすぎてしまうという問題がある。
【0006】
開示の技術は、上記の点に鑑みてなされたものであり、通常時とは異なる変動を含む時空間データに対する予測を、計算負荷を抑えつつ行うことができる予測装置、予測方法、及び予測プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示の第1態様は、予測装置であって、所定の期間に観測された、観測地点及び観測時刻ごとの観測値を含む時空間データの各々と、観測地点及び周期の少なくとも一方について定められた対象範囲ごとの、前記時空間データの変動を予測するためのモデルの各々とに基づいて、前記モデルの各々の前記対象範囲についての第一予測値を予測する通常予測部と、前記時空間データの各々と、前記モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応する前記モデルとの残差により、閾値以上の残差である前記時空間データを時空間残差データとして抽出する残差抽出部と、前記時空間残差データに基づいて、予め定められた予測手法に従って、前記時空間残差データに対応する前記対象範囲についての第二予測値を予測する残差予測部と、前記第一予測値と前記第二予測値とを合成した予測値を出力する合成部と、を含む。
【0008】
本開示の第2態様は、予測方法であって、所定の期間に観測された、観測地点及び観測時刻ごとの観測値を含む時空間データの各々と、観測地点及び周期の少なくとも一方について定められた対象範囲ごとの、前記時空間データの変動を予測するためのモデルの各々とに基づいて、前記モデルの各々の前記対象範囲についての第一予測値を予測し、前記時空間データの各々と、前記モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応する前記モデルとの残差により、閾値以上の残差である前記時空間データを時空間残差データとして抽出し、前記時空間残差データに基づいて、予め定められた予測手法に従って、前記時空間残差データに対応する前記対象範囲についての第二予測値を予測し、前記第一予測値と前記第二予測値とを合成した予測値を出力する、ことを含む処理をコンピュータが実行することを特徴とする。
【0009】
本開示の第3態様は、予測プログラムであって、所定の期間に観測された、観測地点及び観測時刻ごとの観測値を含む時空間データの各々と、観測地点及び周期の少なくとも一方について定められた対象範囲ごとの、前記時空間データの変動を予測するためのモデルの各々とに基づいて、前記モデルの各々の前記対象範囲についての第一予測値を予測し、前記時空間データの各々と、前記モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応する前記モデルとの残差により、閾値以上の残差である前記時空間データを時空間残差データとして抽出し、前記時空間残差データに基づいて、予め定められた予測手法に従って、前記時空間残差データに対応する前記対象範囲についての第二予測値を予測し、前記第一予測値と前記第二予測値とを合成した予測値を出力する、ことをコンピュータに実行させる。
【発明の効果】
【0010】
開示の技術によれば、通常時とは異なる変動を含む時空間データに対する予測を、計算負荷を抑えつつ行うことができる。さらに、過去に観測された変動と、これまでに観測されていない突発的な変動とを分けて予測することで、全体の予測精度の向上も実現できる。
【図面の簡単な説明】
【0011】
図1】従来手法と本実施形態の提案手法とを比較したイメージ図である。
図2】本実施形態の予測装置の構成を示すブロック図である。
図3】予測装置のハードウェア構成を示すブロック図である。
図4】予測装置による予測処理の流れを示すフローチャートである。
図5】予測装置による通常時変動分析処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0013】
まず、本開示の技術の概要について説明する。上記課題で説明したように、逐次更新を行う時空間予測手法は、例えば大規模イベント会場に急激に人が集まるような、通常時と異なる突発的な変動にも追随した予測を行うことが可能である。同技術としては、特許文献1などの時空間変数を用いたオンライン予測の技術がある。しかし、この時空間予測手法は、データの密度が高く、範囲の広い時空間データを扱う際には計算量が大きくなってしまうという問題がある。このような課題を解決するために、本実施形態では、過去に発生したパターンによって説明できる変動と、説明できない変動に分けて予測を行い、それぞれの結果を合成して予測を行う。計算負荷の高い時空間予測モデルは、上記過去のパターンで説明できない変動のみに適用する。図1は、従来手法と本実施形態の提案手法とを比較したイメージ図である。
【0014】
以下、本実施形態の構成について説明する。
【0015】
図2は、本実施形態の予測装置の構成を示すブロック図である。
【0016】
図2に示すように、予測装置100は、入力部110と、記憶部120と、変動分析部130と、予測部140とを含んで構成されている。記憶部120は、観測DB121と、分析結果DB122と、フラグDB123とを含む。予測部140は、通常予測部141と、残差抽出部142と、残差予測部143と、合成部144とを含む。
【0017】
図3は、予測装置100のハードウェア構成を示すブロック図である。
【0018】
図3に示すように、予測装置100は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ストレージ14、入力部15、表示部16及び通信インタフェース(I/F)17を有する。各構成は、バス19を介して相互に通信可能に接続されている。
【0019】
CPU11は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU11は、ROM12又はストレージ14からプログラムを読み出し、RAM13を作業領域としてプログラムを実行する。CPU11は、ROM12又はストレージ14に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM12又はストレージ14には、予測プログラムが格納されている。
【0020】
ROM12は、各種プログラム及び各種データを格納する。RAM13は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ14は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0021】
入力部15は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。
【0022】
表示部16は、例えば、液晶ディスプレイであり、各種の情報を表示する。表示部16は、タッチパネル方式を採用して、入力部15として機能してもよい。
【0023】
通信インタフェース17は、端末等の他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0024】
次に、予測装置100の各機能構成について説明する。各機能構成は、CPU11がROM12又はストレージ14に記憶された予測プログラムを読み出し、RAM13に展開して実行することにより実現される。
【0025】
予測装置100の処理は、主に、変動分析部130で行う通常時変動分析処理と、予測部140で行う予測処理とに分けられる。通常時変動分析処理とは、例えば、通常時の時空間データの予測値を予めモデルとして求めておく処理である。予測処理では、モデルで説明できる時空間データがある対象範囲についてはモデルで予測し、突発的な時空間データが生じている対象範囲については残差をとって予測する。
【0026】
予測装置10は、入力として、所定の期間に観測された、観測された地点及び時刻ごとの観測値を含む時空間データの各々を受け付ける。入力部110は、受け付けた時空間データの各々を観測DB121に格納する。
【0027】
観測DB121は、時空間データの各々を格納するためのデータベースである。観測DB121には、時空間データとして、観測値が観測された時刻である観測時刻、観測値が観測された地点である観測地点、及び観測値の組が、観測時刻、及び観測地点ごとに格納される。このとき、観測時刻及び観測地点のデータは、変動分析部130、及び残差予測部143の分析手法において必要な情報を格納する。例えば、分析手法に周期的な曜日の情報が必要であれば時刻情報に加えて曜日情報も格納する。また、分析手法が観測地点の識別情報として、観測地点名、及び座標情報が必要であればこれを格納する。以下の処理では、観測DB121に格納された時空間データを用いる。
【0028】
分析結果DB122は、変動分析部130の出力であるモデルを格納するためのデータベースである。分析結果DB122に格納される出力は、通常時の変動を説明するためのモデルの各々であり、時空間データの変動を予測するためのモデルである。モデルが説明する対象範囲は、変動分析部130の分析手法による。モデルの各々は、観測地点及び周期の少なくとも一方について定められた対象範囲ごとに分析結果として分析結果DB122に格納される。例えば、変動分析部130の分析手法が地点ごとに時系列データを分析する手法であれば、観測地点ごとに分析結果が格納され、分析手法が複数の観測地点から成るエリアごとに分析する手法であれば、エリアごとに分析結果が格納される。また、分析手法が曜日ごと、又は時刻ごとに分析する手法であれば、曜日ごと、又は時刻ごとに分析結果が格納される。曜日ごと、又は時刻ごとといった周期のモデルとする場合、ある一つの観測地点又はエリアについての曜日ごと、又は時刻ごとのモデルであればよい。これらの分析結果のモデルは通常時変動分析処理のフラグがたつごとに更新される。このとき。過去の分析結果のモデルを利用する必要がなければ、分析結果のモデルは更新時に上書きされる。なお、モデルには、いずれの対象範囲を示すかを識別するためのモデルIDが付与される。以下の処理では、分析結果DB122に格納されたモデルを用いる。
【0029】
フラグDB123は、残差抽出部142から出力される通常時変動分析処理を実施するモデルのフラグを格納するためのデータベースである。格納されるフラグは、更新する必要の有無を表す2値であり、例えば更新の必要がある場合には1、必要がない場合には0などといった値である。このフラグの格納領域は、モデルIDごとに用意する。つまり,分析手法が地点ごとに時系列データを分析する手法であれば、観測地点のモデルごとにフラグを格納し、分析手法が複数の観測地点から成るエリアごとに分析する手法であれば、エリアのモデルごとにフラグが格納される。
【0030】
変動分析部130は、フラグDB123に登録されたフラグを参照し、更新対象とするフラグが立っているモデルを更新する。変動分析部130は、観測DB121に記憶された、当該モデルの対象範囲に対応する観測値の各々を用いて、当該モデルの対象範囲の変動を分析することにより当該モデルを更新する。変動分析部130は、分析結果DB122の当該モデルを更新する。モデルの変動の分析は、通常時の変動を分析する処理である。分析の入力は、時空間データの観測値をそのまま使う場合のほかに、前の時刻とのp階差分(pは正の整数値)を使う場合、移動平均を使う場合、又は正規化を行った場合など、一般的に利用されている前処理を施した時空間データの利用が考えられる。また、予め時空間データに時間的周期性が見られる場合には、同じ周期の時空間データごと、例えば同じ曜日ごと、又は同じ時刻ごとに分けて分析を行うことも考えられる。分析手法は、自己回帰モデル(AR)、ロジスティック回帰などの時系列データに対する任意の回帰手法を用いる。また、ベクトル自己回帰モデル(VAR)、状態空間モデル、ガウス過程回帰、又はRNN(Recurrent Neural Network)などの時空間データに対する様々な回帰手法を用いてよい。変動分析部130は、モデルの分析完了後、フラグDB123の更新したモデルのフラグを削除する。変動分析部130における処理の詳細は、作用の説明において後述する。なお、予測装置100の初期状態では、変動分析部130の処理を全てのモデルについて少なくとも1回実行して、モデルの各々を生成して分析結果DB122に格納しておく。
【0031】
このように、予測装置10では、変動分析部130の通常時変動分析処理で更新された分析結果のモデルを用いて、予測部140の予測処理を行うため、通常時の変動について、効率よく予測値を求められる。
【0032】
通常予測部141は、所定の期間に観測された、時空間データの各々と、対象範囲ごとの、モデルの各々とに基づいて、モデルの各々の対象範囲についての第一予測値を予測する。例えば、通常予測部141は、分析結果DB122に格納されているモデルを用いて、予測対象となる時刻tの予測を行う。詳細については作用の説明で後述する。
【0033】
残差抽出部142は、時空間データの各々と、モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応するモデルとの残差により、閾値以上の残差である時空間データを時空間残差データとして抽出する。また、残差が閾値以上であるモデルを更新対象とするフラグをフラグDB123に登録する。
【0034】
残差抽出部142では、例えば、分析結果DB122に格納されているモデルを、直近の期間の時空間データに当てはめ、観測された時空間データとモデルとの残差を算出する。モデルを当てはめる期間は、残差予測部143の予測手法に対して十分な期間を設定する。ここで全体の残差が大きい場合、フラグDB123の全体のモデルにフラグを立てる。また、フラグを立てる判断はモデル単位で実施する。モデル個別にフラグを立てる判断基準としては、残差の絶対値の総和が閾値を超える場合にフラグを立てるといった方法、又は残差の絶対値のうち、最も大きい値が閾値を越えるといった方法が考えられる。また残差抽出部142では、再分析のためのフラグを立てるほかに、残差予測部143の扱うデータ量を減らすためのデータの剪定処理を行って時空間残差データを抽出する。この剪定処理では、通常時変動分析処理によって得られているモデルによってその変動がほぼ説明できてしまう観測地点を特定し、その観測地点のデータを取り除いた時空間残差データを抽出してデータ量の削減を行う。剪定基準は、残差の絶対値の最大値が閾値を下回る時空間データを取り除く、残差の絶対値の総和が閾地を下回る時空間データを取り除く、といった方法が考えられる。つまり、時空間残差データは、突発的な変動を捉える必要がある範囲の観測地点に絞られた時空間データの集合である。詳細については作用の説明で後述する。
【0035】
残差予測部143は、残差抽出部142で抽出した時空間残差データに基づいて、予め定められた予測手法に従って、時空間残差データで予測可能な範囲についての第二予測値を予測する。残差予測部143で用いる予測手法として、VAR、縮小ランク回帰、ガウス過程回帰、又は特許文献1で用いているような時空間データを対象とした様々な予測手法のうちの任意の予測手法を用いればよい。用いる予測手法によっては、空間内挿を行うことで、剪定で除外した観測地点の第二予測値も出力できるが、剪定で除外された観測地点の第二予測値はなくてもよい。詳細については作用の説明で後述する。
【0036】
合成部144は、通常予測部141で予測された第一予測値と、残差予測部143で予測された第二予測値とを合成した予測値を出力する。
【0037】
次に、予測装置100の作用について説明する。まず、予測処理について説明する。
【0038】
図4は、予測装置100による予測処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から予測プログラムを読み出して、RAM13に展開して実行することにより、予測処理が行なわれる。予測装置100は、入力として、所定の期間に観測された直近の時空間データの各々を受け付けて、入力部110により観測DB121に格納したうえで以下の処理を行う。なお、予め通常時変動分析処理が少なくとも1回は全てのモデルについて行われて、分析結果DB122のモデルの各々が得られているとする。
【0039】
ステップS100で、CPU11は、観測DB121から、直近の期間τの時空間データを抽出する。なお、当該ステップS100の処理は、通常予測部141としての処理である。
【0040】
ステップS102で、CPU11は、所定の期間に観測された、時空間データの各々と、対象範囲ごとの、モデルの各々とに基づいて、モデルの各々の対象範囲についての第一予測値を予測する。以下に、詳細を説明する。
【0041】
具体的には、当該ステップS102では、ステップS100で抽出した期間τの時空間データの各々について、最新の時刻をt、曜日をjとし、分析結果DB122のモデルを適用する。本実施形態では、通常時変動分析処理で、クラスタリング手法を用いて、観測地点ごと、曜日ごと、時刻ごとに、期間Tの範囲を持つ、通常時の変動を予測するためのモデルが生成された場合について述べる。モデルを適用する観測地点をiとし観測地点iの直近の期間τの時空間データをX,{xt-τ+1,xt-τ+2,...,xとする。予測先の時刻をtとし、分析結果DB122から、観測地点i、曜日j、及び時刻tのクラスタごとの分析結果である以下のモデルVを抽出する。
【0042】
【0043】
上記のように、モデルVは、観測地点i(i∈I)、曜日j(j∈J)、及び時刻t(t∈T)のクラスタcについての対象範囲で表される。つまり、モデルの各々は、クラスタc∈C(c∈C:Cは全てのクラスタ)のモデルである。この場合、期間τに対応した対象範囲の曜日j、及び時刻tに対応するクラスタcのモデルを抽出してくればよい。以下、対象範囲となるモデルを表す添え字t、i、及びjは簡易的にmと表示し、抽出されたクラスタごとの分析結果であるモデルVは以下のように表す。
【0044】
【0045】
次に、クラスタごとにモデルを時空間データに適用し、時空間データとモデルとの残差が最も小さくなるモデルを選択する。つまり、クラスタと時空間データとの残差をとる。各クラスタの残差d(Xt,i,w ,Vm,c)は、Σa|x-wa,m,c|、又はΣa(x-wa,m,cなどで求める。そして、残差d(Xt,i,w ,Vm,c)が最も小さくなるクラスタcを尤もらしいクラスタ、すなわちモデルとして選択する。ここで、a={t-T+1,t-T+2,...,t}であり、aはモデルの持つ最も古い時刻からデータの持つ最も新しい時刻tまでの時刻集合である。wはVm,cの各要素に一律にかかるスケールを調整するための重みを表すスカラー値である。w は残差d(Xt,i,w ,Vm,c)が最も小さくなる値である。ただし、計算処理時間を抑えたい場合には、この重みwを使用しなくてもよい。以上のようにしてモデルとデータとの残差d(Xt,i,w c*,Vm,c*)が求まる。モデルを選択する処理は、期間τの時空間データに含まれる全ての観測地点iについて行う。当該ステップS102では、導出された、時空間データに適用された通常時の変動を予測するために選択するモデルをw m,c*(実際はcの上付きの*であり、以下同様の表記とする)とする。モデルw m,c*を用いて、予測先の時刻tの通常時の変動を予測する。予測により、観測地点i、曜日j、及び予測先の時刻tの第一予測値が求まる。本実施形態では、モデルw m,c*に含まれる以下を第一予測値として利用する。
【0046】
【0047】
以上が当該ステップS102の処理の詳細である。
【0048】
ステップS104で、CPU11は、モデルの各々について、更新対象のフラグを立てるか否かを判断し、フラグを立てるモデルがある場合にはステップS106へ移行し、フラグを立てるモデルがない場合にはステップS108へ移行する。ここでは、ステップS102で求めた残差に基づいて、残差が第一閾値以上のモデルについて、通常時変動分析処理の再実行が必要であると判断してフラグを立てると判断する。この判断は分析結果DB122に格納されているモデルごとに行う。判断の基準は、例えば、モデルとデータとの残差d(Xt,i,w c*,Vm,c*)が第一閾値以上であるかで行う。また、残差ベクトルの総和でなく、以下の残差ベクトル要素の最大値max(|x-wa,m,c*|)が第一閾値を上回るかどうかを基準としてもよい。
【0049】
ステップS106で、CPU11は、残差が第一閾値以上であるモデルを更新対象とするフラグをフラグDB123に登録する。例えば、フラグDB123の当該モデルのフラグを1にする。
【0050】
ステップS108で、CPU11は、時空間データの各々と、モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応するモデルとの残差を求め、第二閾値以上の残差である時空間データを時空間残差データとして抽出する。以下に、詳細を説明する。
【0051】
当該ステップS108の処理は、次のステップS110の第二予測値を求めるにあたって扱うデータ量を減らすための剪定処理に相当する。剪定処理では、モデルで説明ができる観測地点の時空間データを取り除く。剪定は、各観測地点iの残差d(Xt,i,w c*,Vm,c*)が第二閾値を上回るかどうかを基準に行うことができる。また、残差ベクトルの総和でなく、残差ベクトル要素の最大値max(|x-wa,m,c*|)が第二閾値を上回るかどうかを基準としてもよい。ここでの判断基準及び第二閾値は、ステップS104の判断に用いた判断基準及び第一閾値と同じである必要はない。剪定により、期間τに含まれる時空間データのうち、残差が第二閾値未満であった観測地点iについての時空間データを除外し、残った第二閾値以上であった観測地点iについての時空間データの集合を時空間残差データとする。
【0052】
ステップS110で、CPU11は、ステップS108で抽出した時空間残差データに基づいて、予め定められた予測手法に従って、時空間残差データで予測可能な範囲についての第二予測値を予測する。時空間残差データで予測可能な範囲とは、時空間残差データに含まれる観測地点の各々である。予測手法は上述した予測手法のうちの任意の手法を用いればよい。
【0053】
ステップS112で、CPU11は、ステップS102で予測された第一予測値と、ステップS110で予測された第二予測値とを合成した予測値を出力して処理を終了する。本実施形態では、第二予測値が存在する観測地点ごとに、第一予測値及び第二予測値を足し合わせることで合成を行い、最終的な観測地点ごとの予測先の時刻tの予測値を求めて出力する。第二予測値が存在しない観測地点の予測値は、第一予測値がそのまま当該観測地点の予測値となる。
【0054】
次に、通常時変動分析処理について説明する。通常時変動分析処理は定期的、又は時空間データを受け付けるたびに実行すればよい。図5は、予測装置100による通常時変動分析処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14から予測プログラムを読み出して、RAM13に展開して実行することにより、通常時変動分析処理が行なわれる。
【0055】
ステップS200で、CPU11は、フラグDB123を参照し、更新対象とするフラグが立っているモデルがあるか否かを確認する。フラグが立っているモデルがある場合は、ステップS202に移行し、フラグが立っているモデルがない場合には、処理を終了する。以下のステップの処理はフラグが立っているモデルの各々について行う。
【0056】
ステップS202で、CPU11は、観測DB121に記憶された、当該モデルの対象範囲に対応する観測値の各々を用いて、当該モデルの対象範囲の変動を分析することにより当該モデルを更新する。以下に、詳細を説明する。
【0057】
当該ステップS202の処理は次の(1)及び(2)の処理に分けられる。(1)では、まず、変動の分析を行う対象範囲の時空間データを観測DB121から抽出する。本実施形態では、観測地点ごと、曜日ごと、時刻ごとに、期間Tの範囲を持つモデルを生成又は更新する方法を述べる。観測地点i、曜日j,時刻k(k∈K)のモデルを生成するために、観測DB121から観測地点i、曜日jの時刻kを含む期間Tの時刻{k-T+1,k-T+2,…,k}の時空間データの観測値を抽出する。Iは観測DB121に含まれる全ての観測地点、Jは観測DB121に含まれる全ての曜日、Kは観測DB121に含まれる全ての観測時刻とする。ここでの時刻は日付を含まないため、観測DB121からは期間Tの観測値のデータセットが複数日分抽出される。抽出したデータセットを用いて次の(2)の処理を行う。
【0058】
(2)では、抽出したデータセットをもとにモデルの構築を行う。モデル生成のための手法には、時系列回帰の様々な手法を利用できる。また、抽出できるデータ数が少ない場合には、抽出したデータセットそのものをモデルとしてもよいが、本実施形態ではクラスタリング手法を用いる場合について述べる。(1)で抽出した期間Tを持つ複数のデータに対しクラスタリング手法を適用し、類似するデータをクラスタにまとめる。ここでのクラスタリング手法は,k-means、又はx-meansなどが利用できる。期間Tが長く、一つのデータに含まれる要素が多い場合には、クラスタリングを行う前に主成分分析などによって次元数を減らしてもよい。出力された各クラスタのセントロイドの値又はクラスタの平均値をモデルとして、分析結果DB122に格納する。クラスタcは、観測地点i、及び曜日jの時刻kの組についての分析結果のモデルである。モデルはクラスタcセントロイドの値又は平均値のベクトル{vk-T+1,vk-T+2,...,vk,i,j,cであり、更新した全てのクラスタ分のモデルを格納する。以上のように、更新対象のモデルだけを更新すれば、再学習の効率を高められる。
【0059】
ステップS204で、CPU11は、更新対象とするフラグを削除する。例えば、更新したモデルについて、フラグDB123のモデルのフラグを0にする。
【0060】
以上説明したように本実施形態の予測装置100によれば、通常時とは異なる変動を含む時空間データに対する予測を、計算負荷を抑えつつ行うことができる。
【0061】
なお、変動分析部130で行う通常時変動分析処理を別装置において実行するようにしてもよい。その場合には、予測装置100は、記憶部120と、予測部140とを含んで構成される。また、モデルは、別装置からフラグDB123を参照して、分析結果DB122のモデルを更新すればよい。
【0062】
なお、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した予測処理及び通常時変動分析処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、予測処理及び通常時変動分析処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0063】
また、上記各実施形態では、予測プログラムがストレージ14に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0064】
以上の実施形態に関し、更に以下の付記を開示する。
【0065】
(付記項1)
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
所定の期間に観測された、観測地点及び観測時刻ごとの観測値を含む時空間データの各々と、観測地点及び周期の少なくとも一方について定められた対象範囲ごとの、前記時空間データの変動を予測するためのモデルの各々とに基づいて、前記モデルの各々の前記対象範囲についての第一予測値を予測し、
前記時空間データの各々と、前記モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応する前記モデルとの残差により、閾値以上の残差である前記時空間データを時空間残差データとして抽出し、
前記時空間残差データに基づいて、予め定められた予測手法に従って、前記時空間残差データに対応する前記対象範囲についての第二予測値を予測し、
前記第一予測値と前記第二予測値とを合成した予測値を出力する、
ように構成されている予測装置。
【0066】
(付記項2)
所定の期間に観測された、観測地点及び観測時刻ごとの観測値を含む時空間データの各々と、観測地点及び周期の少なくとも一方について定められた対象範囲ごとの、前記時空間データの変動を予測するためのモデルの各々とに基づいて、前記モデルの各々の前記対象範囲についての第一予測値を予測し、
前記時空間データの各々と、前記モデルの各々とに基づいて、観測された前記時空間データの各々と、当該時空間データに対応する前記モデルとの残差により、閾値以上の残差である前記時空間データを時空間残差データとして抽出し、
前記時空間残差データに基づいて、予め定められた予測手法に従って、前記時空間残差データに対応する前記対象範囲についての第二予測値を予測し、
前記第一予測値と前記第二予測値とを合成した予測値を出力する、
ことをコンピュータに実行させる予測プログラムを記憶した非一時的記憶媒体。
【符号の説明】
【0067】
100 予測装置
110 入力部
120 記憶部
130 変動分析部
140 予測部
141 通常予測部
142 残差抽出部
143 残差予測部
144 合成部
121 観測DB
122 分析結果DB
123 フラグDB
図1
図2
図3
図4
図5