タグ

EMに関するma_koのブックマーク (3)

  • Numpyを使って混合ガウス分布のEMアルゴリズムを実装 - Wolfeyes Bioinformatics beta

    Pythonの練習ということで,Numpyを使って混合ガウス分布のEMアルゴリズムによる最尤推定を実装してみた.そもそもPythonを書いた経験があまり無いうえに,全く知らないNumpyを使って行列演算や確率計算をしようということで,手探りでかなり苦戦してしまったが,何とか形にはなったと思う.ということで,次の勉強に活かすためにもここでコードを振り返ってみる. 注意:以下のコードはテストデータでしか確かめてないので多分どこかバグってる.あと確率値に対数を取ってないので,値が限りなく小さくなってゼロ除算になることがある. とっかかり まずscipyあたりで多変量正規分布が無いか探す 普通の正規分布scipy.stats.normはあるが多変量は無いっぽい 自分で関数を書く 逆行列とか転置とか書き方が複数あって混乱する 今回はとりあえず動いたらいいので適当に使う np.matrixとnp.ar

  • EM algorithm(EMアルゴリズム、Expectation Maximization algorithm)について - データサイエンティスト上がりのDX参謀・起業家

    EMアルゴリズムはいろんなところで使われます。 基的には未知パラメータの推定方法の一種です。 とりあえず箇条書でまとめます。 提案論文:Maximun likelihood from incomplete data via the EM algorithm. Dempster AP, Laird NM and Rubin DB. JRSS B. 39,1-38. 1977. 提案者のRubinは欠測分野、因果推論の権威で次の教科書も書いています。 Statistical Analysis with Missing Data (Wiley Series in Probability and Statistics) 作者: Roderick J. A. Little,Donald B. Rubin出版社/メーカー: Wiley-Interscience発売日: 2002/09/09メディア:

    EM algorithm(EMアルゴリズム、Expectation Maximization algorithm)について - データサイエンティスト上がりのDX参謀・起業家
  • オンラインEMアルゴリズム - DO++

    EMアルゴリズム(Expectation Maximizationアルゴリズム、期待値最大化法、以下EMと呼ぶ)は、データに観測できない隠れ変数(潜在変数)がある場合のパラメータ推定を行う時に有用な手法である。 EMは何それという人のために簡単な説明を下の方に書いたので読んでみてください。 EMのきちんとした説明なら持橋さんによる解説「自然言語処理のための変分ベイズ法」や「計算統計 I―確率計算の新しい手法 統計科学のフロンティア 11」が丁寧でわかりやすい。 EMは教師無学習では中心的な手法であり、何か観測できない変数を含めた確率モデルを作ってその確率モデルの尤度を最大化するという枠組みで、観測できなかった変数はなんだったのかを推定する場合に用いられる。 例えば自然言語処理に限っていえば文書や単語クラスタリングから、文法推定、形態素解析、機械翻訳における単語アライメントなどで使われる。

    オンラインEMアルゴリズム - DO++
  • 1