廿TT

譬如水怙牛過窓櫺 頭角四蹄都過了 因甚麼尾巴過不得

Rcpp

RcppNumerical の optim_lbfgsで最尤推定がしたい(ポアソン回帰)

RcppNumerical パッケージには例題的にロジスティック回帰(RcppNumerical/fastLR.cpp at master · yixuan/RcppNumerical · GitHub)が実装されているので、ちょっとだけかえてポアソン回帰のコードを書いてみました。 C++ のコード: // [[Rcpp::depends(Rc…

Rcpp: カーネル密度推定のバンド幅を一個抜き交差検証法で決める

バンド幅 h をいろいろ変えて一個抜き交差検証法で評価した対数尤度が結構なめらかな形になったのでブレント法で最適なバンド幅を選んでみた。対象としたデータはこれ。h をいろいろ変えて一個抜き交差検証法で評価した対数尤度のプロットはこちら。選ばれた…

Rcpp で PMMH(パーティクルマージナルメトロポリス・ヘイスティングス)

R によるすごくかんたんなパーティクルフィルタの実装例 - 廿TT では分散パラメータを既知としていますが、分散パラメータも推定したい。パーティクルフィルタの重みから周辺尤度を出してランダム・ウォーク・メトロポリス・ヘイスティングスでサンプリング…

[Rcpp]PELT アルゴリズムで変化点の検出

PELT アルゴリズム は R の changepoint パッケージですでに実装されているけど、勉強のためあらためて書いてみる。観測値を とします。複数の変化点があり得る場合、なんらかの情報量規準を用いて変化点検知をするにはを最小化する変化点 を見つける必要が…

Albert (1992): 正規累積項目反応曲線のギブスサンプリングによる推定. Rcpp による実装例.

Albert, J. H. (1992). Bayesian estimation of normal ogive item response curves using Gibbs sampling. Journal of educational statistics, 17(3), 251-269. https://www.jstor.org/stable/1165149 のアルゴリズムがおもしろかったので紹介します. モデ…

Rcpp を用いたギブスサンプリングのかんたんな例題

参考文献 Rによるモンテカルロ法入門作者: C.P.ロバート,G.カセーラ,石田基広,石田和枝出版社/メーカー: 丸善出版発売日: 2012/08/23メディア: ムック購入: 1人 クリック: 23回この商品を含むブログ (2件) を見る計算統計学の方法―ブートストラップ・EMアル…

RcppNumerical でワイブル分布のパラメータの最尤推定

GitHub - yixuan/RcppNumerical: Rcpp Integration for Numerical Computing Libraries を参考に、optim_lbfgs を使ってワイブル分布のパラメータの最尤推定を試した.変数 f に対数尤度, g1, g2 に対数対数の一回微分, を与えています. // [[Rcpp::depends(R…

Rcpp の rexp の引数はレートじゃなくて平均だった。

こうやってやると R の rexp と結果が一致する. #include <Rcpp.h> using namespace Rcpp; // [[Rcpp::export]] NumericVector rexp2(int N, double lambda) { NumericVector out(N); for(int i=0; i</rcpp.h>

Rcpp で独立メトロポリスヘイスティングス

独立メトロポリス・ヘイスティングス法を用いたベイズ推測の簡単な例題 - 廿TT でやったのと同じことを Rcpp で書いてみた。 ハローワールド。C++ のコードはこう。 #include <Rcpp.h> using namespace Rcpp; double lik(double lambda, NumericVector dat) { double</rcpp.h>…