構造変化を含む時系列分析への適応モデルの適用について
杉原敏夫
構造変化を含む時系列分析への適応モデルの適用について
abstruct
An adaptive dynamical approach to economic time series analysis with structure changes is presented. This adaptive approach is based on Kalman Filter Technique inc1uded Control Factors.For such a case, static approach as Multi Regression Model with time sequence in‑ troduces Dummy variables and represents the structure changes as regression‑parameters shifts. On this analogy, some control factors cor‑ responding to structure changes are introdeced to Kalman Fi1ter's State Transition Equation. The merits of this model are adaptive and rea1time processing. The verification case is Domestic Electric Power GenerationへThistimeseries is smooth comparatively, therefore filter does not diverge at changing points. Consequently, mean square error of this model is highly lower than those of other static models.
t .はじめに
273
経営・経済領域における時系列分析においては,通常,モデル化の方法は 取り上げられた変数群についての過去の時点における時間的な振る舞いを基 本とする。すなわち,過去の時間的な振る舞いから現在,将来の時点の動き を推定・予測する回帰方式によるものが多い。そのようなモデル化に際し,
対象とされる変数の時間的な変化と同時にそれ以外の不連続的な構造変化に より,全体のシステムが大きな影響を受ける場合,取り上げた変数だけの回 帰モデルだけでは十分な説明が出来ないことも事実である。特に,そのよう な不連続的な構造変化はモデル化のための固有なシステム以外の外的なイン パクトに基づくことが多く, 1970年代のオイルショック,近年においてはバ ブル経済の崩壊など個々の分析モデルの範囲を超えた政治的,経済的なイン パクトに起因するものと考えられよう。
このような,システムの構造変化に対してのアプローチとしては,静的な 時系列分析のアプローチでは,構造変化の前後においてそれらを区別する新 たな構造変数を導入する(例えば,ダミー変数を導入した時系列重回帰モデ ルなど)方法が考えられた。この方法では,対象とする時系列の全体区間を 見渡して,システムの構造変化の時点に対応するダミー変数を導入し,ダミー 変数を含んだ変数全体のサンプル値に基づいて回帰分析を行うことによって 構造変化をモデルに吸収している。
一方,動的なモデル化技法においては,時系列の時点ごとの動きを逐次的 に入力し,その時点ごとの振る舞いに対応した推定を行うというリアルタイ ム的な処理方式が基本であるため,システムの構造変化には静的な方式と比 較して,対処がしやすいものと考えられ,このような方法を採用することに より,リアルタイム的な処理と併せ,より合理的な対処が出来るものと考え られる。
ここでは,以上のことを考え,時系列モデルの外部からのインパクトを吸 収する動的な適応モデルを考え,事例(国内における発電量時系列)により,
適用の検証を試みる。なお,時系列分析における動的な適応モデルとしては カルマンフィルタを基本としたモデル化を考える。
2.基本モデル
2. 1.力ルマンフィルタの構成
カルマンフィルタは R.E.Kalmanによって, 1960年に発表され,古典的 な最小2乗法の自然、な延長としての最適線形フィルタを構成するアプローチ である。カルマンフィルタの最大のポイントは N.Wienerによって提唱さ れた定常過程に対する最適線形フィルタを非定常過程に拡張し,さらに,パ ワースペクトラムを代表とする古典的な周波数領域での扱いに対して,コン ピュータでのリアルタイム処理を意識した時間領域での取扱を可能にしたこ
構造変化を含む時系列分析への適応モデルの適用について
とである。その特徴をまとめれば次の4点に集約されよう。
・原則として多入力多出力であること
一複数の変数が同時に推定・予測される
・状態系と観測系が分離されていること
275
ーモデルの立て方によっては,少ない観測変数で多くの 状態変数が推定・予測できる
・フィルタゲインが自動的に調節される
一外部に対する適応型の機構を持つ
・逐次的なデータ処理,予測が可能である 一一リアルタイム計算に適している
カルマンフィルタを構成するためには,状態ベクトルと観測ベクトルおよ び状態系のダイナミクスを表す状態遷移行列,状態ベクトルから観測ベクト ルへの変換行列が定義されていなければならない。同時に,状態方程式の記 述のためには状態雑音,観測方程式の定義のためには観測雑音の確定が必要 である。これらをまとめると次のようになる。
(a)状態系の記述
・状態ベクトル:X(Xl, X2,…・・……・…, Xn)
・外乱ベクトル :V(Vl' V2, ....・H ・‑……, Vn)
・状態遷移行列:φk+ ,1k(nXnの行列)
・状態方程式
Xk+l =φk+ 1. kXk+Vk
(b)観測系の記述
・観測ベクトル:y(y 1, Y2,………, Ym)
・外乱ベクトル:W(Wl,W 2,………, Wm)
・観測行列:Hk(mxnの行列)
‑状態方程式
Yk=HkXk+Wk
一一一(1 )
一一一(2 )
( c )外乱の定義
・状態系への外乱 E{VkiVkU =VkOij E{VkiV 1 a = VkOk 1
・観測系への外乱 E{WkiWkj}=WkOij
(d)状態変数の誤差共分散
・誤差共分散
E{ WkiW 1 a = W kOk 1
Pk,kー1= E {支k,kー1処,kーd
Xk,k‑1 = Xk ‑ Xk,k‑1
xk:k時点での状態ベクトルの推定値
( 3 )
一一一(4 )
一一一(5 )
Xk.k‑1 : (kー 1)時点でのk時点の状態ベクトルの予測値
以上の (a) '"" (d)までの要素によって,カルマンフィルタは構成され るが,その推定の手順と処理のアルゴリズムを示すと,図‑1 , 2のように なる。
図‑1 力ルマンフィルタの構成 状 態 系
状態の更新 I Xk+ l,k=φk+ 1,kXk Xk r(状 態 方 酌 状 態 雑 音
1 )
X…
! 一
.一一.一‑‑│ 十十--一一-一--一一.一--一一.一.一一.一一-一-~│
hvm………=司刊+Bk=Xk正ぬ川恥[Yk一 HkXk,叶k,,k‑kkト一 k 一1 ]測値の取り込み 予測値の出力
Yk (観測信号+観測雑音)Yk+ l,k
観 測 系
構造変化を含む時系列分析への適応モデルの適用について
図‑2 処理のアルゴリズム
step 1 初期化
Xk(状態推定ベクトル)の初期化 Xk.k一1(状態予測ベクトル)の初期化 Pk.k‑l (予測値誤差共分散行列)の初期化 step 2 観測値入力
Ykの入力 step 3 予測値の計算
Xk.k一1=φk.k一lXk‑l Yk.kー1=HkXk.kー1 step 4 カルマンゲインの計算
Bk=Pk.kー lH~[HkPk.k一 lH~+WkJ 一 l step 5 推定値誤差共分散の計算
Pk.k=口‑BkHkJPk.kー1[トBkHkJt+ Bk W kB~
=[Pk. ~-1 +H~Wk 1HkJ一1
( 1は単位行列) step 6 推定値の計算
Xk=Xk.kー1+Bk[Yk‑Yk.k一1J =Xk.k一l + Bk[Yk‑HkXk.k一1J
Yk=HkXk
step 7 予測値誤差共分散の計算
Pk.kー 1=φk.kー 1Pk‑1 .k‑1φい‑1+Qkー 1
277
以上のスキームにおいて, step 2から step7までを繰り返す。推定値は step 6にて,予測値は step3にて出力される。
2.2.状態雑音,観測雑音の設定
カルマンフィルタはそのドライブの根源を状態雑音においている。したが って,その合理的設定は非常に重要なものであるが,これがなかなか困難な 問題である。状態雑音は状態方程式(1 )から次のようにかける。
Vk=Xk+ 1一φk+1.kXk 一一一(6 )
これは, k+ 1時点の状態ベクトルをシステムのダイナミクスで表現した式 と考えれば,状態雑音Vkは,ダイナミクスで表現しきれなかった誤差と考 えられる。たとえば,第2項のダイナミクスを重回帰式と考えれば,誤差部 分は重回帰式の決定係数の残りの部分と言うことも出来よう。すなわち,こ の場合,決定係数を R2とすれば,状態雑音の共分散
Vikは
Vikニ (1‑R2) ・(Xikの分散) 一一一(7 ) と設定することも考えられよう。
観測雑音については,経営・経済領域のデータについては工学上の問題と は異なり,設定が非常に難しい。例えば,カルマンフィルタを適用する事前 処理として,時系列を T(Trend), C (Circular), S (Seasonarity), 1 (Irr‑ egular)に分離し,抽出したI成分を観測雑音とすることも考えられる。ま た時点前の観測ベクトルの予測値と観測値の差を観測雑音として設定す る方法も考えられる。その場合,共分散は
Wjk=(Yjk一 1 ‑Hkー1Xk.k一 1) 2 一一一(8 ) となり,サイクルの更新ごとに自動発生できることになる。
以上のように,工夫次第では様々な方法が考えられるが,工学上の問題と は異なり,一律的な方法ではなく,対象とする問題の本質にうまくマッチし た方法を考えるべきである。(注1)
構造変化を含む時系列分析への適応モデルの適用について 279
2.3.制御項がある場合
カルマンフィルタへの制御項が存在する場合は,状態方程式と観測方程式 は, (9), (10)で記述することが出来る。
状態方程式
Xk+ 1 =φk+ 1.kXk+Ck+ 1.kUk+Vk 一一一(9 ) 観測方程式
Yk=HkXk+Wk 'EA n u これは, (1) で記述されたフィルタに制御項を取り込んだものである。こ の場合,状態ベクトルXkは,制御ベクトルUkからドライブされるものと考 え,予測値を算出する方式において,次のような変換を考える。
uk=Dkx:
すなわち,状態ベクトルの推定値の変換として制御ベクトルが得られるとい う考えである。この場合,行列 Dkは (pxn)の大きさを持つ。
Xk+ 1.k= (φk+ 1.k+Ck+ 1.kDk)X: 一一一(12) 一一一(13) Wk+ 1. k=φk+ 1 .k+Ck+ 1.kDk
とおけば,制御項をもっ場合の議論は前節での議論をそのまま用いることが 出来る。観測値に関してる次の通りとなる。
Yk+ 1 .k=Hk+ 1 Xk+ 1.k 一一一(14) ゲイン行列Bk'推定誤差共分散行列Pk.k,推定誤差共分散の予測値Pk.kー1 の算出においても, φk.kー1をWk.k一1に置き換えて議論すればよい。この 制御項を持つカルマンフィルタは制御項を時系列の構造変化のパラメータと 考えるならば,構造変化を有する適応型の動的モデルとして取り上げること が出来る。
3 .制御項を有する力ルマンフィルタの適用
3. 1.状態変数とその時系列データ
ここでは,制御項を持ったカルマンフィルタの実際の時系列データへの適 用を試みる。対象とする事例は次のものである。
テーマ:日本国内における発電量の予測 状態変数としては,次のものを考える。
Xlk:時点k(年次)における発電量 X2k:時点k(年次)における推定人口 X3k:時d点k(年次)における鉱工業生産指数 X4k:時点 k (年次)における実質 GDP XSk:時点k(年次)における外国為替相場
(円/USドル)
X6k:時,点kにおける原油輸入量
上記の各変数の1969年から1994年までの時系列を,表‑1に挙げる。また,
最初の時点を起点にして,各年における時系列の比を表‑2に示す。
発電量の説明変数としては,以上の他にも様々なものが対象とされ得るが,
電力というものの持つ公共的・マクロ的性格を考慮すると,とり上げた変数 は代表的なものと考えられよう。ただし,人口と実質 GDP以外は発電量を 説明する安定したパラメータとはいい難いが,カルマンフィルタの特徴であ る動的な推定方式を前提として,時系列が年間データであること,および発 電量に関する経済状況の動きを表す代表的な指標であることを考慮して導入 を試みた。図‑3に発電量の時系列のグラフを示す。
構造変化を含む時系列分析への適応モデルの適用について 281
[表ー 1適用とする各時系列]
時点西暦年度 333h推駁口続君事実5目品P曾FF噌J主自F
‑ A ヮ
q d d
せ
F hd
にU
月 ︐s Q U Q u n u
‑
‑
っ‑ q d A
吐'hdnb
月 ︐t Q U Q U Q U T i
ワ 山 内
J d
せ
F D F O
ー ム 唱
i唱
1 1 A 1 A
咽I唱
I 1 A 1
ム1AnF臼
n L n L n 4 n L n L n L
1969 27223 10254 1970 30759 10467 1971 32699 10610 1972 36588 10760 1973 40589 10910 1974 39772 11057 1975 41403 11194 1976 44843 11309 1977 46799 11417 1978 49701 11519 1979 52162 11616 1980 51405 11706 1981 52314 11788 1982 52248 11869 1983 55551 11948 1984 58220 12031 1985 60393 12105 1986 60151 12167 1987 64016 12226 1988 66677 12278 1989 70468 12325 1990 75759 12361 1991 78311 12404 1992 78826 12445 1993 79571 12476 1994 84044 12503
39.5 158945 357.8 16688 45 171661 357.65 19583 46.2 178981 314.75 22104 49.6 193698 301.1 23833 57.1 208470 280 28667 54.8 207182 300.94 28048 48.7 213107 305.15 26281 54.1 222084 293 26859 56.4 232550 240 27789 60.1 243873 195.1 27018 64.5 257371 239.9 28049 67.6 266722 203.6 25683 68.2 276268 220.25 23024 68.5 285002 235.3 21469 70.5 292701 232 20779 77.3 305187 251.58 21460 80.2 320397 200.6 19833 80 328816 160.1 19452 82.1 342315 122 18538 90.7 363567 125.9 19385 96.1 380709 143.4 20969 100 399043 135.4 22876 101.7 416038 125.25 24270 95.5 420622 124.65 25123 91.2 419765 111.89 25514 92 421922 99.83 27081
(出典:参考文献の18,19)
[表ー2 適用時系列, 1969年を起点とする比]
時 点 西 暦 年 度 発 電 量 推 定 人 口 鉱 工 業 生 産 実 質GDP外国為替原油輸入量 1969 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 2 1970 1.1299 1.0208 1. 1392 1.0800 0.9996 1.1735 3 1971 1. 2012 1. 0347 1. 1696 1.1261 0.8797 1. 3245 4 1972 1.3440 1. 0493 1.2557 1. 2186 0.8415 1.4282 5 1973 1. 4910 1.0640 1.4456 1.3116 0.7826 1. 7178 6 1974 1. 4610 1.0783 1.3873 1.3035 0.8411 1.6807 7 1975 1.5209 1. 0917 1.2339 1.3408 0.8529 1. 5748 8 1976 1. 6472 1. 1029 1.3696 1.3972 0.8189 1.6095 9 1977 1. 7191 1. 1134 1.4278 1. 4631 0.6708 1.6652 10 1978 1.8257 1. 1234 1.5215 0.5343 0.5453 1. 6190 11 1979 1.9161 1. 1328 1. 6329 1. 6192 0.6750 1.6808 12 1980 1.8883 1.1416 1.7114 1. 6781 0.5690 1.5390 13 1981 1. 9217 1. 1496 1.7266 1. 7381 0.6156 1. 3797 14 1982 1. 9193 1.1575 1.7342 1. 7931 0.6576 1.2865 15 1983 2.0406 1. 1652 1.7848 1.8415 0.6484 1. 2451 16 1984 2.1386 1. 1733 1.9570 1. 9201 0.71031 1.2860 17 1985 2.2185 1. 1805 2.0304 2.0158 0.5606 1. 1885 18 1986 2.2096 1. 1866 2.0253 2.0687 0.4475 1. 1656 19 1987 2.3515 1.1923 2.0785 2.1537 0.3410 1.1109 20 1988 2.4493 1. 1974 2.2962 2.2874 0.3519 1.1616 21 1989 2.5885 1.2020 2.4329 2.3952 0.4008 1.2565 22 1990 2.7829 1.2055 2.5316 2.5106 0.3784 1. 3708 23 1991 2.8766 1.2097 2.5747 2.6175 0.3501 1.4543 24 1992 2.8956 1.2137 2.4177 2.6463 0.3484 1.5055 25 1993 2.9229 1. 2167 2.3089 2.6409 0.3127 1.5289 26 1994 3.0872 1. 2193 2.3291 2.6545 0.2790 1.6228