世界を目指すIT少年の学習記録

世界を股にかけITを武器に暮らしていく!ことを目指す少年の備忘録。本のレビュー、勉強したこと、学んだことなどを記録していきます。

状態空間モデルで時系列分析の概観を把握した 9月振り返り

どちらかというと統計のことをまとめるブログチックになってきてしまったが、本職はウェブマーケターです笑

いつかAdWordsの話とかも鬼のように暇だったら書きたいな。

SEO系は書くかもしれん。

 

状態空間モデルを使った時系列分析

前のポストでも書いたように、状態空間モデルとは単純に下記図のように

「観測データの裏にある状態が存在していて、その状態から観測データが生成される」というものです。

それに加えて、現在の状態は一つ前の状態に依存関係がある。

という仮定を置いていますが、そんなに概念としては難しくないです。

f:id:kenjioda:20161008165212p:plain

参照 

Rでベイジアン動的線形モデルを学ぶ(2):まずは状態空間のコンセプトと基本のローカルレベル・モデルから - 六本木で働くデータサイエンティストのブログ

 で、この状態θtを推定して(tはある時点の時間通常は現在)、そのθtに乱数が加わってYtが生成されるので、

θtをYtとかの観測したデータから推定&乱数部分を推定

という二つの推定があるわけですね。事前に理論的に分かっている場合も制御とかではあるみたいですが、と友人が言ってました(詳細は知りません)

 

じゃあ実際、状態空間モデルって全体の流れとしてどうやるのっていうのはこのようになっています。

Step1 状態空間モデルの「型」を決める
Step2 その「型」にいれるパラメタを推定する
Step3 Step2で推定されたパラメタを「型」に入れてカルマンフィルターを回す
Step4 カルマンフィルターの結果を使ってスムージングする

dlmの使い方 | 時系列分析 | Logics of Blue より

型というのは、どういうモデルにしたら良さそうか っていう分析者の設定するものですね。

でStep3,4のカルマンフィルターは実は一部の動的線形モデル(モデル部分が線形で、かつ乱数部分が正規分布に従うもの)にしか使えないのですが、Dlmライブラリーは動的線形なので、基本カルマンフィルターでおkですね。

という超絶ざっくりまとめ

 

ちゃんとやりたい人は理論と実装両方必要になってくると思うので、下記に理論面、実装面で大変御世話になったリンクや文献をまとめました。

Let's Check it Out!

 

参考になったリンクや文献

理論面で役に立つ文献
予測にいかす統計モデリングの基本―ベイズ統計入門から応用まで (KS理工学専門書)

予測にいかす統計モデリングの基本―ベイズ統計入門から応用まで (KS理工学専門書)

 

まずはこれと下記のコマンダーの本で、状態空間モデルとはを学ぶことができる。

コマンダーの本は線形かつ乱数部分が正規分布に従う、動的線形モデルというものに限定しているが、むしろ非線形のものってどう考えるのかは私は分からないので、ほとんどの人は動的線形だけでもいい気がする。

 

粒子フィルタの基礎と応用: フィルタ・平滑化・パラメータ推定

で、これは非線形かつ乱数が正規分布に限定されない時にも使えて、かつ高速、データが増えても対応できまっせな粒子フィルタを解説している論文。

すっっごい分かりやすい

 

 

実装面で役に立つ文献

dlmの使い方 | 時系列分析 | Logics of Blue

神リンクがこれ。基本これで学べるかもね。これと下のAn Introduction to State Space Time Series Analysis Summaryを参照すれば実装はできる。

 

 

このコマンダーの本とそれをRで実装したすべてのコードを載せてくれている神Summary(英語だけど別にコードは基本英語ですもんねw)

An Introduction to State Space Time Series Analysis Summary

 

状態空間時系列分析入門

状態空間時系列分析入門

 

これは数式的には一番簡単だし分かりやすいからこれから入るのがいいかもしれませんね。

 

 

Rによるベイジアン動的線形モデル (統計ライブラリー)

Rによるベイジアン動的線形モデル (統計ライブラリー)

 

 ぶっちゃけこれで理論も勉強できる人は、これだけでいいんですが、相当数学が得意で基本すべて独学でできる人だと思う。

僕はこれで理論を学ぶのはほぼほぼ諦めたので、あくまでコードの書き方の参照として使っています。

まだ、最後の粒子フィルタの実装方法はわかっていないんだが、そもそも非線形ガウスにする必要性がある時が少なそうだから一旦保留

 

 

今後学習していくこと

一通り時系列は学んだかなぁ感があるが、まだ他の解析方法とかわからないので下記二つどっちかやろうかなと悩んでいるなう。

一緒に気軽に勉強会したい!みたいな人いたらやりましょう。

 

1つ目:An Introduction to Statistical Learning with Applications in R

スタンフォードとかでも教科書として使われているものらしく、

無料!かつ網羅できて、Rのコードでの実装もあって、さらにそれぞれの手法のメリットだけでなくデメリットも詳細に書かれているのがすごいなと思った。これの重回帰のみをちょっと読んだのでね。

Pdf: 

http://www-bcf.usc.edu/~gareth/ISL/ISLR Sixth Printing.pdf

目次はこんな感じ!ベイズがないけどね

  1. Introduction
  2. Statistical Learning
  3. Linear Regression
  4. Classification
  5. Resampling Methods
  6. Linear Model Selection and Regularization
  7. Moving Beyond Linearity
  8. Tree-Based Methods
  9. Support Vector Machines
  10. Unsupervised Learning

 

2つ目:UdacityのData Analyst Nanodegree

こちらは結構重いけどw

UdacityのNanodegree取るときちんと証明書としてもらえて、履歴書にもかけたり、Nanodegree plusにすると就職先も保証されるというものがあります(確かアメリカのビザとかある人でないと保証はされないみたいだけど)

そんだけ、これを全部やれば世界レベルでのデータサイエンティストと言えるということですね。

www.udacity.com

シラバスは以下

1. Statistics
2. Introduction to Data Analysis (Python)
3. Data Wrangling with MongoDB or SQL

ちなみにData Wranglingとはデータ加工っていう意味ですかね

Data munging or data wrangling is loosely the process of manually converting or mapping data from one "raw" form into another format that allows for more convenient consumption of the data with the help of semi-automated tools.

4. Data Analysis with R

5. Introduction to Machine Learning

6. Data Visualization and D3.js

7. A/B Testing

 

このように理論だけ!とかじゃなくて実践的なデータサイエンティストのスキルを身につけるためのコースになっています。

 

Nanodegreeに登録すると、200ドル/ 月ですが、普通にそれぞれのコースは無料で受けることもできるので、試しにSan Jose State Universityが提供している

Statisticsを受講し始めてみました。

www.udacity.com

ふだんは出勤中と土日に主に勉強しているのですが、これならスマホで見れるから続けられるといいな。が、コーディングが必要なものについてはどうしようかなぁとは思っています。

内容はこんなん

f:id:kenjioda:20161008171221p:plain

 

そして先生のKatyさん(左)が美人なのでモチベーションが上がります笑

 

f:id:kenjioda:20161008171328p:plain

 

その他学習中のこと

 読み終わった本

文章は接続詞で決まる (光文社新書)

文章は接続詞で決まる (光文社新書)

 

日本語って難しいよねっていうことで学んだけどぜんぜん落とし込めていないからまとめなきゃ。 

ハッカーと画家 コンピュータ時代の創造者たち

ハッカーと画家 コンピュータ時代の創造者たち

 

 いやーおもろかったポールグレアム。さすが、天才ハッカーで成功した起業家で、世界で最も有名なベンチャーキャピタリストですね。

普通のことを考えていたら、普通のことしかできないんだぜ You Only Live Once!っていう話でしたw

 

自由な人生を手に入れる教科書: お金・時間・場所 あらゆる束縛がなくなる

自由な人生を手に入れる教科書: お金・時間・場所 あらゆる束縛がなくなる

 

 Kindle Unlimitedで読んだ。まあわかるよこの気持ちもね。アフィリエーターの本

 

Twitter カンバセーション・マーケティング ビジネスを成功に導く

Twitter カンバセーション・マーケティング ビジネスを成功に導く"会話"の正体

 

 Twitter社行った時に頂いた本。割と面白かったし、こういうSNSの活用事例あるんやなぁってね。SNSの活用って結構難しいんだよねとふだん実感しています。苦笑

 

 

コンビニ人間

コンビニ人間

 

 久々に小説読んだけど、なんか不思議な小説でした。二日で読み終わった笑

 

 読んでいる本

 

 最近日本酒が豊富な飲み屋に行っているのですが、これのおかげでわかります。ありがたや。

 

小さなチーム、大きな仕事〔完全版〕: 37シグナルズ成功の法則

小さなチーム、大きな仕事〔完全版〕: 37シグナルズ成功の法則

  • 作者: ジェイソン・フリード,デイヴィッド・ハイネマイヤー・ハンソン,黒沢 健二,松永 肇一,美谷 広海,祐佳 ヤング
  • 出版社/メーカー: 早川書房
  • 発売日: 2012/01/11
  • メディア: 単行本
  • 購入: 21人 クリック: 325回
  • この商品を含むブログ (36件) を見る
 

 まあまあおもろいけどこれ落とし込むのむずくね?w

 

論点思考

論点思考

 

どのように解くかよりも、何を解くかが大事なんですよね。っていうのを社会人に成ってから一番実感していることであるものの、実践できていないので、まずはフレームワーク知ろう的な。良書。 

 

ブログ書くのたいへんー だけど月一では書くと決めているから頑張ろう。