2014-05-01から1ヶ月間の記事一覧

逐次モンテカルロ/(粒子|パーティクル|モンテカルロ)フィルタを実装してみた

このポストの概要 逐次モンテカルロ法 (Sequential Monte Carlo: SMC)/粒子フィルタ(Particle Filter)は、状態空間モデルの状態変数の系列を観測値の系列 のみから推定するアルゴリズム パッケージを使ってもいいんだど、お勉強も兼ねて自分でコード書いてみ…

ブラウン橋(Brownian bridge)作りたい

簡単なんだけど、やってなかったなって。ブラウン橋言ってる人もいるし、ブラウニアン橋いってる人もいてどっちが正しいのかわかんねぇけど、ここではブラウン橋でいく。ブラウン橋は、を標準ブラウン運動として と書かれる確率過程だと思っておけばいい。こ…

配列(array)の書き方がよくわからんかったのでメモ

R

行列でもたまに混乱するのに、更に次元が上がった多次元配列になんてなるともう???ってなる低能です。もちろん、配列を使うのではなくて、"行列を要素に持つリスト"を使うのも手かとは思いますが、arrayの方が便利そうだったので、行列を一次元だけあげた…

AR(1)モデルのメモ

今更感あるが、諸事情によりメモ。やりたいことは(定常性を仮定した)AR(1)モデルの自己相関係数がちゃんと理論値と一致するのかを見たいって話。 AR(1)モデルとは AR(1)は、適当な確率過程 が、 に従うようなモデル。ここで、 は独立な平均0、標準偏差の正規…

適当なクラスにある特定のメンバーがあるかないかで処理を切り分ける

C++

c++ - Check if a class has a member function of a given signature - Stack Overflow に習う感じでやるのがよいか。SFINAE〜って奴です。 ここではToStringというintを引数にとってstd::stringを返すメンバーが任意のクラスにあるかないかで処理を切り分…

F# interactive(fsi.exe)で起動時に自動的にライブラリを読み込む

F#

コンソールでちゃっとF#をエンジョイしたい、そんな時、あると思います。 ただ、同時にMathNet.Numericsなんかのライブラリを参照したい時、いちいち読み込むのがめんどいので、そいつを自動化しようという話。使いそうなライブラリは全部 C:\FsLib に突っ込…

多次元配列を操作する際、深いネスト作ってループすんのやめたい

R F#

高次元の配列に対する処理を書こうと思うと、その各次元に対応したループインデックスに対するfor分のネストがえらいことになる、そんな時あると思います。 F#でやるならどうしようかと考えて以下のようなコードを書いた。List.collectが便利ってことに気が…

数値→文字列の変換はto_string関数で一発だ in C++11

C++

C++での「数値→文字列」の変換。 昔はstringstreamを使って数行コードを書いて変換しなきゃならんかったもんが、C++11だとto_string関数一発でいけるようになっていた。進化するC++ありがたい。 #include <iostream> #include <string> int main() { const std::string x = std</string></iostream>…