Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
東京⼤学 数理・情報教育研究センター北川 源四郎
時系列解析(5)−ARMAモデルによる時系列の解析−
概 要
2
1. 1変量ARMAモデル1. インパルス応答関数2. ⾃⼰共分散関数3. 偏⾃⼰相関係数4. パワースペクトル5. 特性⽅程式
2. 多変量ARモデル1. 相互共分散関数2. クロススペクトル3. パワー寄与率
時系列モデル
3
時系列モデル 時系列“情報”
ny1nx 1( , )n n ny f x v
• 時系列モデルでは⽩⾊雑⾳が重要• 過去の利⽤できる情報 xn-1をできるだけ活⽤して
ynを表現し,表現しきれない残りが⽩⾊雑⾳と⾒なせるようにすることを⽬指す
⽩⾊雑⾳ nv
⽩⾊雑⾳(white noise)
相関がない(独⽴な)時系列
⾃⼰共分散関数
Ck
kk
2 0
0 0
パワースペクトル
21
0 )2cos(2)(
kk kfCCfp
4
1 1
2 2f
⽩⾊雑⾳kC
k
f
)( fp スペクトル
⾃⼰共分散⽩⾊雑⾳の例
5
2
2
w <- as.ts(rnorm(800))plot(w,ylim=c(-3,3))plot(as.ts(w[1:200]),ylim=c(-3,3))
⾃⼰回帰移動平均 (ARMA)モデル
y a y v b vn jj
m
n j n j n jj
1 1
n
j
yma
1変量時系列AR次数AR係数
n
j
v
b
⽩⾊雑⾳MA次数MA係数
6
2~ (0, )[ ] 0[ ] 0 0
n
n k
n n j
v NE v v n kE v y j
ARMA(AutoRegressive Moving Average)モデルあるいはARMA(m, )と表現する
正規分布
無相関
過去の時系列と無相関
ARMA モデルの特殊な場合
7
= 0
0
0
m
m
ARモデル
MAモデル
⽩⾊雑⾳
1
1
m
n j n j nj
n n j n jj
n n
y a y v
y v b v
y v
AR(m), MA( )と表現する
y a y v b vn jj
m
n j n j n jj
1 1
さらに特殊な場合
マルコフ過程1, 0m
11, 0, 1m a
ランダムウォーク
1 1n n ny a y v
1n n ny y v
8
注:マルコフ過程とは、1期前の値だけに依存する確率過程注:AR(m)はm次元の(ベクトル)マルコフ過程になる
ARIMAモデル
ny (平均)⾮定常時系列
k 階差分 ほぼ定常
z a z v b vn j n jj
m
n j n jj
1 1
時系列 差分による定常化 ARMAモデル
9
1n n nk
n n
y y y
z y
Box-Jenkins法
AutoRegressive Integrated Moving Average (ARIMA) model
SARIMAモデル
ny (平均)⾮定常時系列
z a z v b vn j n jj
m
n j n jj
1 1
10
1 :pp
n p n n n p
B p
z y y y
1周期の⻑さ
Seasonal ARIMA(SARIMA) model
Back-shift operatorによる表現
y a y v b vn jj
m
n j n j n jj
1 1
1k
n n n n kBy y B y y
11
1 1
1 1m
j jj j
j jn na B y b B v
B: Back-shift operatorL: Lag operatorと呼ぶこともある
1
1
( ) 1
( ) 1
mj
jj
jj
j
a B a B
b B b B
オ ペ レ ー タ
オ ペ レ ー タ
AR
MA
( ) ( )n na B y b B v
インパルス応答関数
12
1
11
0
0
( ) ( )
( ) ( ) ( ) , 0
( )
n n
jj
j
n n j n jj
y a B b B v
g B a B b B g B g
y g B v g v
{ : 0,1, }jg j インパルス応答関数
( ) ( )n na B y b B v
インパルス応答関数
13
01
( )
( ) ( ) ( )
n n j n jj
y g B v g y
g B a B b B
{ : 0,1, }jg j
• 時刻 n=0 に加わったノイズが j 期後に時系列に及ぼす影響• ARMAモデルは無限次のMAモデルで表現できる
インパルス応答関数(例)
11 2 2( ) (1 ) 1
n n n
jj
y ay vg B aB aB a Bg a
14
0
1
1
( 1, 2, )i
i j i j ij
g
g a g b i
インパルス応答関数の計算法
インパルス応答関数
15
AR(2) MA(2) ARMA(2,2)
1 2
1 2
1 2 1 2
( ) 0.9 3 0.81(2) 0.9 2 0.81(3) 0.9 3 0.81 0.9 2 0.81
n n n n
n n n n
n n n n n n
y y y vy v v vy y y v v v
1
⾃⼰共分散関数
y a y v b vn jj
m
n j n j n jj
1 1
16
1 1
21 1
( ) ( ) ( ) ( )
0( ) ( ) ( )
m
n n k j n j n k n n k j n j n kj j
n k n j k j j n k jj j k n
E y y a E y y E v y b E v y
n kE v y E v g v g E v v
g n k
20 1
1
21
1
1m
j j j jjjm
k j k j j j kjj
C a C b g
C a C b g
21 0 1, , , , , , , ,j jm a b g g C C
20
1
1
m
j jjm
k j k jj
C a C
C a C
Yule-Walker⽅程式(ARモデルの場合)
1n j n j
jy g v
yn-k と vn をかけ期待値をとる
⾃⼰共分散関数
17
1 2
1 2
1 2 1 2
( ) 0.9 3 0.81(2) 0.9 2 0.81(3) 0.9 3 0.81 0.9 2 0.81
n n n n
n n n n
n n n n n n
y y y vy v v vy y y v v v
1
• MA( )では Ck=0 (k> のとき)
18
偏⾃⼰相関係数(PARCOR)
1
mm
n j n j nj
y a y v
mja 次数 m のARモデルの j 番⽬の係数
mm mb a 偏⾃⼰相関係数(PARCOR, Partial Autocorrelation)
• 直交化されているので便利• ⾳声分析、⾳声合成でも重要
19
偏⾃⼰相関係数(PARCOR)
• AR(m)では bk=0 (k>m のとき)
20
AR, MA, ARMAモデルの特徴
( )
( )
( , )
k kR b
m m
m
AR
M A
ARM A
⾮零な⾃⼰相関,偏⾃⼰相関の⻑さ
AR係数とPARCORの関係
21
1 1 ( 1, , 1)m m m mi i m m ia a a a i m
11
2 21 2
3 3 31 2 3
4 4 4 41 2 3 4
a
a a
a a a
a a a a
1 1{ , , } { , , }m mm mb b a a
1 1
1 1( )
m m m mi i m m i
m m m m mi m m i m i
a a a aa a a a a
1 11 1 1{ , , } { , , }m m m m m
m m ma a a a a と
1 11 1 1{ , , } { , , }m m m m
m ma a a a
11
21 ( )
m m mm i m m ii m
m
a a aaa
2 1 1(1 ( ) )m m m m mm i i m m ia a a a a
パワースペクトル
y a y v b vn jj
m
n j n j n jj
1 1
22
1( )n n j n j
jy g B v g v
2
2
2
0 0
2
0 0
( )
( )
( )
[ ]
ikfk
k
ikfn n k
k
ikfj n j p n k p
k j p
ikfj p n j n k p
k j p
p f C e
E y y e
E g v g v e
g g E v v e
2
0n j n k p
j k pE v v
otherwise
パワースペクトル
23
2 2
0
2 2 2 ( )
0
2 2 2
0 0
2 2 2
0
( )
| |
ikfj j k
k jj
ijf i k j fj j k
j k
ijf ipfj p
j p
ijfj
j
p f g g e
g e g e
g e g e
g e
1
2 2 2
0 1 1
22
122
21
1 1
1( )
1
mijf ijf ijf
j j jj j j
ijfjj
m ijfjj
g e a e b e
b ep f
a e
2 2 ( )
2 2 ( )
ikf i j k j f
ijf i k j fe e
e ej k p
1
2 2 1 2( ) ( ) ( )( ) ( ) ( )ikf ijf ijf
g B a B b Bg e a e b e
パワースペクトル
24
AR: ⼭を表現するモデルMA: ⾕を表現するモデルARMA: ⼭と⾕を表現するモデル
1 2
1 2
1 2 1 2
( ) 0.9 3 0.81(2) 0.9 2 0.81(3) 0.9 3 0.81 0.9 2 0.81
n n n n
n n n n
n n n n n n
y y y vy v v vy y y v v v
1
AR・MA次数とパワースペクトルの⼭⾕の関係
y a y v b vn jj
m
n j n j n jj
1 1
25
2 22 2 2
1 1
22
1
22
1
log ( ) log 2 log 1 2 log 1
1
1
22
0
m ijf ijfj jj j
m ijfjj
ijfjj
p f a e b e
a e
b e
k kk k
f
12
ARMA
スペクトルの⼭ の極⼩点
スペクトルの⾕ の極⼩点・⼀組の複素数に2次が必要
個の⼭ 次数個の⾕ 次数
・実根: または の⼭か⾕
22
122
21
1( )
1
ijfjj
m ijfjj
b ep f
a e
特性⽅程式
y a y v b vn jj
m
n j n j n jj
1 1
26
ARオペレータの特性⽅程式
MAオペレータの特性⽅程式1
1
( ) 1 0
( ) 1 0
mj
jj
jj
j
a B a B
b B b B
a(B)=0の根がすべて単位円外 定常
b(B)=0の根がすべて単位円外 反転可能
0jg
10
1
0 ( ) ij ii
n i n i ni
b b B b B
y b y v
特性⽅程式
27
の根がすべて単位円内 定常
の根がすべて単位円内 反転可能
2ii re f
10
mm m j
jj
a
に関する⽅程式の⽅が便利
本講義ではこちらを特性⽅程式とよぶ
1
1
0
0
mm m j
jj
m jj
j
a
b
r
特性⽅程式
28
2ii re f
r1 2
1 2
1 2 1 2
( ) 0.9 3 0.81
(2) 0.9 2 0.81
(3) 0.9 3 0.81 0.9 2 0.81
n n n n
n n n n
n n n n n n
y y y v
y v v v
y y y v v v
1
定常性の条件
特性⽅程式
nmnmnn yayay 11
011
mnn aya
a(B)に関する特性⽅程式の根がすべて単位円内
29
定常性の条件: 例
1m
2m
1||
0
1
1
1
aa
a
21 2
21 1 2
0
42
a a
a a a
30
共役複素数の場合実数2個の場合
定常性の条件:例
2m2
4 2211 aaa
21 24 0a a のとき
242 2211 aaa
1212212
211 12424 aaaaaaaa
1212212
211 12424 aaaaaaaa
21 24 0a a のとき
14)4(1|| 2221
21 aaaa
31
定常性の条件:例 2m
21 24 0a a のとき 12 1 aa
12 1 aa
21 24 0a a のとき 12 a
1 2-1-2
-1
1
0
32
2a
1a
複素根
実 根
ライン状のスペクトル
33
1 1 2 2 1 1 2 2n n n n n ny a y a y v b v b v 21 2
21 2
0.99 2 0.99
0.95 2 0.95
a a
b b
0.99, 450.95, 45
°°
rr
a(B)=0, b(B)=0 の根の が同じ場合
# AR model : y(n) = 0.9sqrt(3)y(n-1) - 0.81y(n-2) + v(n)z <- armaimp(arcoef=a, v=1.0, n=1000, lag=20)z$croot.ar
Rによる計算:AR(2)モデル
34
インパルス応答関数 ⾃⼰共分散関数
PARCOR パワースペクトル
特性根
# MA model : y(n) = v(n) -0.9sqrt(2)v(n-1) + 0.81v(n-2)z <- armaimp(macoef=b, v=1.0, n=1000, lag=20)z$croot.ma
Rによる計算: MA(2)モデル
35
インパルス応答関数 ⾃⼰共分散関数
PARCOR パワースペクトル
特性根
Rによる計算: ARMA(2,2)モデル
# ARMA model : y(n) = 0.9sqrt(3)y(n-1) - 0.81y(n-2)# + v(n) -0.9sqrt(2)v(n-1) + 0.81v(n-2)a <- c(0.9*sqrt(3), -0.81)b <- c(0.9*sqrt(2), -0.81)z <- armaimp(arcoef=a, macoef=b, v=1.0, n=1000, lag=20)z$croot.arz$croot.ma
36
インパルス応答関数 ⾃⼰共分散関数
PARCOR パワースペクトル
特性根
# ARMA model : y(n) = 0.99sqrt(2)y(n-1) - 0.99^2y(n-2)# + v(n) -0.95sqrt(2)v(n-1) + 0.95^2v(n-2)a <- c(0.99*sqrt(2), -0.9801)b <- c(0.95*sqrt(2), -0.9025)z <- armaimp(arcoef=a, macoef=b, v=1.0, n=1000, lag=20)z$croot.arz$croot.ma
ARMA(2,2)モデル
AR part
MA part
37
インパルス応答関数 ⾃⼰共分散関数
PARCOR パワースペクトル
特性根
多変量⾃⼰回帰モデル(MAR, VAR Model)
1
m
n j n j nj
y A y v
(1,1) (1, )
( ,1) ( , )
j j
j
j j
a aA
a a
11 1
1
0[ ] , [ ]
0
[ ]
[ ]
Tn n n ij ji
Tn m
Tn m
E v E v v W
E v v O n m
E v y O n m
38
(1) ( )( , , )Tn n ny y y 変量時系列
変量正規⽩⾊雑⾳: nv
vnは⾃分⾃⾝と独⽴(⽩⾊)vnは yn の過去と独⽴
多変量ARMAモデルも同様に定義できる
相互共分散関数
(1,1) (1, )
( ,1) ( , )
k k
k
k k
C CC
C C
39
( , ) ( ) ( )[ ][ ]
k n n kT
k n n k
i j i jC E y yC E y y
01
1( 1, 2, )
m
j jjm
k j k jj
C A C W
C A C k
Yule-Walker⽅程式1
m
n j n j nj
y A y v
多変量ARモデル(1,1) (1, )
( ,1) ( , )
k k
k
k k
a aA
a a
クロススペクトル
40
2( ) ( , )
( , ) cos 2 ( , ) sin 2
ikfsj k
k
k kk k
p f C s j e
C s j ikf i C s j ikf
12
12
2
2
( )
( )
ikfk
k
ikfk
f
f
P C e
C P e df
11 1
1
( ) ( )( )
( ) ( )
m
m mm
p f p fP f
p f p f
1 1 *( ) ( ) ( )( )f f fP A W A
1, ~ (0, )
m
n j n j n nj
y A y v v N W
yn が多変量ARモデルに従うとき11 1
1
2
0
0
( ) ( )( )
( ) ( )
( ) ( , )
m
m mmm
ijfjk j
j
f ff
f f
f
A AA
A A
A a j k e
a I
クロススペクトル
41
2 2
( )
2
( ) ( ) ( )
( ) arctan ( ) / ( )
( ) ( )
( )coh ( )
( ) ( )
jk
jk jk jk
jk jk jk
i fjk jk
jkjk
jj kk
f c f d f
f d f c f
p f f e
ff
p f p f
( ) ( ) ( )jk jk jkp f c f id f
( )jkp f
( )jkc f
( )jkd f
( )jk f
( )jk f
( )( )( )
coh ( )
jk
jk
jk
jk
ff
p ff
振幅スペクトル位相スペクトル
クロススペクトルコヒーレンシー
インパルス応答関数
B
A
A
A
B
A
B
インパルス応答関数(開ループ)
ステップ応答関数
インパルス応答関数(開ループ)フィードバックシステム
42
フィードバックシステムの解析
43
A
Bnynx
nu
nv
フィードバックシステム・農業⽣産物の⽣産量と価格・⽯油価格とエコカーの販売量など
周波数応答関数ではフィードバックシステムの解析は困難(unが⽩⾊雑⾳でない限りunとxnは無相関とならない)
⼯学的システム以外ではフィードバックを切断して実験を⾏うのは困難
2変量(xnとyn)の場合
⼀般の場合(省略)
2変量フィードバックシステム
44
1
1
n j n j nj
n j n j nj
y a x u
x b y v
aj Aのインパルス応答関数bj Bのインパルス応答関数un, vn 互いに無相関な外乱
問題xnとynの観測値からインパルス応答関数aj, bj および外乱un, vn の特性を推定
⽩⾊化の必要性通常の最⼩⼆乗法では,xnとun に相関があるために良い推定値が得られない.
unとvnをARモデルにより⽩⾊化する
1 1,n j n j n n j n j n
j ju c u v d v
2変量フィードバックシステム
45
1
1
n j n j nj
n j n j nj
y a x u
x b y v
1
1
n i n i ni
n i n i ni
u c u
v d v
1n n j n j
ju y a x
1
1 11
(1,1) , ( 1, 2,...), (1, 2) , (1, 2)j
j j j j i j ii
a c j a a a a c a
1 1
1 1
(1,1) (1, 2)
(2,1) (2,2)
n j n j j n i nj j
n j n j j n i nj j
y a y a x
x a y a x
1 1 1
1 1 1 1
( )n j n j i n i j n i j nj i j
n i n i j n j i j n i j ni j i i
y a x c y a x
y c y a x c a x
2変量ARモデル!ただし,変数間に制約あり
1,j m 1,j m
モデルを求める⽅法
46
1
(1,1) (1, 2)(2,1) (2, 2)
mj j n jn n
j j n jjn n
a a yya a xx
1.2変量ARモデル
2.ノイズunとvnのモデル(1,1), (2, 2)j j j jc a d a
3.A,Bのインパルス応答関数1 1
1 11 1
1 1
(1, 2) , ( 2, , ) , , ( 1, )
(2,1) , ( 2, , ) , , ( 1, )
m m
j j i j i j i j ii i
m m
j j i j i j i j ii i
a a c a j m a c a j m
b a d b j m b d b j m
周波数応答関数
47
2 2
1 1
1 1
2 2( ) , ( ) ,
m mijf ijf
j jj j
A f a e B f b e f
周波数応答関数
外乱のパワースペクトル2 2
2 2 2 2
1 1
( ) , ( )|1 |1| |
vv uuvv uum m
ijf ijfj j
j j
p f p fc e d e
閉ループの周波数応答関数(un から xn および vn から xn)2 1
2 1
1 ( ) ( ) ( ( ) ( )) (1 ( ) ( ))( ) ( ) ( ) ( ) ( )( ( ) ( )) ( )(1 ( ) ( ))
B f A f B f A f B f A fA f A f B f A f A f B f A f A f B f A f
11 111 12
1 121 22
( )(1 ( ) ( ))
( )(1 ( ) ( ))
(1 ( ) ( ))(1 ( ) ( ))
1 ( )( ) 1
B f A f B f
A f B f A f
A f B fB f A f
c cB fc cA f
パワースペクトルの分解
48
yn と xnのパワースペクトル2 2
11 122 2
21 22
( ) | | ( ) | | ( )( ) | | ( ) | | ( )
yy vv uu
xx vv uu
p f c p f c p fp f c p f c p f
パワー寄与率
11 111 12
1 121 22
( )(1 ( ) ( ))
( )(1 ( ) ( ))
(1 ( ) ( ))(1 ( ) ( ))
1 ( )( ) 1
B f A f B f
A f B f A f
A f B fB f A f
c cB fc cA f
2 211 12
2 221 22
| | ( ) | | ( )( ) , ( )( ) ( )
| | ( ) | | ( )( ) , ( )( ) ( )
vv uuyv yu
yy yy
vv uuxv xu
xx xx
c p f c p fr f p fp f p f
c p f c p fr f p fp f p f
パワー寄与率
49
2 * 2 2
1 12 2
2 2
1
1
( ) ( ) ( ) | ( ) |
| ( ) |( )
( )
| ( ) |( ) ( )
( )
ii ij j ij ij jj j
ij jij
iij
ik kjk
ij ikk ii
p f b f b f b f
b fr f
p f
b fs f r f
p f
パワースペクトルをノイズソース毎に分解したもの どのノイズに起因するものかが分かる ノイズの直交性を仮定している ノイズに相関がある場合:⼀般パワー寄与率
パワースペクトル
パワーの分解
パワー寄与率
パワー寄与率
50
51
船体運動データ(5変量)
5変量(⽅向⾓速度,横揺れ,縦揺れ,回転数,舵⾓)
52
Autopilot Control Manual Control
data(HAKUSAN) length <- dim(HAKUSAN)[1] y <- matrix(, length/2, 3) for( i in 1:length/2) {
y[i,1] <- HAKUSAN[i*2,1] # yaw ratey[i,2] <- HAKUSAN[i*2,2] # rolling y[i,3] <- HAKUSAN[i*2,4] # rudder
marfit(y,20) # Yule-Walker法marlsq(y,20) # 最⼩⼆乗法
クロススペクトル対⾓線:スペクトル上:振幅スペクトル下:位相スペクトル
⽅向⾓速度
舵⾓
縦揺れ
⽅向⾓速度 舵⾓縦揺れ
53
パワースペクトルとコヒーレンシー
対⾓線:パワースペクトル上: コヒーレンシー
⽅向⾓速度 舵⾓縦揺れ
⽅向⾓速度
舵⾓
縦揺れ
54
パワー寄与率
方向角速度
方向角速度
舵角
舵角
⽅向⾓速度
舵⾓
縦揺れ
パワー寄与率パワー分解
55
0.0 0.1 0.2 0.3 0.4 0.5
パワー寄与率マネタリーベース 国債⾦利
卸売物価 鉱⼯業⽣産指数
機械受注 為替相場為替相場
機械受注
⾦利
⾦利
為替
⾦利
IIP
受注
為替
物価
IIP
0.0 0.1 0.2 0.3 0.4 0.5
0.0 0.1 0.2 0.3 0.4 0.50.0 0.1 0.2 0.3 0.4 0.5
0.0 0.1 0.2 0.3 0.4 0.50.0 0.1 0.2 0.3 0.4 0.5
マネタリーベース
IIP
56