JP2005242580A - パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム - Google Patents
パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2005242580A JP2005242580A JP2004050242A JP2004050242A JP2005242580A JP 2005242580 A JP2005242580 A JP 2005242580A JP 2004050242 A JP2004050242 A JP 2004050242A JP 2004050242 A JP2004050242 A JP 2004050242A JP 2005242580 A JP2005242580 A JP 2005242580A
- Authority
- JP
- Japan
- Prior art keywords
- time series
- sample time
- data
- input
- calculated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】 入力を伴う系から得られるデータからなる時系列のパラメータを確実に推定する方法、現実に即したデータの予測を行う方法、パラメータ推定装置、データ予測装置及びコンピュータプログラムを提供する。
【解決手段】 データ予測装置(パラメータ推定装置)は、現在の標本時系列{xn }と未来の入力時系列{un }との相互相関関数を0としてデータを計算し(S2)、白色雑音{en }を生成し(S3)、{en }の分散σe 2を計算し(S4)、{un }と{en }との相互相関関数、現在の{xn }と未来の{en }との相互相関関数を0としてデータを計算し(S5)、{en }の自己相関関数をラグ0でσe 2、他のラグで0として、ARMAXモデルのパラメータを計算する(S6)。パラメータの収束を判定し(S7)、収束していない場合は新たな白色雑音を計算し(S8)、パラメータが収束するまで計算を繰り返す。
【選択図】 図2
【解決手段】 データ予測装置(パラメータ推定装置)は、現在の標本時系列{xn }と未来の入力時系列{un }との相互相関関数を0としてデータを計算し(S2)、白色雑音{en }を生成し(S3)、{en }の分散σe 2を計算し(S4)、{un }と{en }との相互相関関数、現在の{xn }と未来の{en }との相互相関関数を0としてデータを計算し(S5)、{en }の自己相関関数をラグ0でσe 2、他のラグで0として、ARMAXモデルのパラメータを計算する(S6)。パラメータの収束を判定し(S7)、収束していない場合は新たな白色雑音を計算し(S8)、パラメータが収束するまで計算を繰り返す。
【選択図】 図2
Description
本発明は、データの時系列からパラメータを推定する方法、推定されたパラメータを用いて新たなデータを予測する方法、パラメータ推定装置、データ予測装置、コンピュータをパラメータ推定装置又はデータ予測装置として実現するためのコンピュータプログラムに関する。
あるシステムから得られるデータの時系列を解析して新たなデータの値を予想する方法は、従来様々な方法が提案されている。その方法の一つとして、データの時系列を離散時間線形モデルに当てはめて解析を行い、データ間の関係を示すパラメータを推定し、推定したパラメータを用いて構成される離散時間線形モデルに基づいて新たなデータの値を予測する方法がある。離散時間線形モデルとしては、AR(Autoregressive:自己回帰)モデル又はARMA(AutoregressiveMoving Average :自己回帰移動平均)モデル等が利用されている。
データの時系列{xn :n=1,2,…}を、定常エルゴード的正規過程x(t)の標本時系列であるとすると、(p,q)次のARMAモデルは下記(1)式で表される。
ここで、{en }は、平均値0及び分散σe 2の正規性白色雑音である。また、{ai :i=1,2,…,p}及び{bj :j=1,2,…,q}はARMAモデルのパラメータである。また、{ai }及び{bj }は、下記式で与えられるA(Z-1)及びB(Z-1)が規約で夫々定常条件、可逆条件および強正実条件を満たすものとする。
A(Z-1)=1+a1 Z-1+…+ap Z-p
B(Z-1)=1+b1 Z-1+…+bq Z-q
A(Z-1)=1+a1 Z-1+…+ap Z-p
B(Z-1)=1+b1 Z-1+…+bq Z-q
標本の時系列{xn }から(1)式のパラメータ{ai}及び{bj }を推定するための方法として、疑似線形回帰法が従来用いられている。従来の疑似線形回帰法では、白色雑音{en}を乱数などを用いて生成し、生成した{en }と時系列{xn }とから、{ai}及び{bj }を計算し、計算した{ai }及び{bj}から(1)式を用いて白色雑音{en }を計算し、パラメータ{ai}及び{bj }が収束するまで計算を繰り返す。この方法によりARMAモデルのパラメータが推定される。非特許文献1には、ARMAモデルのパラメータ{ai }及び{bj }の値の収束を容易にする技術が提案されている。
以上の如きARMAモデルでは、データの時系列に含まれる一のデータの値は過去のデータの値と過去の雑音とから決定される。しかし現実には、商品の販売量のデータが気温に影響される場合などのように、システムから得られるデータがシステムへの入力に影響されていることも多い。従って、ARMAモデルでは実際の問題に対処しきれないという問題がある。
システムへの入力を考慮した離散時間線形モデルとして、ARMAX(AutoregressiveMoving Average with exogenous input:外生入力自己回帰移動平均)モデルが従来用いられている。システムから得られた複数のデータからなる標本時系列{xn:n=1,2,…}を定常エルゴード的正規過程x(t)の標本時系列であるとすると、(p,m,q)次のARMAXモデルは、下記(2)式で表される。
ここで、{en }は平均値0及び分散σe 2の正規性白色雑音であり、{un }はシステムに対する入力時系列である。また{ai :i=1,2,…,p}、{ci :i=1,2,…,m}及び{bi:i=1,2,…,q}はARMAXモデルのパラメータである。また、(2)式は定常条件を満たすとする。現代制御理論では、q≦p,m≦pとなることは周知である。以下、簡単にするためにq=m=pとして議論を進める。
ベクトルZn 及びベクトルθを下記のように定義する。
Zn =[-xn-1,…,-xn-p,un-1,…,un-p,en-1,…,en-p]T
θ=[a1,…,ap,c1,…,cp,b1,…,bp]T
(2)式をxn についての式に書き直すと、(2)式は下記(3)式で表すことができる。
xn =θT Zn+en …(3)
ベクトルZn 及びベクトルθを下記のように定義する。
Zn =[-xn-1,…,-xn-p,un-1,…,un-p,en-1,…,en-p]T
θ=[a1,…,ap,c1,…,cp,b1,…,bp]T
(2)式をxn についての式に書き直すと、(2)式は下記(3)式で表すことができる。
xn =θT Zn+en …(3)
N個のデータからなる標本時系列{xn :n=1,2,…,N}及び入力時系列{un:n=1,2,…,N}が得られたとき、ベクトルθを時系列から最小二乗法により求めるためには、(3)式から得られる下記(4)式の右辺を最小にするθを求めればよい。
従って、(4)式の右辺をθで偏微分して0に等しいとすることにより、N個のデータからなる標本時系列{xn }及び入力時系列{un }から推定したベクトルθの推定値θN は、下記(5)式で与えられる。
k≧0としてラグがkである{xn }の自己相関関数をRkとすると、自己相関関数の定義によりRk 及びR-kは下記式で表すことができる。ここで、E[yn]は、データ列{yn :n=1,2,…}の期待値である。
Rk =E[xn xn+k ], R-k=Rk
Rk =E[xn xn+k ], R-k=Rk
同様に、{un }の自己相関関数をWk とすると、Wk 及びW-kは下記式で表すことができる。
Wk =E[un un+k ], W-k=Wk
Wk =E[un un+k ], W-k=Wk
同様に、{en }の自己相関関数をSkとすると、Sk及びS-kは下記式で表すことができる。
Sk=E[en en+k ], S-k=Sk
Sk=E[en en+k ], S-k=Sk
{xn }と{en}との相互相関関数については、Tk 及びT-kを下記式で定義する。
Tk =E[en xn+k ], T-k=E[en xn-k]
このとき、{xn }と{en}との夫々の相互相関関数は下記式で表される。
E[xn en-k ]=E[enxn+k ]=Tk
E[xn en+k ]=E[en xn-k ]=T-k
Tk =E[en xn+k ], T-k=E[en xn-k]
このとき、{xn }と{en}との夫々の相互相関関数は下記式で表される。
E[xn en-k ]=E[enxn+k ]=Tk
E[xn en+k ]=E[en xn-k ]=T-k
{xn }と{un}との相互相関関数についても、Vk 及びV-kを下記式で定義する。
Vk =E[unxn+k ], V-k=E[un xn-k]
このとき、{xn }と{un}との夫々の相互相関関数は下記式で表される。
E[xn un-k ]=E[unxn+k ]=Vk
E[xn un+k ]=E[un xn-k ]=V-k
Vk =E[unxn+k ], V-k=E[un xn-k]
このとき、{xn }と{un}との夫々の相互相関関数は下記式で表される。
E[xn un-k ]=E[unxn+k ]=Vk
E[xn un+k ]=E[un xn-k ]=V-k
{un }と{en}との相互相関関数についても、Qk 及びQ-kを下記式で定義する。
Qk =E[en un+k ], Q-k=E[un en+k ]
このとき、{un }と{en}との夫々の相互相関関数は下記式で表される。
E[un en-k ]=E[enun+k ]=Qk
E[un en+k ]=E[en un-k ]=Q-k
Qk =E[en un+k ], Q-k=E[un en+k ]
このとき、{un }と{en}との夫々の相互相関関数は下記式で表される。
E[un en-k ]=E[enun+k ]=Qk
E[un en+k ]=E[en un-k ]=Q-k
ベクトルa,b,cを下記式で定義する。
a=[a1 ,a2 ,…,ap]T
b=[b1 ,b2 ,…,bp]T
c=[c1 ,c2 ,…,cp]T
a=[a1 ,a2 ,…,ap]T
b=[b1 ,b2 ,…,bp]T
c=[c1 ,c2 ,…,cp]T
(5)式においてN→∞とすると、(5)式の左辺はθN →θとなり、(5)式の右辺は{xn },{un },{en }の自己相関関数及び相互相関関数で記述できる。従って、(5)式は下記(6)式で表すことができる。
但し、R,V’,T’,W,S’,Q’はp行p列の行列であって、夫々下記(7),,(8),(9),(10),(11),(12)式で表される。また、r,v,tはp行一列の行列であって、下記(13)式で表される。
(6)式を書き直すと、下記の連立方程式が得られる。
Ra−V’c−T’b=−r …(14)
−V’T a+Wc+Q’b=v …(15)
−T’T a+Q’T c+S’b=t …(16)
この連立方程式(14)〜(16)を解くことにより、ベクトルa,b,cを計算することができる。
Ra−V’c−T’b=−r …(14)
−V’T a+Wc+Q’b=v …(15)
−T’T a+Q’T c+S’b=t …(16)
この連立方程式(14)〜(16)を解くことにより、ベクトルa,b,cを計算することができる。
疑似線形回帰法を用いてARMAXモデルのパラメータの推定値であるベクトルa,b,cを求めるためには、白色雑音{en }を乱数などを用いて生成し、生成した{en}と{xn }及び{un}とから、ベクトルa,b,cを(14)〜(16)式により計算し、計算したベクトルa,b,cから(2)式を用いて新たな白色雑音{en }を計算し、ベクトルa,b,cが収束するまで計算を繰り返す。
竹安数博、外3名,「ロバストなブートストラップ型システム同定アルゴリズム」,Journal of Signal Processing,信号処理学会,2003年3月,第7巻,第2号,p.167−176
竹安数博、外3名,「ロバストなブートストラップ型システム同定アルゴリズム」,Journal of Signal Processing,信号処理学会,2003年3月,第7巻,第2号,p.167−176
前述の如き疑似線形回帰法は、問題の性質によっては、求めるべきパラメータであるベクトルa,b,cが収束せず、パラメータの推定ができない場合があるという問題がある。また、前述の方法では、ベクトルa,b,cを計算するためにp行p列の行列R,V’,T’,W,S’,Q’を用いた行列計算を行う必要があるため、計算時間が長いという問題があった。
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、外部入力を考慮に入れたARMAXモデルのパラメータの値の収束を容易にし、同時に計算時間の短縮を図ることができるパラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラムを提供することにある。
第1発明に係るパラメータ推定方法は、記憶部及び演算部を備えたコンピュータを用いて、複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un:n=1,2,…}を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定する方法において、前記標本時系列及び前記入力時系列を前記記憶部で記憶し、下記式で定義される行列R,W,V,r,vを前記記憶部で記憶し、
平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を前記演算部で生成し、前記演算部で生成した白色雑音の分散σe 2を前記演算部で計算し、下記式で定義される行列T及びtを前記演算部で計算し、
前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータを行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T、前記入力時系列に係るp個のパラメータを行列要素とする行列c=[c1 ,c2 ,…,cp ]T及び前記白色雑音に係るp個のパラメータを行列要素とする行列b=[b1 ,b2 ,…,bp ]Tを、下記式に基づいて前記演算部で計算し、
前記演算部で計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータ、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を前記演算部で計算し、前記演算部で計算した新たな白色雑音を用いて新たなベクトルa、b及びcを前記演算部で計算し、ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を前記演算部で繰り返すことを特徴とする。
第2発明に係るデータ予測方法は、記憶部及び演算部を備えたコンピュータを用いて、入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}から、前記標本時系列に加わるべき新たなデータを予測する方法において、前記標本時系列及び前記入力時系列を前記記憶部で記憶し、第1発明に係るパラメータ推定方法を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を前記演算部で計算し、前記演算部で計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を前記演算部で計算することを特徴とする。
第3発明に係るパラメータ推定装置は、複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un:n=1,2,…}を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定する装置において、前記標本時系列及び前記入力時系列を記憶する手段と、下記式で定義される行列R,W,V,r,vを記憶する手段と、
平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を生成する手段と、該手段が生成した白色雑音の分散σe 2を計算する手段と、下記式で定義される行列T及びtを計算する手段と、
前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータの推定値を行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T、前記入力時系列に係るp個のパラメータの推定値を行列要素とする行列c=[c1 ,c2 ,…,cp]T 及び前記白色雑音に係るp個のパラメータの推定値を行列要素とする行列b=[b1 ,b2 ,…,bp]T を、下記式に基づいて計算する手段と、
該手段が計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータの推定値、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を計算する手段と、該手段が計算した新たな白色雑音を用いて新たなベクトルa、b及びcを計算する手段と、ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を繰り返す手段とを備えることを特徴とする。
第4発明に係るデータ予測装置は、入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}から、前記標本時系列に加わるべき新たなデータを予測する装置において、前記標本時系列及び前記入力時系列を記憶する手段と、第3発明に係るパラメータ推定装置と、該パラメータ推定装置を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を計算する手段と、該手段が計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を計算する手段とを備えることを特徴とする。
第5発明に係るコンピュータプログラムは、複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un:n=1,2,…}、並びに下記式で定義される行列R,W,V,r,vを記憶するコンピュータに、
前記標本時系列及び前記入力時系列を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定させるコンピュータプログラムであって、コンピュータに、平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を生成させる手順と、コンピュータに、生成した白色雑音の分散σe 2を計算させる手順と、コンピュータに、下記式で定義される行列T及びtを計算させる手順と、
コンピュータに、前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータの推定値を行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T、前記入力時系列に係るp個のパラメータの推定値を行列要素とする行列c=[c1 ,c2 ,…,cp]T 及び前記白色雑音に係るp個のパラメータの推定値を行列要素とする行列b=[b1 ,b2 ,…,bp]T を、下記式に基づいて計算させる手順と、
コンピュータに、計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータの推定値、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を計算させる手順と、コンピュータに、計算した新たな白色雑音を用いて新たなベクトルa、b及びcを計算させる手順と、コンピュータに、ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を繰り返させる手順とを含むことを特徴とする。
第6発明に係るコンピュータプログラムは、入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}を記憶するコンピュータに、前記標本時系列に加わるべき新たなデータを予測させるコンピュータプログラムであって、コンピュータに、第1発明に係るパラメータ推定方法を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を計算させる手順と、コンピュータに、計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を計算させる手順とを含むことを特徴とする。
本発明者は、ARMAXモデルの式の構成から導かれるa priori knowledgeを導入することにより、従来の疑似線形回帰法の改良を試みた。まず正規性雑音{en }の自己相関関数を考える。正規性白色雑音{en}に含まれる各要素は互いに関連性がないので、{en }の自己相関関数Skは理論的に下記式で表すことができる。
従って、(11)式で定義される行列S’に理論的な値を導入することによって行列S’を改良した行列Sは、単位行列をIとして下記式で表される。
次に、{xn }と{en}との相互相関関数を考える。(2)式で示されるARMAXモデルでは、現在のxn の値は過去のen の値に関連づけられている。しかし、現在のxnの値は未来のen の値とは関連性がないので、xn とこのデータよりも未来のen との相互相関関数は下記式で表すことができる。
E[xn en+k ]=0
同様に下記式が成り立つ。
E[en xn-k ]=0
従って、T-k=0となる。また(2)式より現在のxn の値と現在のen の値とは関連性があるので、T0≠0である。従って、(9)式で定義される行列T’に理論的な値を導入することによって行列T’を改良した行列Tは下記式で表される。
E[xn en+k ]=0
同様に下記式が成り立つ。
E[en xn-k ]=0
従って、T-k=0となる。また(2)式より現在のxn の値と現在のen の値とは関連性があるので、T0≠0である。従って、(9)式で定義される行列T’に理論的な値を導入することによって行列T’を改良した行列Tは下記式で表される。
{xn }と{un }との相互相関関数についても、同様に、現在のxnの値は過去のun の値に関連づけられているが、現在のxn の値は未来のun の値とは関連性がないので、下記式が成り立つ。
E[xn un+k ]=E[un xn-k ]=V-k=0
また(2)式より現在のxn の値と現在のun の値とは関連性がないので、V0 =0である。従って、(8)式で定義される行列V’に理論的な値を導入することによって行列V’を改良した行列Vは下記式で表される。
E[xn un+k ]=E[un xn-k ]=V-k=0
また(2)式より現在のxn の値と現在のun の値とは関連性がないので、V0 =0である。従って、(8)式で定義される行列V’に理論的な値を導入することによって行列V’を改良した行列Vは下記式で表される。
更に、入力時系列{un }と正規性白色雑音{en }とは無相関であるはずであるので、下記式に示す如く{un }と{en}との相互相関関数は全て0となる。
E[en un+k ]=E[un en-k ]=Qk=0
E[en un-k ]=E[unen+k ]=Q-k=0
従って、(12)式で定義される行列Q’に理論的な値を導入することによって行列Q’を改良した行列Qは、ゼロ行列をOとして下記式で表される。
Q=O …(21)
E[en un+k ]=E[un en-k ]=Qk=0
E[en un-k ]=E[unen+k ]=Q-k=0
従って、(12)式で定義される行列Q’に理論的な値を導入することによって行列Q’を改良した行列Qは、ゼロ行列をOとして下記式で表される。
Q=O …(21)
N個のデータからなる標本時系列{xn :n=1,2,…,N}及び入力時系列{un:n=1,2,…,N}が得られたときに各自己相関関数及び各相互相関関数を計算した場合は、Nの値が有限であるので相互相関関数及び自己相関関数の値は理論的な値とは違った値となる。この実際に計算される値の内、理論的な値が得られる部分は理論的な値と置き換えることにより、ARMAXモデルのパラメータを求めるための(6)式は下記式で表すことができるようになる。
(22)式を書き直すと、下記の連立方程式が得られる。
Ra−Vc−Tb=−r …(23)
−VT a+Wc=v …(24)
−TT a+σe 2b=t …(25)
(25)式及び(24)より、下記の(26)式及び(27)式が得られる。
b=(t+TT a)/σe 2 …(26)
c=W-1(v+VT a) …(27)
(26)式及び(27)式を(23)式に代入することにより、下記(28)式が得られる。
Ra−Vc−Tb=−r …(23)
−VT a+Wc=v …(24)
−TT a+σe 2b=t …(25)
(25)式及び(24)より、下記の(26)式及び(27)式が得られる。
b=(t+TT a)/σe 2 …(26)
c=W-1(v+VT a) …(27)
(26)式及び(27)式を(23)式に代入することにより、下記(28)式が得られる。
(28)式よりベクトルaを計算することができる。計算したベクトルaを(26)式及び(27)式へ代入することにより、ベクトルb及びベクトルcを計算することができる。ARMAXモデルのパラメータの推定値であるベクトルa,b,cを求めるためには、白色雑音{en }を乱数などを用いて生成し、生成した{en}と{xn }及び{un}とから、ベクトルa,b,cを(26)〜(28)式により計算し、計算したベクトルa,b,cから(2)式を用いて新たな白色雑音{en }を計算し、ベクトルa,b,cが収束するまで計算を繰り返す。
第1、第3及び第5発明においては、入力を伴う系から得られた複数のデータからなる標本時系列{xn }及び系へ入力された複数のデータからなる入力時系列{un }をARMAXモデルに当てはめたときのパラメータの推定値を、入力時系列の自己相関関数、白色雑音の自己相関関数、標本時系列と入力時系列との相互相関関数、標本時系列と白色雑音の相互相関関数、及び入力時系列と白色雑音との相互相関関数に理論的な値を用いた(26)〜(28)式により計算する。
第2、第4及び第6発明においては、(26)〜(28)式により計算したARMAXモデルのパラメータの推定値を用い、標本時系列{xn }に加わるべき新たなデータの予測値を計算する。
第1、第3及び第5発明にあっては、入力を伴う系から得られた複数のデータからなる標本時系列{xn }及び系へ入力された複数のデータからなる入力時系列{un }をARMAXモデルに当てはめたときのパラメータの推定値を計算する際に、白色雑音の自己相関関数、標本時系列と入力時系列との相互相関関数、標本時系列と白色雑音の相互相関関数、及び入力時系列と白色雑音との相互相関関数に理論的な値を用いて計算することにより、従来の疑似線形回帰法でパラメータの推定値の収束が困難であった場合についても、パラメータの推定値の収束が容易となる。またパラメータが収束する確率が向上するので、パラメータ推定の計算時間を短縮する事ができる。
第2、第4及び第6発明にあっては、系から得られるデータの値が過去のデータの値と雑音と更に系への入力とから決定されるARMAXモデルのパラメータの推定値を用いて新たなデータの予測値を計算することにより、株の取引量に影響される株価の値、又は商品の入荷量に影響される商品の販売量など、外部入力に影響される系から得られるデータの値を推定することができる。従って、株価又は商品の販売量などの予測をより現実に即して行うことができる等、本発明は優れた効果を奏する。
以下本発明をその実施の形態を示す図面に基づき具体的に説明する。
図1は、本発明のデータ予測装置の構成を示すブロック図である。データ予測装置1は、本発明のパラメータ推定装置としての機能を兼ね備えており、汎用コンピュータを用いて構成されている。データ予測装置1は、演算を行うCPU(演算部)11と、演算に伴って発生する一時的な情報を記憶するRAM(記憶部)12と、CD−ROMドライブ等の外部記憶装置13と、ハードディスク等の内部記憶装置14とを備えている。CPU11は、CD−ROM等の記録媒体2から本発明のコンピュータプログラム20を外部記憶装置13にて読み取り、読み取ったコンピュータプログラム20を内部記憶装置14に記憶させる。コンピュータプログラム20は必要に応じて内部記憶装置14からRAM12へロードされ、ロードされたコンピュータプログラム20に基づいてCPU11はデータ予測装置1に必要な処理を実行する。データ予測装置1は、キーボード又はマウス等の入力装置15と、液晶ディスプレイ又はCRTディスプレイ等の出力装置16とを備えており、データの入力を初めとするオペレータからの操作を受け付ける構成となっている。
図1は、本発明のデータ予測装置の構成を示すブロック図である。データ予測装置1は、本発明のパラメータ推定装置としての機能を兼ね備えており、汎用コンピュータを用いて構成されている。データ予測装置1は、演算を行うCPU(演算部)11と、演算に伴って発生する一時的な情報を記憶するRAM(記憶部)12と、CD−ROMドライブ等の外部記憶装置13と、ハードディスク等の内部記憶装置14とを備えている。CPU11は、CD−ROM等の記録媒体2から本発明のコンピュータプログラム20を外部記憶装置13にて読み取り、読み取ったコンピュータプログラム20を内部記憶装置14に記憶させる。コンピュータプログラム20は必要に応じて内部記憶装置14からRAM12へロードされ、ロードされたコンピュータプログラム20に基づいてCPU11はデータ予測装置1に必要な処理を実行する。データ予測装置1は、キーボード又はマウス等の入力装置15と、液晶ディスプレイ又はCRTディスプレイ等の出力装置16とを備えており、データの入力を初めとするオペレータからの操作を受け付ける構成となっている。
内部記憶装置14は、株価又は商品の販売量などの複数のデータからなる標本時系列{xn :n=1,2,…}と、株の取引量又は商品の入荷量など、標本時系列が得られる系に対して入力される複数のデータからなる入力時系列{un:n=1,2,…}とを記憶している。
なお、コンピュータプログラム20は、通信ネットワークNに接続されている図示しない外部のサーバ装置から本発明に係る状態監視装置1へロードされて内部記憶装置14に記憶される形態であってもよい。
図2は、本発明のデータ予測装置1が行うパラメータ推定の処理およびデータ予測の処理を示すフローチャートである。データ予測装置1のCPU11は、RAM12にロードしたコンピュータプログラム20に従って以下の処理を行う。データ予測装置1のCPU11は、内部記憶装置14が記憶している標本時系列{xn }及び入力時系列{un }をRAM12に読み出す(S1)。CPU11は、次に、{xn }及び{un}に含まれるデータの値を用いて{xn }の自己相関関数Rk =E[xn xn+k ],{un }の自己相関関数Wk =E[unun+k ],{xn }と{un }との相互相関関数Vk=E[un xn+k ]を計算して、(7)式,(10)式,(20)式,(13)式で定義される行列R,W,V,r,vを計算する(S2)。CPU11は、次に、乱数生成のルーチンを用いて時刻の値を初期値として乱数を発生させる等の方法により、平均値が0である複数のランダムなデータからなる白色雑音{en:n=1,2,…}を生成し(S3)、生成した白色雑音{en }の分散σe 2を計算する(S4)。
CPU11は、次に、{xn }及び{en }に含まれるデータの値を用いて{xn }と{en }との相互相関関数Tk=E[en xn+k ]を計算して、(19)式,(13)式で定義される行列T,tを計算する(S5)。CPU11は、次に、(28)式によりベクトルaを計算し、ベクトルaを(26)式及び(27)式へ代入することによりベクトルb及びベクトルcを計算することによって、{xn }及び{un }をARMAXモデルに当てはめたときのARMAXモデルのパラメータの推定値からなるベクトルa,b,cを計算する(S6)。
CPU11は、次に、計算したベクトルa,b,cが収束しているか否かを判定する(S7)。このときCPU11は、例えば、最新のベクトルa,b,cと前回に計算したベクトルa,b,cであるベクトルa’=[a’1 ,a’2 ,…,a’p ]T,b’=[b’1 ,b’2 ,…,b’p ]T ,c’=[c’1,c’2 ,…,c’p ]T を用いて下記(29)式で定義されるDを計算し、計算したDが所定の微少量εに対してD<εである状態が所定回数連続で成立している場合にベクトルa,b,cが収束していると判定する。なお、その他の方法を用いてベクトルa,b,cの収束を判定する処理を用いてもよい。
ステップS7にて、ベクトルa,b,cが収束していないと判定された場合は(S7:NO)、ベクトルa,b,cと{xn }及び{un }とをm=q=pとした(2)式へ代入して、新たな白色雑音{en:n=1,2,…}を計算し(S8)、処理をステップS4へ戻す。CPU11は、ステップS7にてベクトルa,b,cが収束したと判定されるまでステップS4〜S8の処理を繰り返す。
ステップS7にて、ベクトルa,b,cが収束していると判定された場合は(S7:YES)、CPU11は、計算したベクトルa,b,c、{xn }、{un }、{en }を(2)式へ代入することにより、標本時系列{xn}に加わるべきデータの予測値、即ち株価又は商品の販売量などの予測データを計算する(S9)。なお、ステップS9では、入力時系列に加わる新たなデータ又は当該データの予測値を必要に応じて用いてもよい。以上の処理により、ARMAXモデルのパラメータが推定され、標本時系列に加わるべき新たなデータが予測できる。
以上詳述した如く、本発明においては、入力を伴う系から得られた複数のデータからなる標本時系列{xn }及び系へ入力された複数のデータからなる入力時系列{un }をARMAXモデルに当てはめたときのパラメータの推定値を計算する際に、白色雑音の自己相関関数、標本時系列と入力時系列との相互相関関数、標本時系列と白色雑音の相互相関関数、及び入力時系列と白色雑音との相互相関関数に理論的な値を用いて計算する。これにより、従来の疑似線形回帰法でパラメータの推定値の収束が困難であった場合についても、パラメータの推定値の収束が容易となる。またパラメータが収束する確率が向上するので、パラメータ推定の計算時間を短縮する事ができる。
また、本発明においては、系から得られるデータの値が過去のデータの値と雑音と更に系への入力とから決定されるARMAXモデルを離散時間線形モデルとして用いることにより、株の取引量に影響される株価の値、又は商品の入荷量に影響される商品の販売量など、外部入力に影響される系から得られるデータの値を推定することができる。従って、株価又は商品の販売量などの予測をより現実に即して行うことができる。
なお、本実施の形態においては、本発明のデータ予測装置は、内部で標本時系列{xn }及び入力時系列{un }を記憶している形態を示しているが、これに限るものではなく、標本時系列{xn }及び入力時系列{un }に含まれるデータを外部から受け付ける手段を備え、受け付けたデータについて予測データを計算する処理を行う形態であってもよい。
また、本実施の形態においては、本発明のデータ予測装置1は、本発明のパラメータ推定装置の機能を兼ね備えている形態を示したが、これに限るものではなく、ARMAXモデルのパラメータの予測値を計算するパラメータ推定装置とARMAXモデルによりデータを予測するデータ予測装置とを夫々別のコンピュータにて構成し、互いに情報を入出力してパラメータの推定とデータの予測とを行う形態としても良い。
1 データ予測装置(パラメータ推定装置)
11 CPU(演算部)
12 RAM(記憶部)
2 記録媒体
20 コンピュータプログラム
11 CPU(演算部)
12 RAM(記憶部)
2 記録媒体
20 コンピュータプログラム
Claims (6)
- 記憶部及び演算部を備えたコンピュータを用いて、複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un :n=1,2,…}を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定する方法において、
前記標本時系列及び前記入力時系列を前記記憶部で記憶し、
下記式で定義される行列R,W,V,r,vを前記記憶部で記憶し、
平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を前記演算部で生成し、
前記演算部で生成した白色雑音の分散σe 2を前記演算部で計算し、
下記式で定義される行列T及びtを前記演算部で計算し、
前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータを行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T 、前記入力時系列に係るp個のパラメータを行列要素とする行列c=[c1,c2 ,…,cp ]T 及び前記白色雑音に係るp個のパラメータを行列要素とする行列b=[b1,b2 ,…,bp ]T を、下記式に基づいて前記演算部で計算し、
前記演算部で計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータ、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を前記演算部で計算し、
前記演算部で計算した新たな白色雑音を用いて新たなベクトルa、b及びcを前記演算部で計算し、
ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を前記演算部で繰り返すこと
を特徴とするパラメータ推定方法。 - 記憶部及び演算部を備えたコンピュータを用いて、入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}から、前記標本時系列に加わるべき新たなデータを予測する方法において、
前記標本時系列及び前記入力時系列を前記記憶部で記憶し、
請求項1に記載のパラメータ推定方法を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を前記演算部で計算し、
前記演算部で計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を前記演算部で計算すること
を特徴とするデータ予測方法。 - 複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un :n=1,2,…}を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定する装置において、
前記標本時系列及び前記入力時系列を記憶する手段と、
下記式で定義される行列R,W,V,r,vを記憶する手段と、
平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を生成する手段と、
該手段が生成した白色雑音の分散σe 2を計算する手段と、
下記式で定義される行列T及びtを計算する手段と、
前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータの推定値を行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T、前記入力時系列に係るp個のパラメータの推定値を行列要素とする行列c=[c1 ,c2 ,…,cp]T 及び前記白色雑音に係るp個のパラメータの推定値を行列要素とする行列b=[b1 ,b2 ,…,bp]T を、下記式に基づいて計算する手段と、
該手段が計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータの推定値、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を計算する手段と、
該手段が計算した新たな白色雑音を用いて新たなベクトルa、b及びcを計算する手段と、
ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を繰り返す手段と
を備えることを特徴とするパラメータ推定装置。 - 入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}から、前記標本時系列に加わるべき新たなデータを予測する装置において、
前記標本時系列及び前記入力時系列を記憶する手段と、
請求項3に記載のパラメータ推定装置と、
該パラメータ推定装置を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を計算する手段と、
該手段が計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を計算する手段と
を備えることを特徴とするデータ予測装置。 - 複数のデータからなる標本時系列{xn :n=1,2,…}及び入力時系列{un :n=1,2,…}、並びに下記式で定義される行列R,W,V,r,vを記憶するコンピュータに、
前記標本時系列及び前記入力時系列を(p,p,p)次(但し、pは自然数)のARMAXモデルに当てはめたときのパラメータを推定させるコンピュータプログラムであって、
コンピュータに、平均値が0である複数のランダムなデータからなる白色雑音{en :n=1,2,…}を生成させる手順と、
コンピュータに、生成した白色雑音の分散σe 2を計算させる手順と、
コンピュータに、下記式で定義される行列T及びtを計算させる手順と、
コンピュータに、前記ARMAXモデルにおける前記標本時系列に係るp個のパラメータの推定値を行列要素とするベクトルa=[a1 ,a2 ,…,ap ]T、前記入力時系列に係るp個のパラメータの推定値を行列要素とする行列c=[c1 ,c2 ,…,cp]T 及び前記白色雑音に係るp個のパラメータの推定値を行列要素とする行列b=[b1 ,b2 ,…,bp]T を、下記式に基づいて計算させる手順と、
コンピュータに、計算したベクトルa、b及びcに含まれる前記ARMAXモデルのパラメータの推定値、並びに前記標本時系列及び前記入力時系列値を前記ARMAモデルの式に代入して、新たな白色雑音を計算させる手順と、
コンピュータに、計算した新たな白色雑音を用いて新たなベクトルa、b及びcを計算させる手順と、
コンピュータに、ベクトルa、b及びcが収束するまでベクトルa、b及びcの計算を繰り返させる手順と
を含むことを特徴とするコンピュータプログラム。 - 入力を伴う系から得られる複数のデータからなる標本時系列{xn :n=1,2,…}、及び前記系へ入力される複数のデータからなる入力時系列{un:n=1,2,…}を記憶するコンピュータに、前記標本時系列に加わるべき新たなデータを予測させるコンピュータプログラムであって、
コンピュータに、請求項1に記載のパラメータ推定方法を用いて、前記標本時系列及び前記入力時系列をARMAXモデルに当てはめたときのパラメータの推定値を計算させる手順と、
コンピュータに、計算した前記パラメータの推定値、並びに前記標本時系列及び前記入力時系列を前記ARMAモデルの式に代入して、前記標本時系列に加わるべき新たなデータの予測値を計算させる手順と
を含むことを特徴とするコンピュータプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004050242A JP2005242580A (ja) | 2004-02-25 | 2004-02-25 | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004050242A JP2005242580A (ja) | 2004-02-25 | 2004-02-25 | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2005242580A true JP2005242580A (ja) | 2005-09-08 |
Family
ID=35024272
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004050242A Pending JP2005242580A (ja) | 2004-02-25 | 2004-02-25 | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2005242580A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103279651A (zh) * | 2013-05-10 | 2013-09-04 | 中国石油天然气股份有限公司 | 一种储层参数预测方法及装置 |
| CN103678869A (zh) * | 2013-09-17 | 2014-03-26 | 中国人民解放军海军航空工程学院青岛校区 | 一种飞行参数缺失数据的预测估计方法 |
| CN107798425A (zh) * | 2017-10-16 | 2018-03-13 | 中国科学院地理科学与资源研究所 | 一种基于大数据的时空混淆暴露度评估系统及方法 |
| CN113238492A (zh) * | 2021-04-12 | 2021-08-10 | 哈尔滨理工大学 | 一种针对叶片马达的armax模型的参数辨别方法 |
-
2004
- 2004-02-25 JP JP2004050242A patent/JP2005242580A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103279651A (zh) * | 2013-05-10 | 2013-09-04 | 中国石油天然气股份有限公司 | 一种储层参数预测方法及装置 |
| CN103678869A (zh) * | 2013-09-17 | 2014-03-26 | 中国人民解放军海军航空工程学院青岛校区 | 一种飞行参数缺失数据的预测估计方法 |
| CN107798425A (zh) * | 2017-10-16 | 2018-03-13 | 中国科学院地理科学与资源研究所 | 一种基于大数据的时空混淆暴露度评估系统及方法 |
| CN113238492A (zh) * | 2021-04-12 | 2021-08-10 | 哈尔滨理工大学 | 一种针对叶片马达的armax模型的参数辨别方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Sauer | Numerical solution of stochastic differential equations in finance | |
| Erhardt et al. | Approximate Bayesian computing for spatial extremes | |
| KR102038703B1 (ko) | 동적 전이 앙상블 모형을 통한 실시간 다변량 시계열 예측방법 및 그 시스템 | |
| CN113689270B (zh) | 黑产设备的确定方法、电子设备、存储介质及程序产品 | |
| Chen et al. | Efficient VaR and CVaR measurement via stochastic kriging | |
| US20080208788A1 (en) | Method and system for predicting customer wallets | |
| WO2010027046A1 (ja) | 情報処理装置、情報処理方法、情報記憶媒体及びプログラム | |
| CN115222149A (zh) | 资源转换参数管理方法、装置、设备及存储介质 | |
| JP7379300B2 (ja) | 推定装置、推定方法及びプログラム | |
| Ding et al. | On the partial autocorrelation function for locally stationary time series: characterization, estimation and inference | |
| JP2005242580A (ja) | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、及びコンピュータプログラム | |
| JP7452247B2 (ja) | 変換プログラム、変換方法および情報処理装置 | |
| Eisenhauer | The approximate solution of finite‐horizon discrete‐choice dynamic programming models | |
| CN111737921B (zh) | 基于循环神经网络的数据处理方法、设备及介质 | |
| JP2020030702A (ja) | 学習装置、学習方法及び学習プログラム | |
| WO2020075255A1 (ja) | 学習装置、学習方法、及びプログラムが格納された非一時的なコンピュータ可読媒体 | |
| Sverchkov | A new approach to estimation of response probabilities when missing data are not missing at random | |
| CN114896624B (zh) | 基于多方安全计算的数据归一化处理方法及装置 | |
| JP7472998B2 (ja) | パラメータ推定装置、秘密パラメータ推定システム、秘密計算装置、それらの方法、およびプログラム | |
| JP2004102831A (ja) | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、コンピュータプログラム、及び記録媒体 | |
| CN116795705A (zh) | 异常节点的确定方法、装置和计算机设备 | |
| JP2020042515A (ja) | モデル生成装置、モデル生成方法、及びプログラム | |
| JP2004295638A (ja) | パラメータ推定方法、データ予測方法、パラメータ推定装置、データ予測装置、コンピュータプログラム、及び記録媒体 | |
| JP2019113962A (ja) | 解析装置、解析方法及びプログラム | |
| Aihara et al. | Estimating volatility and model parameters of stochastic volatility models with jumps using particle filter |
