(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-21
(45)【発行日】2024-05-29
(54)【発明の名称】予測装置、予測方法およびプログラム
(51)【国際特許分類】
G06N 7/00 20230101AFI20240522BHJP
G06N 20/00 20190101ALI20240522BHJP
【FI】
G06N7/00
G06N20/00
(21)【出願番号】P 2022543309
(86)(22)【出願日】2021-06-30
(86)【国際出願番号】 JP2021024653
(87)【国際公開番号】W WO2022038905
(87)【国際公開日】2022-02-24
【審査請求日】2023-02-13
(31)【優先権主張番号】P 2020139168
(32)【優先日】2020-08-20
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】504176911
【氏名又は名称】国立大学法人大阪大学
(74)【代理人】
【識別番号】110000970
【氏名又は名称】弁理士法人 楓国際特許事務所
(72)【発明者】
【氏名】川畑 光希
(72)【発明者】
【氏名】櫻井 靖子
(72)【発明者】
【氏名】本田 祟人
(72)【発明者】
【氏名】櫻井 保志
【審査官】渡辺 順哉
(56)【参考文献】
【文献】国際公開第2018/012487(WO,A1)
【文献】特開2016-045917(JP,A)
【文献】松原 靖子 ほか,大規模データストリームの将来予測アルゴリズム,情報処理学会論文誌,日本,情報処理学会,2016年12月22日,Vol.9, No.4,pp.32-45,ISSN 1882-7799
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
(57)【特許請求の範囲】
【請求項1】
多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測装置において、
非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備え、
前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1のデータおよび季節強度を表す潜在的な第2のデータに変換して出力するもので、
前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とする予測装置。
【請求項2】
モデルパラメータ推定手段を備え、
前記モデルパラメータ推定手段は、前記第1、第2の推定データの加算結果と前記カレントウインドウの時系列データとの差分を最小化するべく、前記非線形変換部及び前記第1、第2の観測行列のパラメータ及び前記季節性設定部の設定内容を調整する請求項1に記載の予測装置。
【請求項3】
前記多次元がd次元の場合に、前記非線形変換部は、前記トレンドに関わるkz次元分の時系列データと、前記季節強度に関わるkv次元分の時系列データの合わせてk次元(<d)分が入力及び出力される請求項1又は2に記載の予測装置。
【請求項4】
前記非線形変換部は、2次元の行列Aと3次元のテンソル行列Bとが直接に接続されたものである請求項1~3のいずれかに記載の予測装置。
【請求項5】
前記時系列データは、キーワードと、位置と、経時情報とで構成され、
前記第1、第2の観測行列を、少なくとも位置に関して複数のレジームに分割するレジーム更新手段を備えた請求項1~4のいずれかに記載の予測装置。
【請求項6】
前記レジーム更新手段は、元のレジームモデルと新たなレジームモデルに対して、最小記述長の原則によりモデルの記述コストとデータのエンコードコストの合計の大小比較を行い、新たなレジームモデルのコストが低い場合、レジームモデルを追加登録する請求項5に記載の予測装置。
【請求項7】
多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測方法において、
非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備え、
前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1のデータおよび季節強度を表す潜在的な第2のデータに変換して出力し、
前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とする予測方法。
【請求項8】
コンピュータを、請求項1~6のいずれかに記載の予測装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データストリーム中の一部のカレントウインドウを用いて将来に対するイベントをリアルタイムで予測する予測技術に関する。
【背景技術】
【0002】
今日、大量のタイムスタンプ付きデータが、IoTやWebアクセス履歴など、多くの高度なテクノロジとサービスによって生成および収集されている。マーケティング、その他データサイエンスおよびエンジニアリングに対する最も基本的な要請の1つは、収集されたデータから、人間が介入することなくリアルタイムで予測乃至長期予測などの、大きな時系列データストリームの効率的で効果的な分析を可能にすることである。
【0003】
特許文献1、非特許文献1には、時系列データの解析を通してイベント値をリアルタイムで予測する方法、装置が提案されている。これらの文献には、レジーム更新手段によって、時系列データストリーム内のカレントウインドウにおけるデータと、パラメータ集合を適用して特定される数理モデルを用いて得られるカレントウインドウのイベント値との差分を小さくする処理を行って数理モデルを決定し、予測手段によって、決定された数理モデルを用いて将来へのイベント値を出力することで予測を可能にする予測装置が記載されている。この予測装置は、特に、適応型非線形動的システムを用いることにより、時系列データストリーム中から重要な特徴や潜在的なトレンドを発見し、将来の時系列予測を長期的かつ継続的に行うようにしている。
【0004】
これらの文献では、大規模な時系列データストリームが与えられたとき、その潜在的なパターンを、非線形要素を含んだ数理モデルにより表現している。そして、これらの文献では、非線形パラメータ以外のパラメータ(例えば初期値など)を変更した非線形動的システムを用いて、非線形要素による潜在的なパターンの表現を維持しながら適応させて、実世界におけるデータストリームを使って精度良くイベント予測することを可能にする。すなわち、時系列データストリームでの時系列パターンをレジームとし、イベントストリーム上でのレジームシフトを利用することにより、予測精度を向上させる。特に、時系列データを適応型非線形動的システムとして表現することにより、複雑な時系列パターンを柔軟に表現可能にした。そして、この適応型非線形動的システムを用いることにより予測精度を向上させる。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【文献】松原康子,櫻井保志,Christos Faloutsos、「大規模時系列データからの特徴自動抽出」,DEIM Forum 2014 D4-2.
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1、非特許文献1に記載の予測方法乃至装置は、適応型非線形動的システムを導入し、大規模データストリームが与えられたとき、それらの中から重要な特徴や潜在的なトレンドを発見し、長期的かつ継続的に将来の時系列予測を行い得るが、非線形動的システムの適応範囲が制限的である。また用途等に応じて、より柔軟性を持たせることで、より高精度かつ処理性能について改善する余地があり得る。
【0008】
ところで、時系列データの分析アプローチとして、従来、HiddenMarkovモデル(HMM)および他の動的統計モデル、またベイジアンネットワーク(BN)の確率モデルが知られている。しかしながら、これらのアプローチは確率論的で、また離散的であるため、動的で継続的な活動を記述したり、将来の動的パターンを予測したりすることはできない。さらに、pHMMとAutoPlaitは、HMMに基づいており、シーケンスのダイナミクスを捉えてセグメンテーションを実行する機能を持っているが、長期間の非線形進化を捉えるようには設計されていない。また、SMiLerやF4のようなデータ駆動型の非線形予測手法は、解釈が困難で、ストリーム内の動的パターンをモデル化することができない結果を提供する傾向がある。
【0009】
さらに、伝統的なモデリングと予測のアプローチは、通常、自己回帰積分移動平均(ARIMA)、線形動的システム(LDS)、カルマンフィルター(KF)、およびAWSOM、TBATS、LiF、TriMineなどを含むそれらの派生物などの線形法を使用している。これらの方法は基本的に適用には不適切である。それらはすべて線形方程式に基づいているため、非線形方程式によって支配されるデータをモデル化することはできない。同様に、スイッチング状態空間モデル、およびスイッチングカルマンフィルタ(SKF)モデルは、隠れマルコフモデルと線形力学系のセットの組み合わせとして設計されている。これらは、時系列で複数の異なるパターンを処理できるが、動的な空間遷移を捉えることを目的としていない。したがって、複数のレジーム間の連続的かつ決定論的な行動をモデル化することはできない。また、RegimeCastは、イベントストリームのリアルタイム予測に焦点を当てているが、レジームの識別とセグメンテーションを実行することを意図しておらず、また異なる動的パターン間のシフトを捉えることができない。
【0010】
一方、ディープラーニングは、データ分析タスクにおいて最も一般的な方法論の1つになったが、予測処理に関しては高速化できていない。リカレントニューラルネットワーク(RNN)は、長距離依存性のモデル化において困難に遭遇している。長期短期記憶(LSTM)およびゲート反復ユニット(GRU)は、前記の問題を軽減するが、すべてのDNN変形はデータストリーム解析のために高い計算コスト、特にトレーニングコストを必要とし、しかもリアルタイムで予測するのは困難である。加えて、それらのほとんどは敏感なパラメータ調整を必要としている。このように、既存の方法のいずれも、データストリームにおける複数パターンの共進化の非線形力学のモデリングおよび予測に特に焦点を当てたものではない。
【0011】
本発明は、上記に鑑みてなされたもので、効果的で、予想精度の高い予測装置、予測方法およびプログラムを提供するものである。
【課題を解決するための手段】
【0012】
例えばWeb検索アクティビティに関連するユーザの行動分析を検討する場合、観測は(タイムスタンプ、場所、キーワード)という形式であり、3次元テンソルとも呼ばれている。したがって、テンソルストリームの多方向マイニングが必要であった。このような大きなテンソルストリームが与えられた場合、複雑なテンソルから有益なダイナミクスの抽出、また将来の活動の効果的な予測について検討する必要がある。
【0013】
テンソルストリームの予測に関わる問題には、次の2つの原因がある。(a)観測可能なデータの背後にある複数の要因、すなわち多くの時系列データには、傾向(トレンド)や季節性などのいくつかのパターンが含まれている。また、その真の特徴を事前に知ることはできない。さらに重要なことは、そのような動的パターンは、例えば場所、製品カテゴリなどによっていくつかのグループに個別に表われるが、このようなパターンに適切なモデルを手動で設計することは非常に困難である。したがって、テンソルストリームの方法は、数理モデルのパラメータの推定と隠れた動的パターンの数に関して完全に自動化されている必要がある。これにより、データ構造を理解できるため、時間と人的リソースを節約できる。(b)時間とともに変化するパターン、すなわち時系列のすべての要素は、新しい製品のリリースなど、さまざまな理由のいずれかによって時間が経過すると変化する可能性がある。傾向(トレンド)および季節性だけでなく、その動的な変化も理解することが重要である。個々のパターングループをレジームと呼び、その変化を検出し、数理モデル内の最新情報をできるだけ早く反映して、高精度の適応テンソル予測を実現することが好ましい。
【0014】
テンソルストリームのリアルタイム予測という難題に取り組み、時間の経過に伴う傾向と季節性、およびテンソルストリームの複数の離散パターンを同時にキャプチャする手法乃至装置として、本発明に係る予測方法および装置(CubeCast)を提案する。
【0015】
すなわち、本発明に係る予測装置は、多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測装置において、非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備える。前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータに変換して出力する。前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とするものである。
【0016】
また、本発明に係る予測方法は、多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測方法において、非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備える。前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータに変換して出力し、前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とするものである。
【0017】
また、本発明係るプログラムは、コンピュータを、前記のいずれかに記載の予測装置として機能させるためのものである。
【0018】
これらの発明によれば、カレントウインドウのうちトレンドに関わる一部の次元の時系列データ、および季節強度に関わる一部の次元の時系列データから、非線形変換部として例えば微分方程式からなる適応型非線形動的システムなどを採用することで、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータを抽出、すなわち変換生成する。そして、第1のデータは第1の観測行列によって元の次元数の第1の推定データに再現され、第2のデータは季節性設定部に設定された季節性情報を用いて、第2の観測行列によって元の次元数の第2の推定データに再現され、第1、第2の推定データは加算される。従って、時系列データから潜在的なトレンド、季節性を抽出し、これらのデータのモデルで元の事例列データを推定するように再現する。予測は、このときのモデルによって行われるので、効果的かつ高精度で行われる。
【発明の効果】
【0019】
本発明によれば、効果的で、精度の高い予測装置、予測方法およびプログラムを提供することができる。
【図面の簡単な説明】
【0020】
【
図1】テンソルストリームXの構成を示すイメージ図である。
【
図2】テンソルストリームXのカレントウインドウX
cと予測ウインドウX
fとの関係を示すイメージ図である。
【
図3】本発明に係る予測装置の第1実施形態を示す構成図である。
【
図4】カレントウインドウX
cに基づいて最適の数理モデルを得、それに従ってlsステップ先のイベント予測を行う処理の流れを示すイメージ図である。
【
図5】d次元の時系列データをk次元(<d)の非線形潜在ダイナミクスにモデル化する非線形動的システムの一部構成図である。
【
図6】モデル化された潜在情報を元のd次元の情報に復元する非線形動的システムの一部構成図である。
【
図7】
図5の構成図に付加され、d次元の時系列データをk次元(<d)の潜在的な季節強度にモデル化する非線形動的システムを含む一部構成図である。
【
図8】モデル化された潜在的な季節強度及び潜在的な季節性を元のd次元の情報に復元する非線形動的システムの一部構成図である。
【
図9】非線形動的システムの復元部の構成図である。
【
図11】レジームの種類とレジーム割り当ての関係の一例を説明する図である。
【
図12】レジームのグループ化を説明する図である。
【
図13】Google(登録商標)Trendsの5つのアパレル企業に対するCubeCastのフィッティング結果(9か国の結果)を示す図である。
【
図14】CubeCast及び比較例手法における平均予測精度を示す図である。
【
図15】Google(登録商標)Trends及び比較例手法における平均ウォールクロック時間を示す図である。
【
図16】CubeCastにおける平均ウォールクロック時間とテンソルストリームのサイズ、すなわち(A)期間(tc)と、(B)国の数(dl)との関係を示す図である。
【
図17】CubeCastと比較例手法との機能の有無を示す図である。
【発明を実施するための形態】
【0021】
時間発展の情報を含むような時系列データの多くは、テンソルとして表現することができ、より具体的には、数1および
図1、
図2で示す。
【0022】
【0023】
すなわち、本発明に係る予測装置(以下、CubeCastといい、
図3で後述する。)は、以下の課題を解決する。すなわち、
図1に示すように、例えばWebアクセス履歴は、縦軸方向をKeywordとし、横軸方向を位置(Location)とした箱形をイメージし、この箱形が時系列方向の時点(Time)tcに沿って生成されることで、3次元のテンソルストリームとなっている。なお、位置の情報は、1時点tcごとに複数(例えば3個)の箱形分のアクセス情報を受け付けることで、
図1の右方向、すなわち将来方向に向けて順次蓄積される。右端の3個の箱形は、予測された将来の予測情報をイメージ的に示している。
【0024】
また、数1および
図2に示すように、キーワードdkの位置dlの要素で構成される現在の時点tcまでの時系列データであるテンソルストリームXが与えられると、すなわち、X = {x
tij}
tc、dl、dk
t,i,j=1が与えられると、後述するように、(a)傾向(トレンド)と季節パターンを見つけ、(b)同様のダイナミクスのグループのパターン(レジーム)を見つけ、(c)lsステップ先(将来)の予測値、すなわち、X
f = {x
tij}を生成する。ここで、t = tc + ls; i = 1,…,dl; j = 1,…,dk。なお、数式に使用する文字の一部は、本文章中では、標準形式で表記している。
【0025】
次に、表1に、CubeCastで使用する主な記号の一覧を示す。
【0026】
【0027】
テンソルストリームXを3次元テンソルと見なす。これは、X∈R
tc×dl×dkで表される。ここで、tcは時点の数、dlとdkはそれぞれ場所とキーワードの数を示す。要素x
tijは、j番目のキーワードのi番目の位置の時点tでの検索ボリュームに対応する。全体的な目的は、最新の傾向に適応しながらテンソルXの長期予測を実現することである。また、
図2に示すように、Xの部分テンソルとして、X
c = {x
tij}
tc,dl,dk
t,i,j = tp,1,1をカレントウインドウとして定義する。その長さはlcで表される。すなわち、tp = tc - lcである。lcは、CubeCastが保持するデータ期間を示す。
【0028】
【0029】
そして、数2および
図2に示すように、lsステップ先の予測について、与えられたデータストリームのX
cは、{x
tij}
te,dl,dk
t,i,j = ts,1,1であり、ts = tc + lsからte = ts + leまでの部分テンソルを示し、予測ウインドウという。ここでは、予測する時点とレポートの定期的な時間間隔として、それぞれlsとleを定義する。
【0030】
CubeCastは、前記したすべてのコンポーネントをキャプチャするために、テンソルストリームの基礎となる潜在的な動的パターンをモデル化する完全なモデルである。
【0031】
図3は、本発明に係る予測装置100(CubeCast)の第1実施形態を示す構成図である。CubeCastは、プロセッサ(CPU)を備える演算部1、演算部1に接続されるプログラム記憶部101、データストリーム記憶部102、カレントウインドウ記憶部103、およびパラメータ集合記憶部104を備える。演算部1は、さらに、モデルパラメータ推定部10、レジーム更新部20、レジーム追加部30、および予測部40を備える。また、演算部1には、予測結果を表示する表示部50を備える。なお、表示部50はタッチパネルで構成され、ユーザ側からの所定の指示入力を受け付け可能な態様でもよい。ユーザ入力用としてキーボードなどの公知の操作部を備えてもよい。以下、各構成を説明し、より詳細は以降の対応する図面を用いて説明する。
【0032】
プログラム記憶部101は、CubeCastが実行する処理プログラム(後述のアルゴリズムなど)を記憶する。なお、アルゴリズムは、メインメモリ(図略)に読み出されてプロセッサで実行されることで、演算部1の各部10~40として機能する。データストリーム記憶部102は、検索データを記憶するもので、カレントウインドウXcより古い期間のデータは必要に応じて再生可能に圧縮されている。カレントウインドウ記憶部103は、カレントウインドウXc期間の時系列データを時点tcごとに更新記憶する。パラメータ集合記憶部104は、時系列データから推定データを再現するための数理モデルを構築する各種のパラメータ集合を記憶する。
【0033】
モデルパラメータ推定部10は、カレントウインドウXcの時系列データが入力される非線形変換部11、潜在空間12,13、季節性設定部14、潜在空間15を備えると共に、観測行列16,17、および推定テンソル空間18を備える。なお、空間12,13,18は順次時系列のータとして記録するメモリ、あるいは説明上採用したものであってもよい。また、非線形変換部11および観測行列16,17における計算は、ソフトウエアでの演算やハードウエアによる処理のいずれでもよい。
【0034】
非線形変換部11は、後述するように、d次元で検索(検出)される時系列データに含まれる大きなトレンドをk(次元<d)で潜在的に取り出す(キャプチャ)するもので、2次元の行列Aおよび3次元のテンソル行列Bを直列接続して構成される。2次元の行列Aおよび3次元のテンソル行列Bは、それぞれ線形変換および非線形変換に対応する非線形微分方程式のパラメータで構成されるものであり、複数の非線形変換部を用意し、それらを時系列データの傾向に合わせて選択する機構を設けることで、例えば適応型非線形動的システムが適用可能となる。非線形変換部11は、
図5に示すように、時点tのデータの入力を受けて、次の時点t+1の出力を予測するものである。この構成では、非線形変換部11から出力されるトレンドに関する潜在情報が潜在空間12を介して観測行列16に導かれ、一方、非線形変換部11から出力される潜在的な季節強度vtに関する情報は潜在空間13を介して観測行列17に導かれる。また、季節性設定部14から出力される潜在的な季節性Sの情報は、潜在空間15を経て観測行列17に導かれる。観測行列17では、季節強度vtと季節性Sとが掛け合わされる。トレンドに関する潜在情報ztは、観測行列16でd次元の再現情報に変換生成される。また、d次元の季節強度vtと季節性Sとは、観測行列17でd次元の再現情報に変換生成される。観測行列16,17を経た情報は、推定テンソル空間18に出力される。
【0035】
また、観測行列16,17は、位置(例えば地域)に対して1種類ではなく、位置に関する特異性などを反映させて複数の、例えばm個の重み行列が設定され、これによりモデルを介して再現される予測情報(イベント)の精度を維持するようにしている。例えば、観測行列16では、観測行列W1,W2,…W3が設けられ、観測行列17では、対応して観測行列U1,U2,…U3が設けられている。
【0036】
レジーム更新部20は、推定テンソル空間18に再現生成された推定データとカレントウインドウXcの情報を対応させて各差分を2乗誤差として集計し、集計結果から、観測行列16,17の行列W、U、および非線形変換部11の行列Aおよびテンソルの行列Bと、潜在的な季節性Sの値とを交互に修正して、差分の集計が所定の閾値内に収まるよう、トレンドおよび季節性の両方をバランス良く調整可能にする。
【0037】
また、レジーム更新部20は、最適なモデルセット(レジーム)を自動的に検出するための自動的な評価手法として、例えば最小記述長(MDL:minimumdescription length)の原則を適用する。詳細は後述する。レジーム追加部30は、
図4のイメージ図に示すように、新たなレジームθを推定し、かつMDLによる評価を得て新レジームθとして設定された場合、このレジームθのパラメータセットがパラメータ集合記憶部104に記憶される。予測部40は、カレントウインドウX
cからの時系列データストリームに最適なレジームを適用することで、lsステップ先の予想イベントを生成する。
【0038】
続いて、CubeCastの持つ各機能乃至動作について説明する。CubeCastは、以下の3つの機能(a)~(c)を持つ。
【0039】
(a)非線形潜在ダイナミクス:CubeCastは、非線形ダイナミカルシステムを採用して、時系列で複雑なダイナミクス(トレンド)をキャプチャ、
(b)季節性:非線形動的システムを拡張して、時間とともに変化する季節性を処理、
(c)テンソルストリームの共進化パターン:テンソルストリームの時間的および位置的差異の両方を記述できる適応モデルを有する。
【0040】
(a)について:単一の位置(場所)での潜在的な非線形ダイナミクスについて:最初に最も単純なケースを考える。例えば、1か国の検索ボリュームなど、d次元の時系列が与えられた動的パターンが1つあるとする。なお、基本モデルでは、時系列に潜在的なアクティビティがあり、それらが実際に観測される時系列のふるまいを決定付けていると想定する。
【0041】
・zt:時点tでのkz次元(<d)の潜在活動
・et:時点tで観測されたd次元時系列の推定イベント
すなわち、実際の活動etは観察できるが、潜在活動ztは、非線形ダイナミクスの経時の進化を説明する観測できないベクトルである。
図5に示すように、入力データztは、非線形変換部11の行列AおよびテンソルBを介して時点t+1の潜在活動zt+1として出力される。さらに、
図6に示すように、非線形変換部11から出力された非線形ダイナミクスの潜在活動は観測行列16を経て、d次元の信号etを再帰的に生成(復元)できる。これらのアクティビティの時間依存性は、次の数3で表すことができる。
【0042】
【0043】
ここで、数3の第1式の右辺第2項の「〇中に×」の図形は、2つのベクトルの外積を示す演算子。A∈Rkz×kz、およびB∈Rkz×kz×kzは、線形/非線形の動的活動を記述する。W∈Rd×kzは、潜在活動ztから推定イベントetを取得するための観測予測を示す。
【0044】
(b)潜在的な季節変動について:基本モデルである数3を拡張して、季節/周期パターンを時系列でモデル化する。より具体的には、時間の経過とともに線形/非線形の活動と相互作用する可能性のある季節性の別の潜在的な要因を定義する。例えば、潜在的な傾向と併せて激化する季節パターンを表す。この目的のために、ここでは、さらに2つのタイプの潜在活動を想定する。
【0045】
・vt:時点tの潜在的な季節強度、すなわちvt∈Rkv
・S:潜在的な季節性、つまりS∈Rp×kv
ここで、kvは季節性の潜在空間の次元数を示し、pは季節期間を示す。
【0046】
図7は、
図5の構成に季節強度vtを反映させる構成を付加したもので、入出力側に所定次元分の信号線を配置している。例えば、ダイナミックトレンド側の潜在活動分と潜在的な季節強度分の、例えば同数を合わせてk次元(図では4次元ずつ)としている。非線形変換部11から出力された信号は、一方の4次元分は、非線形ダイナミクスの潜在活動ztであり(潜在空間12参照)、他方の4次元分は潜在的な季節強度vt(潜在空間13参照)である。そして、
図8に示すように、潜在的な季節強度vt(潜在空間13参照)と潜在的な季節性S(潜在空間15参照)とを観測行列17の行列Uで掛け合わせることで、d次元の季節性データ(潜在空間171参照)が再現され、さらに、これとトレンドデータ(潜在空間161参照)とを加算した推定ベクトルetとして再現される。したがって、数3は数4のように書き換えられる。
【0047】
【0048】
ここで、第2式中の〇は、2つのベクトルの要素ごとの積を示す演算子。AおよびBは、それぞれA∈Rk×k、およびB∈Rk×k×kに拡張される。ここで、k= kz + kvである。推定ベクトルetは、季節的潜在活動vvおよび季節性Sの観測行列U∈Rd×kv、および潜在活動ztのW∈Rd×kzで取得される。一旦、初期状態z0とv0を取得すると、単一の共通の動的システムを使用して次の時点の潜在状態を再帰的に生成できる。これにより、傾向と季節性の間の潜在的な相互作用を抽出できる。
【0049】
(c)複数の位置(場所)を持つ完全なモデルについて:位置に関して複数の異なるアクティビティがあると想定する。非線形動的システムである方程式(数4)をさらに拡張して、時間変化パターンと位置固有のパターンの両方を識別できるようにする。ここでは、3次元テンソルXがあると仮定する。具体的には、位置固有のアクティビティをキャプチャするために、テンソルを2番目のモード、つまり位置dlに沿ってm個のローカルグループのセット(m<dl)に分割する必要がある。すなわち、i番目の位置の動的パターンは、観測行列Wiと観測行列Uiのセットの1つで記述できる。ここで、i∈{1,…,m}、数4のAおよびBにより与えられる単一の空間を共有する。これにより、類似の時系列が類似の潜在的な非線形因子を共有する。
図9に示すように、観測行列Wと観測行列Uとは位置に対応してm個に分割してW1,…,Wm、U1,…,Umとして作成されている。そして、選択された観測行列Wiと観測行列Uiとを用いて、潜在空間12の潜在活動ztおよび潜在空間19の潜在季節性から、位置iに対応した推定ベクトルetが再現される。
【0050】
E∈Rtc×dl×dkを、X∈Rtc×dl×dkの推定テンソルとする。時刻tのi番目の位置の観測ベクトルxt i∈Xが、j番目の観測行列を使用してモデル化される場合、推定ベクトルet i∈Eは、次の数5のように記述される。次いで、数6に示すように、θを単一の非線形動的システムのパラメータセットとし、θ= {A、B、W、U}で表す。
【0051】
【0052】
【0053】
さらに、明確な潜在ダイナミクス間のレジーム遷移を検出する場合、nを現時点までのレジームの適切な数として示す。すなわち、
図10に示すように、テンソルXは、n個のレジームのセット、すなわち{θ1,…,θn}とし、したがって、テンソルストリームの完全なモデルセットとして、季節性のある複数の非線形パターンである完全なパラメータセットΘ= {θ1,…,θn,S}を設ける。なお、本実施形態では、潜在的な季節性Sは、レジームθの外に置いている。本モデルは、時変パターンに依存する異なるレジームθ∈Θを用いる。従って、各時刻におけるレジームの割り当てと、各レジームに属するローカルグループの割り当てを決定する必要がある。
【0054】
【0055】
RをΘの完全なレジーム割り当てセット、すなわちR = {r1,…,rn}、ri ={r1,…,rj,…,rdl}は、i番目のレジームθiの整数dlのセットである。したがって、rj∈{1,…,mi}は、j番目の位置、例えば国が属するローカルグループインデックスとなる。例えば、
図11では、レジーム数nは3であり、レジームθ1はローカルグループ数m=3、レジームθ2はローカルグループ数m=4である。そして、例えば、レジームθ1では、r1 = {1,1,2,2,3}、すなわち1,2番目の位置(例えば国)がグループ1であり、3,4番目の位置(例えば国)がグループ2であり、5番目の位置(例えば国)がグループ3を示している。
【0056】
表2は、アルゴリズム1 CubeCast (Xc , Θ, R)の処理手順を示すアルゴリズムである。
【0057】
【0058】
表2に基づいて、共進化するテンソルストリームのリアルタイム予測のための最適化アルゴリズムについて説明する。以上では、非線形力学系に基づくモデルを提案してきた。モデルを使用して将来のイベントを効果的かつ正確に予測するには、次の2つの課題に対処する必要がある。すなわち、(a)適応的にレジームを生成および切り替えながら、将来のイベントをリアルタイムで予測すること、(b)自動マイニングおよび複数の非線形ダイナミクスを推定することである。
【0059】
課題(a)に関しては、モデル構造全体を段階的に管理して、別の既知/未知のレジームへのレジームの切り替えを検出できる効果的な方法が必要となる。課題(b)に関しては、人間の介入なしにデータの基礎となるダイナミクスをキャプチャできる十分に圧縮されたモデルを決定するための基準が必要となる。CubeCastは、かかる課題(a)(b)を達成するストリーミングアルゴリズムである。表2のアルゴリズムは、CubeCastの全体的な手順を示している。アルゴリズムの基本的な考え方は、テンソルエンコーディング方式である。これは、カレントテンソルXcの処理中に、パラメータセットΘのすべてのコンポーネントを更新する。
【0060】
具体的には、アルゴリズムは次の要素(1)~(3)で構成されている。
【0061】
(1)RegimeEstimation:非線形動的システムをゼロから推定する。すなわち、カレントテンソルXcを指定してθを推定する。また、レジーム割り当てrを配置してテンソルを分割し、WとUの行列のセットをレジームθに追加する。
【0062】
(2)RegimeCompression:カレントテンソルXcと、Xcの新しく推定されたレジームθおよびレジーム割り当てrとを用いて、すべてのパラメータセットΘおよびレジーム割り当てセットRを更新する。このステップでは、アルゴリズムは新しいレジームθを使用するかどうかを決定し、Xcの最適レジームを選択する。レジーム割り当てセットRを更新した後、季節性Sも更新する。
【0063】
(3)最後に、最も適切なレジームθと、レジーム圧縮によって選択されたXcのレジーム割り当てrとを用いて、数5に従ってlsステップ先の将来のイベントテンソルEf = {etij}te,dl,dk
t,i,j = ts,1,1を算出する。
【0064】
次に、自動テンソル要約について説明する。この例では、最適なモデルセットを自動的に検出するための最小記述長(MDL:minimumdescription length)の原則に関して目的関数を説明する。MDLの原則により、数8に示すように、モデルの記述コストとデータのエンコードコストの合計を次のように最小化することで、適切な要約の性質を判断する。
【0065】
【0066】
ここで、<Θ’>は、記述するコストを表し、<X | Θ’>は、モデルΘ’を与えられたデータXを記述するコストを表す。すなわち、データを圧縮できるほど、その基礎となるパターンについてより多くを学ぶことができるという仮定に従う。したがって、本アルゴリズムでは、モデルには、互いにトレードオフの関係にある2つのコストを提案する。
【0067】
次に、モデルのコストについて説明する。検索する必要があるモデルパラメータセットのクラスは、傾向と季節性の潜在状態の数、およびレジームの数によってパラメータ化される。これらの数値を取得したら、数9に示すように、次の用語を用いてモデル全体の記述の複雑さを計算する。
【0068】
【0069】
ここで、|・|は、非ゼロ要素の数を表し、cFは、浮動小数点コストを表す。<θ>の各コンポーネントのモデル記述コストは、次の数10のように定義される。
【0070】
【0071】
次いで、データ費用について説明する。公知のハフマンコーディングに基づき、Θを用いてデータXをエンコードできる。コーディングスキームは、Xの各値にビット数を割り当てる。これは、平均μと分散σ2のガウス分布の下での負の対数尤度であり、数11で表される。
【0072】
【0073】
ここで、e
t ij∈Eは、数5で使用したx
t ij∈Xの再構成値を示す。最後に、合計エンコードコスト<X;Θ>は、
図12のように求まる。
【0074】
【0075】
続いて、レジーム推定について説明する。モデル内の相互依存成分により、数12の大域的最適解を見つけるのは困難である。すなわち、(a)潜在動的システムAおよびB、(b)WとU内の行列、および(c)季節性S、したがって最初に、貪欲なアプローチを使用して、コンポーネント(a)および(b)の最適のローカルパターンを見つけることを目指す。具体的には、テンソルXcの方程式(数12)を最小化する、Regime Estimationのアルゴリズム2を、表3のように備える。
【0076】
【0077】
表3に示すアルゴリズム2は、レジーム推定を詳細に示している。最初に、カレントテンソルXcを単一のレジームと見なす。Xcのターゲットモードで同様の次元をグループ化することにより、Xcの離散ローカルパターンを検索する。最初の目標は、最適なパラメータθ= {A、B、W、U}を推定して、季節性Sを固定して、総コスト<Xc ; S,θ,r>を最小化することである。
【0078】
図12に示すように、最初の仮定は、単一のローカルアクティビティグループ(すなわち、m = 1)、すなわち、W = {W}、U= {U}、およびすべての要素ri∈rがあり、i = 1,…,dlに値1が設定される。非線形アクティビティkzの数を推定するために、アルゴリズムは、その数を1から増やしていく一方、総コストは減少し得る。kzを使用した推定ごとに、まず、B = 0を設定し、期待値最大化(EM)アルゴリズムを使用して線形パラメータ{A、W、U}∈θのみを最適化していく。最適なkzを取得した後、公知のLevenberg-Marquardt(LM)アルゴリズムを使用して、好ましくはスパース(特許文献1参照)なテンソルBの非線形パラメータを最適化する。なお、初期状態z0およびv0もθと同時に推定される。
【0079】
次に、テンソルの側面の1つに関する差異をどのように見つけるかを説明する。場所など、豊富な属性のすべての候補の組み合わせを考慮しないように、効率的なスタックベースのアルゴリズムを提案する。W*とU*を、さらに分割できるローカルな活動候補を含むスタックとする。スタックは空ではなく、アルゴリズムはエントリ{W0、U0}をポップし、{W1,U1}と{W2,U2}を生成してローカルグループを2つに分割する。
【0080】
2つの候補ローカルグループの最初のローカルアクティビティ割り当てr*を初期化した後、次の3つの手順を繰り返して、新しいパラメータセットθ*を推定する。
【0081】
(手順1){W1、W2、U1、U2}∈θ*を更新するだけで再構成エラーを最小限に抑える。(手順2){A*、B*}∈θ*を更新することによってのみ再構成エラーを最小化し、(手順3)新しく推定されたパラメータθ*に基づいて2つの候補ローカルグループに対してのみ、r*のレジーム割り当てを再配置する。
【0082】
分割ローカルグループのi番目の、例えば国の新しい割り当てr*i∈r*は、総コスト<Xc
:,i| A,B,Wj,Uj>、j∈{1,2}を最小化するローカルグループインデックスに設定される。この代替手順により、潜在的な動的システムが、分割されたアクティビティに関してより洗練されたものになる。AとBの更新は、ローカルグループ全体のモデル品質に影響を与えるため、反復ごとにすべての行列WFとUFを使用する。最後に、新しく推定された成分θ*とr*のコーディングコストが、分割されていない成分θとrのコストよりも小さい場合、アルゴリズムは新たな候補ペアをスタックW*とU*に保存し(すなわち、m = m + 1)、後続の反復処理を行う。それ以外の場合は、W0とU0を最適なローカルグループとして使用する。
【0083】
次に、レジーム圧縮に説明する。実際のアプリケーションはいくつかの個別のフェーズで構成されている。アプローチが次の動的パターンを検出できるように、効果的で効率的な更新を可能にするRegime Compressionを採用する。主なアイデアは、Xcの総コストを削減するときに、レジームを採用/更新することである。全体的なRegime Compressionアルゴリズムはアルゴリズム3として、表4に示している。
【0084】
【0085】
カレントテンソルXcが与えられると、以前のモデルセット{Θ,R}と、Regime Estimationを使用して推定された候補レジーム{θ、r}とに基づいて最適レジームが検出される。モデルセットが与えられたときにXcの総コストを最小化し続けることを目標とする。最初に、アルゴリズムは最適なレジームθ*∈Θおよびr*∈Rを検索する。これにより、符号化コスト<Xc |S,θ*,r*>が最小化される。
【0086】
新しく推定されたθにより、Xcの総コストがθ*よりも低い場合、Θにθを追加する。これは、θが追加のパターンの適切な要約であることを示している。それ以外の場合は、θ*でXcを記述する。アルゴリズムがレジームシフトダイナミクスRを更新した後、LMアルゴリズムを使用して季節性Sと現在のレジームθ*を更新する。具体的には、1つのコンポーネントを別の、直されたコンポーネントで交互に更新する。再構成エラーを最小化する季節成分の数kvを見つけることができる。
【0087】
オンライン予測を開始する前に、季節成分の数kvと季節性Sを初期化する必要がある。したがって、独立成分分析(ICA)に基づいて2つの成分を推定する。具体的には、まずRegimeEstimationを用いてレジームθを推定する。ここで、kv = 0およびS = 0とする。次に、kv = 1,2,3,…と変えていき、総コスト< X;S,θ,r>を最小化するような適切な数を決定する。与えられたkvごとに、Xから再形成された行列X∈Rp×dに前記ICAを適用して、独立成分をSとして取得する。なお、本実施形態では、CubeCastの計算時間は、1時点あたりO(n dldk)である。ここで、nはレジームの数である。
【0088】
次に、実験について説明する。実験に用いられたデータセットのクエリ(検索キーワード)は、表5で説明している。
【0089】
【0090】
以下、実際のデータセットでのCubeCastのパフォーマンスについて説明する。本実験は、有効性、精度およびスケーラビリティの評価に関して行った。なお、本実験は、128 GBのメモリを搭載し、Linux(登録商標)を実行しているIntel XeonW-2123 3.6GHzクアッドコアCPUで行われた。
【0091】
・データセット:Google(登録商標)Trendsで6つの実際のイベントストリームを用いた。これには、2004年1月1日から2018年12月31日まで(合計14年間)の236か国のキーワードの週ごとの検索ボリュームが含まれている。なお、大量の欠損データがあったため、GDP scoresの順に上位50か国を選択した。各シーケンスの平均と分散が同じになるように値を正規化した(すなわち、zの正規化)。
【0092】
・ベースライン:時系列のモデリングと予測に下記の最新のアルゴリズムを比較例手法として採用した。
【0093】
<公知の比較例手法>
(1)RegimeCast(特許文献1参照):複数の離散非線形動的システムを使用したリアルタイム予測方法。潜在状態の数k = 4、モデル階層h = 2、モデル生成しきい値ε = 0.5・|| Xc ||を設定した。
【0094】
(2)SARIMA:時系列の季節要素を取得するための状態空間法。AICに基づいて、モデルに最適なパラメータの数を{1、2、4、8}から選択した。
【0095】
(3)MLDS:一連の潜在テンソルの各次元の多重線形射影を学習する多重線形動的システム(MLDS)。潜在テンソル{2、4}および{4、8}のランクを変化させた。
【0096】
(4)LSTM / GRU:時系列用のRNNベースのモデル。2層のLSTM / GRUを積み重ねて、それぞれ50ユニットのパーツをエンコードおよびデコード/予測した。また、出力層の接続に0.5のドロップアウト率を適用した。この学習ステップでは、Adamの最適化と早期停止を用いた。
【0097】
<実験の考察>
(1)有効性
まず、CubeCastが共進化するテンソルストリームで動的パターンとそれらの構造的変化を経時的にどのように発見したかを説明する。
図13は、表5中の「アパレル」についてのテンソルストリームにおける9か国でのCubeCastの追加の結果を示している。例えば中国のデータ中に領域(Y)で示したように、元のアクティビティは薄い線で示され、一方、推定量は太めの実線で示されている。結果は、13番目の時点(つまり、4半期分)ごとに、本手法が長さ104(つまり、2年)のテンソルX
cを保持したときに得られた。また、データセットには年ごとの季節性があると想定しているため、p = 52に設定し、2004年から2006年までのテンソルストリームで季節成分を初期化した。
【0098】
全体として、提案されたモデルは、複数の国およびキーワードの潜在的な動的パターンを正常にキャプチャした。
図13に示すように、検出された変化点は、傾向が急激に変化した箇所の近くにある。たとえば、2009年にはドイツがH&Mの最大の市場になり、そのため検索ボリュームは当時増加している。この傾向は、2008年9月に取得された。2012年8月には、中国とヨーロッパの国々で増加傾向が見られる。最近、すべての国がトレンドの成長や衰退を止めることなく季節性を維持している。本方法は入力テンソルをコンパクトなモデルに圧縮するので、Webアクティビティテンソルトレインの包括的なパターン変化を検出できた。このように、本方法は、潜在的な傾向、季節性、および類似国のグループの構造を含む動的パターンの突然の変化を段階的かつ自動的に識別できている。
【0099】
(2)正確さ
図14は、CubeCastの平均予測精度を示す図である。横軸#1~#6は、表5に示す各データセットに対応しており、棒グラフは、上部に示した本方法及び比較例手法の順番に対応している。次に、ベースラインと比較したCubeCastの予測精度を評価した。
図14は、長さ104の現在のすべてのテンソルX
cを使用して、元のテンソルと52ステップ(つまり1年)先の推定値との間の二乗平均平方根誤差(RMSE)を示している。値が小さいほど、予測精度が高いことを示している。当然のことながら、この方法は非線形ダイナミクスと季節性を同時にモデル化できるため、すべてのデータセットに対して他の時系列予測方法よりも優れている。比較例手法のRegimeCastは、複数の離散非線形ダイナミクスを処理できるが、季節的なパターンを見逃す。したがって、オンラインのWebアクティビティデータセットで将来の値をうまく予測することはできない。線形モデルは長期(つまり、複数のステップ先)の予測には適していない。
【0100】
(3)スケーラビリティ
最後に、大規模なテンソル時系列に対してCubeCastが必要とする計算時間を、比較例手法と比較して評価する。
図15は、Google(登録商標)Trendsの平均ウォールクロック時間(平均応答時間)を示す図である。横軸#1~#6は、表5に示す各データセットに対応しており、棒グラフは、上部に示した本方法及び比較例手法の順番に対応している。予想通り、この方法は計算時間の点で大幅な改善を実現した。RNN(再帰型ニューラルネットワーク)ベースのモデルはかなりの学習時間を必要とするが、CubeCastはいくつかの国のグループを含む現在のレジームを識別し、将来のイベントを迅速かつ継続的に予測できている。RegimeCastと比較例手法のSARIMAとはテンソルデータを処理できないため、テンソルを大きな行列として処理する必要があり、計算コストが高くなる。全体として、CubeCastは、テンソル系列のリアルタイム/長期予測に非常に効率的であった。また、CubeCastのスケーラビリティを詳細に評価した。
【0101】
図16は、テンソルサイズが変化したときのRegimeEstimationの平均ウォールクロック時間、すなわち6つのGoogle(登録商標)Trendsデータセットの期間と国の数を示す図である。なお、図(A)(B)の各グラフ線は、その右端に、Google(登録商標)Trendsデータセットの頭文字を表記することでそれぞれ関連付けている。提案されたスタックベースの国固有のパターン識別手順のおかげで、RegimeEstimationの複雑さは、期間と国の数の両方に直線的に比例する。その結果、CubeCastは、多面的な動的パターンマイニングに基づいて大きなテンソルストリームを予測できるという点で望ましい特性を持っていることが分かった。
【0102】
以上によれば、CubeCast(本方法)は、大規模な時間発展テンソル系列に対して、効果的で効率的な予測方法を提案した。本方法は、潜在的な非線形動的システムを抽出することにより、入力観測の基本的な傾向と季節性を認識することができる。また、本方法には、実際のGoogle(登録商標)検索ボリュームデータセットを使用した時系列予測に関して、前記の比較例手法に比べて、効果的、自動、スケーラブルという利点があることを示した。効果的とは、長期的な将来の値を予測するときに、テンソル時系列の複雑な非線形ダイナミクスを効果的にキャプチャするということである。自動とは、データの事前の知識を必要とせずに、レジーム内のすべてのコンポーネントとそれらの時間的/構造的革新を自動的に認識するということである。スケーラブルとは、CubeCastの計算時間が時系列の長さに依存しないということである。
【0103】
また、
図17は、CubeCastと比較例手法との機能の有無を示す図である。
図17に示すように、CubeCastは全ての機能を実行可能である。
【0104】
なお、本発明は、位置のグループ分けは、国別の他、地域、性別その他種々の観点から分け方が適用可能である。また、本発明は、マーケティングや消費者の購買動機付けにも適用され得る。また、本発明は、社会活動の他、自然界において時間的な周期性を含む人間活動にも適用可能である。
【0105】
以上本発明に係る予測装置は、多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測装置において、非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備える。前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータに変換して出力する。前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とすることが好ましい。
【0106】
また、本発明に係る予測方法は、多次元の時系列データの一部であるカレントウインドウを基準に所定時間後のイベントを予測する予測方法において、非線形変換のための行列を含む非線形変換部と、観測行列と、季節性設定部とを備える。前記非線形変換部は、前記カレントウインドウのうちトレンドに関わる一部の次元の時系列データと、前記カレントウインドウのうち季節強度に関わる一部の次元の時系列データとが入力されると、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータに変換して出力し、前記観測行列は、前記第1のデータを元の次元数の第1の推定データに再現する第1の観測行列と、前記第2のデータを前記季節性設定部に設定された季節性情報を用いて、元の次元数の第2の推定データに再現する第2の観測行列とを備え、前記第1、第2の観測行列の出力を加算することを特徴とすることが好ましい。
【0107】
また、本発明係るプログラムは、コンピュータを、前記のいずれかに記載の予測装置として機能させるためのものである。
【0108】
これらの発明によれば、カレントウインドウのうちトレンドに関わる一部の次元の時系列データ、および季節強度に関わる一部の次元の時系列データから、非線形変換部として例えば微分方程式からなる適応型非線形動的システムなどを採用することで、トレンドを表す潜在的な第1データおよび季節強度を表す潜在的な第2のデータを抽出、すなわち変換生成する。そして、第1のデータは第1の観測行列によって元の次元数の第1の推定データに再現され、第2のデータは季節性設定部に設定された季節性情報を用いて、第2の観測行列によって元の次元数の第2の推定データに再現され、第1、第2の推定データは加算される。従って、時系列データから潜在的なトレンド、季節性を抽出し、これらのデータのモデルで元の事例列データを推定するように再現する。予測は、このときのモデルによって行われるので、効果的かつ高精度で行われる。
【0109】
また、本発明は、モデルパラメータ推定手段を備え、前記モデルパラメータ推定手段は、前記第1、第2の推定データの加算結果と前記カレントウインドウの時系列データとの差分を最小化するべく、前記非線形変換部及び前記第1、第2の観測行列のパラメータ及び前記季節性設定部の設定内容を調整することが好ましい。この構成によれば、第1、第2の推定データの加算結果と前記カレントウインドウの時系列データとを近似させ得、このときのモデルを用いることで予測精度を高めることができる。
【0110】
また、本発明は、前記多次元がd次元の場合に、前記非線形変換部は、前記トレンドに関わるkz次元分の時系列データと、前記季節強度に関わるkv次元分の時系列データとを合わせてk次元(<d)分が入力及び出力されることが好ましい。この構成よれば、より少ない次元数で潜在的なデータがキャプチャされる。
【0111】
また、前記非線形変換部は、2次元の行列Aと3次元のテンソル行列Bとが直接に接続されることが好ましい。この構成によれば、行列Aとテンソル行列Bとでトレンドを表す潜在的な第1データに加えて季節強度を表す潜在的な第2のデータがキャプチャされる。
【0112】
また、本発明は、前記時系列データは、キーワードと、位置と、経時情報とで構成され、前記第1、第2の観測行列を、少なくとも位置に関して複数のレジームに分割するレジーム更新手段を備えたことが好ましい。この構成によれば、位置さらにはキーワードについて新たなレジームを増やすことができ、それによって予測精度の向上が図れる。なお、位置には、場所、地域、国、その他の社会的、物理的な区別を含めてもよい。
【0113】
また、前記レジーム更新手段は、元のレジームモデルと新たなレジームモデルに対して、最小記述長(MDL)の原則によりモデルの記述コストとデータのエンコードコストの合計の大小比較を行い、新たなレジームモデルのコストが低い場合、レジームモデルを追加登録することが好ましい。この構成によれば、新たなレジームの設置の可否が自動的に行われる。
【符号の説明】
【0114】
100 予測装置
1 演算部
10 モデルパラメータ推定部
11 非線形変換部
14 季節性設定部
16,17 観測行列
20 レジーム更新部
30 レジーム追加部
40 予測部
101 プログラム記憶部
102 データストリーム記憶部
103 カレントウインドウ記憶部
104 パラメータ集合記憶部