タグ

ブックマーク / wg-stein.blogspot.com (4)

  • 変分ベイズでディリクレ過程混合モデル(Blei論文を解く)

    DPMに対する変分ベイズ法を書いたBleiの論文、Variational inference for Dirichlet Process mixturesを解いてみました。 ざっと書き上げたまま確認をしておりませんので、間違いがあればご指摘ください。 式展開だけ妙に丁寧にしていますが、全体的に分かりにくい文だなぁ... https://www.box.net/shared/2e6k7abce5 Google DocumentsがPDF Web共有できればいいのに!

  • Probabilistic Latent Semantic Analysis : PLSA (Rで実装)

    前回のエントリからはや一ヶ月。月日が立つのは早いものです。 修論に向け、bag-of-featuresの実装をもくろんでおりますが、その一環としてPLSAを試してみました。 参考文献はこちら(リンク先pdf)。 T. Hofmann. Probabilistic latent semantic analysis. In Proceedings of the 15th Conference on Uncertainty in AI, 1999. ちょうど10年前に提案されたモデルですが、LDAの元となったり、現在でも多くの論文が発表されたりと、良い言語モデルのようです。 これをRで素直に実装したのがこちら。 plsi <- function(x, K=10, eps=0.9, max_itr=200,...){ #logsumexp logsumexp<-function(x,y,flg){

    syou6162
    syou6162 2009/11/28
  • 統計のための線形代数 in C++ (Boost uBLASの参考サイトとtipsまとめ)

    最近の僕はより大規模な実験を行うべく、これまで作ってきたtoy programをC++に移植する毎日です。 その過程でどうしてもベクトル・行列演算が必要になったので、時期標準の呼び声高いBoost内のベクトル・行列ライブラリ、uBLASを用いてみました。 今回の記事は、特に僕が必要であった演算を実現すべく、参考にしたサイト及びそれらをまとめたテンプレート関数群をご紹介します。 参考にした主なサイトは以下のとおりです。 Boost Basic Linear Algebra(家) Boost 数学関連ライブラリの使い方 yanoの日記 2で概要を掴み、1で詳細を詰め、3で必要なものを実装... がオススメです。 特に3の矢野さんの日記には大変助けられました。ほとんど全ての実装がblogを元にしているといっても過言ではありません(この場を借りて御礼申し上げます)。 先人達の知恵を集結し、まとめ

    syou6162
    syou6162 2009/10/15
    おおお!
  • ベータ分布の最尤推定(Rで実装)

    研究の息抜きに実装してみました。 参考文献は有名なこちらです。 Estimating a Dirichlet distribution (T.Minka, 2003) 二項分布の共役事前分布であるベータ分布から、n個の確率が生成されたとします。 この確率ベクトルからベータ分布のパラメータaとbを最尤推定にて求める関数が以下です。 newton_beta<-function(x,shape1=1.0,shape2=1.0,eps=0.0001){ euqlid<-function(y){ return(sqrt(sum(y*y))) } N <- length(x) alpha <- c(shape1,shape2) pn <- 0 while(TRUE){ palpha <- alpha #gradient g <- c(N * digamma(sum(alpha)) - N * diga

    syou6162
    syou6162 2009/07/24
  • 1