SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
北川源四郎「時系列解析入門」 第 9 章
柏野 雄太
バクフー株式会社
July 8, 2015
注意
この本は名著ではありますが,役割的に「時系列解析のチートシート」
的な存在で,全体的に記述があっさりしすぎています.
特に 9 章,10 章の状態空間モデルの部分は記述が少なすぎますので,
以下の書籍等で足りない部分を補う必要があります.
カルマンフィルタは通常工学部の大学 4 年生から修士 1 年のときに,
半期の講義+演習でガッツリやるようなレベルです.
状態空間モデル:
樋口知之「予測にいかす統計モデリングの基礎」
樋口知之+「データ同化入門」
カルマンフィルタ:
足立修一・丸田一郎「カルマンフィルタの基礎」
R のパッケージ dlm:
Petris+「R によるベイジアン動的線型モデル」
状態空間モデルの古典的入門書:
コマンダー&クープマン「状態空間時系列分析入門」
2 / 1
状態空間モデル
状態空間モデル
xn = Fnxn−1 + Gnvn (9.1)
yn = Hnxn + wn (9.2)
yn: 観測される時系列 次元 l
xn: 状態 (state) 次元 k
vn: システムノイズ(状態ノイズ) 平均ベクトル 0, 分散共分散行列 Qn
に従う m 次元の正規白色ノイズ
wn: 観測ノイズ 平均ベクトル 0, 分散共分散行列 Rn に従う l 次元の正
規白色ノイズ
Fn: k × k 次元
Gn: k × m 次元
Hn: l × k 次元
3 / 1
状態空間モデルの解釈
状態空間モデル
xn = Fnxn−1 + Gnvn (9.1)
yn = Hnxn + wn (9.2)
回帰モデルとしての解釈:
観測モデルは観測 yn を表現する回帰モデルで,xn が回帰係数,シス
テムモデルはその時間発展
信号理論としての解釈:
システムモデルは信号発生メカニズム,観測モデルはノイズが付加さ
れる様子を記述.
4 / 1
状態空間モデルの例: AR モデル
AR モデル
yn =
m∑
i=1
aiyn−i + vn (9.3)
xn = Fxn−1 + Gvn (9.4)
xn = (yn, yn−1, . . . , yn−m+1)T
F =





a1 a2 · · · am
1
...
1 0





, G =





1
0
...
0





(9.5)
H =
(
1 0 · · · 0
)
5 / 1
カルマンフィルタによる状態の推定
観測値 Yj =⇒ xn の推定
Yj が与えられたときの xn の条件付き分布 p(xn|Yj) を求める問題
j < n: 予測 (prediction)
j = n: フィルタ (filtering)
j > n: 平滑 (smooting)
6 / 1
カルマンフィルタ Kalman filter
[条件付き平均と共分散]
xn|j ≡ E(xn|Yj)
Vn|j ≡ E
(
(xn − xn|j)(xn − xn|j)T
)
(9.11)
[一期先予測]
xn|n−1 = Fnxn−1|n−1
Vn|n−1 = FnVn−1|n−1FT
n + GnQnGT
n (9.12)
[フィルタ]
Kn = Vn|n−1HT
n (HnVn|n−1HT
n + Rn)−1
xn|n = xn|n−1 + Kn(yn − Hnxn|n−1)
Vn|n = (I − KnHn)Vn|n−1 (9.13)
7 / 1
カルマンフィルタの逐次計算
x1|0 −→ x2|0 −→ x3|0 −→ x4|0 −→ x5|0 −→
⇓
x1|1 =⇒ x2|1 −→ x3|1 −→ x4|1 −→ x5|1 −→
⇓
x1|2 ←− x2|2 =⇒ x3|2 −→ x4|2 −→ x5|2 −→
⇓
x1|3 ←− x2|3 ←− x3|3 =⇒ x4|3 −→ x5|3 −→
⇓
x1|4 ←− x2|4 ←− x3|4 ←− x4|4 =⇒ x5|4 −→
⇓
[ノーテーション] ⇓: フィルタ, =⇒: 予測, ←−: 平滑化, −→: 長期予測
8 / 1
9.3 平滑化のアルゴリズム
YN = y1, · · · , yN が与えられたとき,途中状態の xn を推定する.
[固定区間平滑化]
An = Vn|nFT
n+1V −1
n+1|n
xn|N = xn|n + An(xn+1|N − xn+1|n)
Vn|N = Vn|n + An(Vn+1|N − Vn+1|n)AT
n (9.14)
9 / 1
9.4 状態の長期予測
Yn = {y1, · · · , yn} に基づいて,1 期先予想をクリア消し,j 期先の状
態 xn+j(j > 1) を推定する.
カルマンフィルタにより一期先の xn+1|n と xn+1|n を求める.
yn+1 は得られないが,Yn+1 = Yn と仮定する =⇒
xn+1|n+1 = xn+1|n, Vn+1|n+1 = Vn+1|n
カルマンフィルタの n + 1 期に対する 1 期先アルゴリズムから 2 期先
予測が得られる.
xn+2|n = Fn+2xn+1|n
Vn2|n = Fn+2Vn+1|nFT
n+2 + Gn+2Qn+2GT
n+2 (9.15)
[長期予測]
xn+i|n = Fn+ixn+i−1|n
Vni|n = Fn+iVn+i−1|nFT
n+i + Gn+iQn+iGT
n+i (9.16)
10 / 1
9.5 時系列の予測
Yn が与えられたときの yn+j の平均,分散共分散行列を
yn+j ≡ E(yn+j|Yn), dn+j|n ≡ Cov(yn+j|Yn) とすると,
yn+j|n = E(Hn+jxn+j + wn+j|Yn)
= Hn+jxn+j|n (9.17)
dn+j|n = Cov(Hn+jxn+j + wn+j|Yn)
= Hn+jCov(xn+j|Yn)HT
n+j + Hn+jCov(xn+j, wn+j|Yn)
+ Cov(xn+j, wn+j|Yn)HT
n+j + Cov(wn+j|Yn)
= Hn+jVn+j|nHT
n+j + Rn+j (9.18)
注: yn|n−1, dn|n−1 はカルマンフィルタ (9.13) ですでにもとめられている
11 / 1
9.5 時系列の予測  BLSALLFOOD の例
Figure: AR モデルの長期予測分布
12 / 1
9.6 時系列モデルの尤度計算とパラメータ推定
時系列モデルの尤度
l(θ) = −
1
2
{
lNlog2π +
N∑
n=1
log|dn|n−1|
+
N∑
n=1
(yn − yn|n−1)T
d−1
n|n−1(yn − yn|n−1)
}
(9.23)
ただし,このままでは計算が大変.
データに欠損がない AR の場合はユール・ウォーカー,最小二乗法,
PARCOR 法などのほうがいい.
仕方なく (9.23) を計算する場合でも,次元圧縮を考える.
13 / 1
9.6 時系列モデルの尤度計算とパラメータ推定
次元圧縮の方法: 時系列の次元が l = 1 で wn の分散が Rn = σ2 で一定の
場合
1 R = 1 としてカルマンフィルタ (カルマンゲインを計算すると R = σ2
でも R = 1 でも同じ)
2 以下の式により ˆσ2 を求める
ˆσ2
=
1
N
N∑
n=1
(yn − yn|n−1)2
˜dn|n−1
(9.28)
3 以下の式により対数尤度 l(θ∗) を求める
l(θ∗
) = −
1
2
{
Nlog2πˆσ2
+
N∑
n=1
log ˜dn|n−1+N
}
(9.29)
4 1, 2, 3 のステップを繰り返して,対数尤度 l(θ∗) を最大化して,最尤
推定値 θ∗ を求める
14 / 1
9.7 欠損値の補間
時系列の状態空間モデルを用いると欠測値があっても厳密に尤度計算
ができ,パラメータの最尤推定値を求めることができる.
l(θ) = −
1
2
∑
n∈I(N)
{
llog2π + log|dn|n−1+N |
+ (yn − yn|n−1)T
d−1
n|n−1+N (yn − yn|n−1)
}
(9.31)
パラメータが決まりモデルが与えられたら,カルマンフィルタの予測
分布 {xn|n−1, Vn|n−1},フィルタ分布 {xn|n, Vn|n} が求まり,その後で
平滑値 xn|N から欠測値 yn|N = Hnxn|n を求める.
推定誤差分散は dn|N = HnVn|N HT
n + Rn
15 / 1
9.7 欠損値の補間: BLSALLFOOD の例
Figure: 欠測値の補間
16 / 1
Python 版 カルマンフィルター
Python 版 カルマンフィルターの更新式
from␣numpy␣import␣dot
x␣=␣dot(F,␣x)␣+␣dot(B,␣u)
P␣=␣dot(F,␣P).dot(F.T)␣+␣Q
y␣=␣z␣-␣dot(H,␣x)
S␣=␣dot(H,␣P).dot(H.T)␣+␣R
K␣=␣dot(P,␣H.T).dot(np.linalg.inv(S))
x␣=␣x␣+␣dot(K,y)
P␣=␣(I␣-␣dot(K,␣H)).dot(P)
17 / 1
MATLAB 版 カルマンフィルター
MATLAB 版 カルマンフィルターの更新関数
function␣[xhat_new,P_new,␣G]␣=␣kf(A,␣B,␣Bu,␣C,␣Q,␣R,␣u,␣y,␣xhat,␣P)
␣␣xhat␣=␣xhat(:);
␣␣u␣=␣u(:);
␣␣y␣=␣y(:);
␣␣xhatm␣=␣A*xhat␣+␣Bu*u;
␣␣Pm␣=␣A*P*A’␣+␣B*Q*B’;
␣␣G␣=␣Pm*C/(C’*Pm*C␣+␣R);
␣␣xhat_new␣=␣xhatm␣+␣G*(y␣-␣C’*xhatm);
␣␣P_new␣=␣(eye(size(A))␣-␣G*C’)*Pm;
end
18 / 1

Mais conteúdo relacionado

Mais procurados

分割時系列解析(ITS)の入門
分割時系列解析(ITS)の入門分割時系列解析(ITS)の入門
分割時系列解析(ITS)の入門Koichiro Gibo
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展Shiga University, RIKEN
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
傾向スコアの概念とその実践
傾向スコアの概念とその実践傾向スコアの概念とその実践
傾向スコアの概念とその実践Yasuyuki Okumura
 
関数データ解析の概要とその方法
関数データ解析の概要とその方法関数データ解析の概要とその方法
関数データ解析の概要とその方法Hidetoshi Matsui
 
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割Ichigaku Takigawa
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価daiki hojo
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38horihorio
 
モンテカルロサンプリング
モンテカルロサンプリングモンテカルロサンプリング
モンテカルロサンプリングKosei ABE
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方joisino
 
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)daiki hojo
 
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編Koichi Hamada
 
データサイエンス概論第一=2-1 データ間の距離と類似度
データサイエンス概論第一=2-1 データ間の距離と類似度データサイエンス概論第一=2-1 データ間の距離と類似度
データサイエンス概論第一=2-1 データ間の距離と類似度Seiichi Uchida
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep LearningSeiya Tokui
 
PRML 8.2 条件付き独立性
PRML 8.2 条件付き独立性PRML 8.2 条件付き独立性
PRML 8.2 条件付き独立性sleepy_yoshi
 
Rで階層ベイズモデル
Rで階層ベイズモデルRで階層ベイズモデル
Rで階層ベイズモデルYohei Sato
 
PRML輪読#13
PRML輪読#13PRML輪読#13
PRML輪読#13matsuolab
 
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)Keiku322
 
統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-Shiga University, RIKEN
 
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー階層ベイズと自由エネルギー
階層ベイズと自由エネルギーHiroshi Shimizu
 

Mais procurados (20)

分割時系列解析(ITS)の入門
分割時系列解析(ITS)の入門分割時系列解析(ITS)の入門
分割時系列解析(ITS)の入門
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
傾向スコアの概念とその実践
傾向スコアの概念とその実践傾向スコアの概念とその実践
傾向スコアの概念とその実践
 
関数データ解析の概要とその方法
関数データ解析の概要とその方法関数データ解析の概要とその方法
関数データ解析の概要とその方法
 
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
 
モンテカルロサンプリング
モンテカルロサンプリングモンテカルロサンプリング
モンテカルロサンプリング
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方
 
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
 
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
[データマイニング+WEB勉強会][R勉強会] R言語によるクラスター分析 - 活用編
 
データサイエンス概論第一=2-1 データ間の距離と類似度
データサイエンス概論第一=2-1 データ間の距離と類似度データサイエンス概論第一=2-1 データ間の距離と類似度
データサイエンス概論第一=2-1 データ間の距離と類似度
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep Learning
 
PRML 8.2 条件付き独立性
PRML 8.2 条件付き独立性PRML 8.2 条件付き独立性
PRML 8.2 条件付き独立性
 
Rで階層ベイズモデル
Rで階層ベイズモデルRで階層ベイズモデル
Rで階層ベイズモデル
 
PRML輪読#13
PRML輪読#13PRML輪読#13
PRML輪読#13
 
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
Rによる特徴抽出 第48回R勉強会@東京(#TokyoR)
 
統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-
 
階層ベイズと自由エネルギー
階層ベイズと自由エネルギー階層ベイズと自由エネルギー
階層ベイズと自由エネルギー
 

Destaque

深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデルYuta Kashino
 
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...Yuta Kashino
 
Gunosy2015 09-16ts
Gunosy2015 09-16tsGunosy2015 09-16ts
Gunosy2015 09-16tsYuta Kashino
 
Opendata@tokyowebmining
Opendata@tokyowebminingOpendata@tokyowebmining
Opendata@tokyowebminingYuta Kashino
 
PyDataTokyo201-05-22
PyDataTokyo201-05-22PyDataTokyo201-05-22
PyDataTokyo201-05-22Yuta Kashino
 
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20Yuta Kashino
 
Chainer meetup2016 03-19pub
Chainer meetup2016 03-19pubChainer meetup2016 03-19pub
Chainer meetup2016 03-19pubYuta Kashino
 
Deep learning Libs @twm
Deep learning Libs @twmDeep learning Libs @twm
Deep learning Libs @twmYuta Kashino
 
機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回Yuta Kashino
 
日本のオープンデータプラットフォームをPythonでつくる
日本のオープンデータプラットフォームをPythonでつくる日本のオープンデータプラットフォームをPythonでつくる
日本のオープンデータプラットフォームをPythonでつくるYuta Kashino
 
Gunosy go2015 06-02
Gunosy go2015 06-02Gunosy go2015 06-02
Gunosy go2015 06-02Yuta Kashino
 
TensorFlow White Paperを読む
TensorFlow White Paperを読むTensorFlow White Paperを読む
TensorFlow White Paperを読むYuta Kashino
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02Yuta Kashino
 
PyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメPyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメYuta Kashino
 
線形カルマンフィルタの導出
線形カルマンフィルタの導出線形カルマンフィルタの導出
線形カルマンフィルタの導出Fumiya Watanabe
 
お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!Nagi Teramo
 
R勉強会@東京 - Tokyo.Rの紹介
R勉強会@東京 - Tokyo.Rの紹介R勉強会@東京 - Tokyo.Rの紹介
R勉強会@東京 - Tokyo.Rの紹介Yohei Sato
 
Tokyor10 opening
Tokyor10 openingTokyor10 opening
Tokyor10 openingYohei Sato
 

Destaque (20)

深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル深層学習ライブラリのプログラミングモデル
深層学習ライブラリのプログラミングモデル
 
Gunosy2015-06-03
Gunosy2015-06-03Gunosy2015-06-03
Gunosy2015-06-03
 
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...
FLAME: Probabilistic Model Combining Aspect Based Opinion Mining and Collabor...
 
Gunosy2015-08-05
Gunosy2015-08-05Gunosy2015-08-05
Gunosy2015-08-05
 
Gunosy2015 09-16ts
Gunosy2015 09-16tsGunosy2015 09-16ts
Gunosy2015 09-16ts
 
Opendata@tokyowebmining
Opendata@tokyowebminingOpendata@tokyowebmining
Opendata@tokyowebmining
 
PyDataTokyo201-05-22
PyDataTokyo201-05-22PyDataTokyo201-05-22
PyDataTokyo201-05-22
 
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
"Automatic Variational Inference in Stan" NIPS2015_yomi2016-01-20
 
Chainer meetup2016 03-19pub
Chainer meetup2016 03-19pubChainer meetup2016 03-19pub
Chainer meetup2016 03-19pub
 
Deep learning Libs @twm
Deep learning Libs @twmDeep learning Libs @twm
Deep learning Libs @twm
 
機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回機械学習ビジネス研究会 第01回
機械学習ビジネス研究会 第01回
 
日本のオープンデータプラットフォームをPythonでつくる
日本のオープンデータプラットフォームをPythonでつくる日本のオープンデータプラットフォームをPythonでつくる
日本のオープンデータプラットフォームをPythonでつくる
 
Gunosy go2015 06-02
Gunosy go2015 06-02Gunosy go2015 06-02
Gunosy go2015 06-02
 
TensorFlow White Paperを読む
TensorFlow White Paperを読むTensorFlow White Paperを読む
TensorFlow White Paperを読む
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
 
PyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメPyConJP2016: 週末サイエンティストのススメ
PyConJP2016: 週末サイエンティストのススメ
 
線形カルマンフィルタの導出
線形カルマンフィルタの導出線形カルマンフィルタの導出
線形カルマンフィルタの導出
 
お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!お前の逐モン、GETだぜ!
お前の逐モン、GETだぜ!
 
R勉強会@東京 - Tokyo.Rの紹介
R勉強会@東京 - Tokyo.Rの紹介R勉強会@東京 - Tokyo.Rの紹介
R勉強会@東京 - Tokyo.Rの紹介
 
Tokyor10 opening
Tokyor10 openingTokyor10 opening
Tokyor10 opening
 

Mais de Yuta Kashino

時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.sts時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.stsYuta Kashino
 
私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったかYuta Kashino
 
ベイジアンディープニューラルネット
ベイジアンディープニューラルネットベイジアンディープニューラルネット
ベイジアンディープニューラルネットYuta Kashino
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計Yuta Kashino
 
Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12Yuta Kashino
 
確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdwardYuta Kashino
 

Mais de Yuta Kashino (11)

時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.sts時系列データと確率的プログラミング tfp.sts
時系列データと確率的プログラミング tfp.sts
 
Python kansai2019
Python kansai2019Python kansai2019
Python kansai2019
 
Mlse20190208
Mlse20190208Mlse20190208
Mlse20190208
 
Ml15m2018 10-27
Ml15m2018 10-27Ml15m2018 10-27
Ml15m2018 10-27
 
Pydata2017 11-29
Pydata2017 11-29Pydata2017 11-29
Pydata2017 11-29
 
私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか私は如何にして心配するのを止めてPyTorchを愛するようになったか
私は如何にして心配するのを止めてPyTorchを愛するようになったか
 
Pycon2017
Pycon2017Pycon2017
Pycon2017
 
ベイジアンディープニューラルネット
ベイジアンディープニューラルネットベイジアンディープニューラルネット
ベイジアンディープニューラルネット
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計
 
Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12Wasserstein GAN Tfug2017 07-12
Wasserstein GAN Tfug2017 07-12
 
確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward
 

Último

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 

Último (11)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

Gunosy2015 07-07

  • 1. 北川源四郎「時系列解析入門」 第 9 章 柏野 雄太 バクフー株式会社 July 8, 2015
  • 2. 注意 この本は名著ではありますが,役割的に「時系列解析のチートシート」 的な存在で,全体的に記述があっさりしすぎています. 特に 9 章,10 章の状態空間モデルの部分は記述が少なすぎますので, 以下の書籍等で足りない部分を補う必要があります. カルマンフィルタは通常工学部の大学 4 年生から修士 1 年のときに, 半期の講義+演習でガッツリやるようなレベルです. 状態空間モデル: 樋口知之「予測にいかす統計モデリングの基礎」 樋口知之+「データ同化入門」 カルマンフィルタ: 足立修一・丸田一郎「カルマンフィルタの基礎」 R のパッケージ dlm: Petris+「R によるベイジアン動的線型モデル」 状態空間モデルの古典的入門書: コマンダー&クープマン「状態空間時系列分析入門」 2 / 1
  • 3. 状態空間モデル 状態空間モデル xn = Fnxn−1 + Gnvn (9.1) yn = Hnxn + wn (9.2) yn: 観測される時系列 次元 l xn: 状態 (state) 次元 k vn: システムノイズ(状態ノイズ) 平均ベクトル 0, 分散共分散行列 Qn に従う m 次元の正規白色ノイズ wn: 観測ノイズ 平均ベクトル 0, 分散共分散行列 Rn に従う l 次元の正 規白色ノイズ Fn: k × k 次元 Gn: k × m 次元 Hn: l × k 次元 3 / 1
  • 4. 状態空間モデルの解釈 状態空間モデル xn = Fnxn−1 + Gnvn (9.1) yn = Hnxn + wn (9.2) 回帰モデルとしての解釈: 観測モデルは観測 yn を表現する回帰モデルで,xn が回帰係数,シス テムモデルはその時間発展 信号理論としての解釈: システムモデルは信号発生メカニズム,観測モデルはノイズが付加さ れる様子を記述. 4 / 1
  • 5. 状態空間モデルの例: AR モデル AR モデル yn = m∑ i=1 aiyn−i + vn (9.3) xn = Fxn−1 + Gvn (9.4) xn = (yn, yn−1, . . . , yn−m+1)T F =      a1 a2 · · · am 1 ... 1 0      , G =      1 0 ... 0      (9.5) H = ( 1 0 · · · 0 ) 5 / 1
  • 6. カルマンフィルタによる状態の推定 観測値 Yj =⇒ xn の推定 Yj が与えられたときの xn の条件付き分布 p(xn|Yj) を求める問題 j < n: 予測 (prediction) j = n: フィルタ (filtering) j > n: 平滑 (smooting) 6 / 1
  • 7. カルマンフィルタ Kalman filter [条件付き平均と共分散] xn|j ≡ E(xn|Yj) Vn|j ≡ E ( (xn − xn|j)(xn − xn|j)T ) (9.11) [一期先予測] xn|n−1 = Fnxn−1|n−1 Vn|n−1 = FnVn−1|n−1FT n + GnQnGT n (9.12) [フィルタ] Kn = Vn|n−1HT n (HnVn|n−1HT n + Rn)−1 xn|n = xn|n−1 + Kn(yn − Hnxn|n−1) Vn|n = (I − KnHn)Vn|n−1 (9.13) 7 / 1
  • 8. カルマンフィルタの逐次計算 x1|0 −→ x2|0 −→ x3|0 −→ x4|0 −→ x5|0 −→ ⇓ x1|1 =⇒ x2|1 −→ x3|1 −→ x4|1 −→ x5|1 −→ ⇓ x1|2 ←− x2|2 =⇒ x3|2 −→ x4|2 −→ x5|2 −→ ⇓ x1|3 ←− x2|3 ←− x3|3 =⇒ x4|3 −→ x5|3 −→ ⇓ x1|4 ←− x2|4 ←− x3|4 ←− x4|4 =⇒ x5|4 −→ ⇓ [ノーテーション] ⇓: フィルタ, =⇒: 予測, ←−: 平滑化, −→: 長期予測 8 / 1
  • 9. 9.3 平滑化のアルゴリズム YN = y1, · · · , yN が与えられたとき,途中状態の xn を推定する. [固定区間平滑化] An = Vn|nFT n+1V −1 n+1|n xn|N = xn|n + An(xn+1|N − xn+1|n) Vn|N = Vn|n + An(Vn+1|N − Vn+1|n)AT n (9.14) 9 / 1
  • 10. 9.4 状態の長期予測 Yn = {y1, · · · , yn} に基づいて,1 期先予想をクリア消し,j 期先の状 態 xn+j(j > 1) を推定する. カルマンフィルタにより一期先の xn+1|n と xn+1|n を求める. yn+1 は得られないが,Yn+1 = Yn と仮定する =⇒ xn+1|n+1 = xn+1|n, Vn+1|n+1 = Vn+1|n カルマンフィルタの n + 1 期に対する 1 期先アルゴリズムから 2 期先 予測が得られる. xn+2|n = Fn+2xn+1|n Vn2|n = Fn+2Vn+1|nFT n+2 + Gn+2Qn+2GT n+2 (9.15) [長期予測] xn+i|n = Fn+ixn+i−1|n Vni|n = Fn+iVn+i−1|nFT n+i + Gn+iQn+iGT n+i (9.16) 10 / 1
  • 11. 9.5 時系列の予測 Yn が与えられたときの yn+j の平均,分散共分散行列を yn+j ≡ E(yn+j|Yn), dn+j|n ≡ Cov(yn+j|Yn) とすると, yn+j|n = E(Hn+jxn+j + wn+j|Yn) = Hn+jxn+j|n (9.17) dn+j|n = Cov(Hn+jxn+j + wn+j|Yn) = Hn+jCov(xn+j|Yn)HT n+j + Hn+jCov(xn+j, wn+j|Yn) + Cov(xn+j, wn+j|Yn)HT n+j + Cov(wn+j|Yn) = Hn+jVn+j|nHT n+j + Rn+j (9.18) 注: yn|n−1, dn|n−1 はカルマンフィルタ (9.13) ですでにもとめられている 11 / 1
  • 12. 9.5 時系列の予測  BLSALLFOOD の例 Figure: AR モデルの長期予測分布 12 / 1
  • 13. 9.6 時系列モデルの尤度計算とパラメータ推定 時系列モデルの尤度 l(θ) = − 1 2 { lNlog2π + N∑ n=1 log|dn|n−1| + N∑ n=1 (yn − yn|n−1)T d−1 n|n−1(yn − yn|n−1) } (9.23) ただし,このままでは計算が大変. データに欠損がない AR の場合はユール・ウォーカー,最小二乗法, PARCOR 法などのほうがいい. 仕方なく (9.23) を計算する場合でも,次元圧縮を考える. 13 / 1
  • 14. 9.6 時系列モデルの尤度計算とパラメータ推定 次元圧縮の方法: 時系列の次元が l = 1 で wn の分散が Rn = σ2 で一定の 場合 1 R = 1 としてカルマンフィルタ (カルマンゲインを計算すると R = σ2 でも R = 1 でも同じ) 2 以下の式により ˆσ2 を求める ˆσ2 = 1 N N∑ n=1 (yn − yn|n−1)2 ˜dn|n−1 (9.28) 3 以下の式により対数尤度 l(θ∗) を求める l(θ∗ ) = − 1 2 { Nlog2πˆσ2 + N∑ n=1 log ˜dn|n−1+N } (9.29) 4 1, 2, 3 のステップを繰り返して,対数尤度 l(θ∗) を最大化して,最尤 推定値 θ∗ を求める 14 / 1
  • 15. 9.7 欠損値の補間 時系列の状態空間モデルを用いると欠測値があっても厳密に尤度計算 ができ,パラメータの最尤推定値を求めることができる. l(θ) = − 1 2 ∑ n∈I(N) { llog2π + log|dn|n−1+N | + (yn − yn|n−1)T d−1 n|n−1+N (yn − yn|n−1) } (9.31) パラメータが決まりモデルが与えられたら,カルマンフィルタの予測 分布 {xn|n−1, Vn|n−1},フィルタ分布 {xn|n, Vn|n} が求まり,その後で 平滑値 xn|N から欠測値 yn|N = Hnxn|n を求める. 推定誤差分散は dn|N = HnVn|N HT n + Rn 15 / 1
  • 16. 9.7 欠損値の補間: BLSALLFOOD の例 Figure: 欠測値の補間 16 / 1
  • 17. Python 版 カルマンフィルター Python 版 カルマンフィルターの更新式 from␣numpy␣import␣dot x␣=␣dot(F,␣x)␣+␣dot(B,␣u) P␣=␣dot(F,␣P).dot(F.T)␣+␣Q y␣=␣z␣-␣dot(H,␣x) S␣=␣dot(H,␣P).dot(H.T)␣+␣R K␣=␣dot(P,␣H.T).dot(np.linalg.inv(S)) x␣=␣x␣+␣dot(K,y) P␣=␣(I␣-␣dot(K,␣H)).dot(P) 17 / 1
  • 18. MATLAB 版 カルマンフィルター MATLAB 版 カルマンフィルターの更新関数 function␣[xhat_new,P_new,␣G]␣=␣kf(A,␣B,␣Bu,␣C,␣Q,␣R,␣u,␣y,␣xhat,␣P) ␣␣xhat␣=␣xhat(:); ␣␣u␣=␣u(:); ␣␣y␣=␣y(:); ␣␣xhatm␣=␣A*xhat␣+␣Bu*u; ␣␣Pm␣=␣A*P*A’␣+␣B*Q*B’; ␣␣G␣=␣Pm*C/(C’*Pm*C␣+␣R); ␣␣xhat_new␣=␣xhatm␣+␣G*(y␣-␣C’*xhatm); ␣␣P_new␣=␣(eye(size(A))␣-␣G*C’)*Pm; end 18 / 1