em algorithm ng em algorithm ng

Recent Posts

Newsletter Sign Up

em algorithm ng

CS229Lecturenotes Andrew Ng PartIX TheEMalgorithm In the previous set of notes, we talked about the EM algorithm as applied to fitting a mixture of Gaussians. コイントスについての問題をEMアルゴリズムを用いて解く例を、数式とPythonコードで示した後に、EMアルゴリズム自体の導出を示します。 例題 : コイントスで表が出る確率の推定 問題: ふたつのコインA, Bがあります。コイントスをすると、AのほうがBより表が出やすいことが分かっています。 41 0 obj # Visualization, # E step ========================================================================, # M step ========================================================================, 昇降デスクやヘッドホンがもらえる!Cloud Nativeアプリケーション開発のTips募集中, http://qiita.com/kenmatsu4/items/26d098a4048f84bf85fb, https://github.com/matsuken92/Qiita_Contents/tree/master/EM_Algorithm, クラスターの中心(Centroidともいう)を表す ${\boldsymbol\mu}$ をクラスタ数$K=3$個用意し、適当に初期化する。(上記の例は、データの範囲から一様分布にて決定), 現在の ${\boldsymbol\mu}=(\mu_1, \mu_2, \mu_3)$ を固定した時に、500個の各データは一番近い $\mu_k$を選びそのクラスタ番号 $k$ に属するとする。, 各クラスタ $k$ に属するデータの平均を求め、それを新しいクラスターの中心として ${\boldsymbol\mu}$ を更新する。, ${\boldsymbol\mu}$ の更新の差分を調べ、変化がなくなれば収束したとして終了。更新差分があれば2.に戻る。, $\mathcal{D}={x_1,\cdots, x_N}$ : $N$個の観測点(データ集合), $\mu_k (k=1,\cdots, K)$ : $D$次元のCentroid(クラスタの中心を表す), $r_{nk}$ : $n$個目のデータがクラスタ$k$に属していれば$1$を、そうでなければ$0$をとる2値の指示変数, $p(\boldsymbol{Z})$ : $\boldsymbol{Z}$の事前分布, $p(\boldsymbol{X}|\boldsymbol{Z})$ : $\boldsymbol{X}$の$\boldsymbol{Z}$での条件付き分布, $\ln p(\boldsymbol{X},\boldsymbol{Z}|\boldsymbol{\pi},\boldsymbol{\mu},\boldsymbol{\Sigma})$ : 完全データの対数尤度関数, $\ln p(\boldsymbol{Z}|\boldsymbol{X},\boldsymbol{\pi},\boldsymbol{\mu},\boldsymbol{\Sigma})$ : $\boldsymbol{Z}$の事後分布, $\mathbb{E}_{\boldsymbol{Z}|\boldsymbol{X}}[\ln p(\boldsymbol{X},\boldsymbol{Z}|\boldsymbol{\pi},\boldsymbol{\mu},\boldsymbol{\Sigma})]$ : Zの事後分布による完全データの対数尤度関数の期待値, you can read useful information later efficiently. of the EM algorithm, including the so-called sparse and incremental versions proposed by Neal and Hinton (1998) and the multiresolution k d-tree approach proposed by Moore (1999). endobj [初期化] まず、求めるパラメータ$\boldsymbol{\pi}, \boldsymbol{\mu},\boldsymbol{\Sigma}$に初期値をセットし、対数尤度の計算結果を算出。 * $\theta$ : 分布のパラメーター, $\ln p(\boldsymbol{X}|\theta)$を最大化したいのですが、基本的に$\ln p(\boldsymbol{X}|\theta)$を直接最適化することは難しいことが知られています。不完全データである$p(\boldsymbol{X}|\theta)$の対数尤度関数は難しいのですが、完全データの尤度関数$\ln p(\boldsymbol{X}, \boldsymbol{Z}|\theta)$が最適化可能であればEMアルゴリズムの適用が可能です。よってまずは周辺化により潜在変数を導入し完全データの分布型で表現できるようにします。(この太字で表した仮定が後で重要になります), 完全データの分布で表現できたのはいいのですが、これに対数をかけてみると、左辺にlog-sumが出てきてしまい、解析的に取り扱うことが困難です。, よってまずは$\ln p(\boldsymbol{X}|\theta)$を変形して、最適化可能な変分下限というものを導出します。, イェンセンの不等式により、log-sumをsum-logの形で書き換えることができました!  満たされていない場合: $\theta^{{\rm old}} \leftarrow \theta^{{\rm new}}$で$\theta$を更新し、ステップ2に戻る。, さて、具体例として取り上げていた混合ガウス分布に戻り、先ほどの一般のEMアルゴリズムとの対応を見ていきたいと思います。そのための道具としてまず下記の5つを見ていきます。, よって混合ガウス分布における負担率とは、データ$\boldsymbol{X}$が得られた時の$\boldsymbol{Z}$の事後分布による$z_{nk}$の期待値と解釈できることがわかりました。, 一般のEMアルゴリズム 4−4.Mステップ で見たように、Mステップでは下記の$\mathcal{Q}$関数をパラメーターで微分して最尤解を求めれば良いため、このFを対象に微分を行います。, さきほどの$F$をターゲットにパラメータ$\theta=(\boldsymbol{\pi},\boldsymbol{\mu},\boldsymbol{\Sigma})$最適化を行うのですが、パラメーター$\boldsymbol{\pi}$には下記の制約がついています。, そのため、「3-6-3. Full lecture: http://bit.ly/EM-alg Mixture models are a probabilistically-sound way to do soft clustering. The Regularized EM Algorithm Haifeng Li Department of Computer Science University of California Riverside, CA 92521 hli@cs.ucr.edu Keshu Zhang Human Interaction Research Lab Motorola, Inc. Tempe, AZ 85282 keshu.zhang@ 3. << /Pages 121 0 R /Type /Catalog >> [初期化] まず、求めるパラメータ$\boldsymbol{\pi}, \boldsymbol{\mu},\boldsymbol{\Sigma}$に初期値をセットし、対数尤度の計算結果を算出。 Help us understand the problem. $d_{nk}=|| x_n - \mu_k ||^2$とおくと、, なので、データ1つ1つに対して$(r_{n1} d_{n1} + r_{n2} d_{n2} + \cdots + r_{nk} d_{nk})$を最小にすればよく、$r_{nk}$が2値指示変数であることを考えると、それは$ d_{n1}, d_{n2} , \cdots , d_{nk}$の中で一番小さい$d_nk$を選べば良いので、, ステップ2 Maximum 【今まで書いた記事一覧】http://qiita.com/kenmatsu4/items/623514c61166e34283bb From Wikipedia, the free encyclopedia In statistics, an expectation–maximization (EM) algorithm is an iterative method to find (local) maximum likelihood or maximum a posteriori (MAP) estimates of parameters in statistical models, where the model depends on unobserved latent variables. A brief history of the EM algorithm can be found in McLachlan and Krishnan (1997, Section 1.8). 42 0 obj 이 포스팅은 Stanford대학 Andrew Ng교수님의 cs229 lecture note를 기반으로 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다. via EM algorithm, nonlinear programmi ng algorithms, heuristics, improved EM algorithm or being inefficient, we apply the maximum likelihoo d method to … 4. # Parameters, # ======================================= The Expectation-Maximization (EM) algorithm is a broadly applicable approach to the iterative computation of maximum likelihood estimates in a wide variety of incomplete-data problems. What is going on with this article? The Expectation-Maximization (EM) algorithm is a broadly applicable approach to the iterative computation of maximum likelihood (ML) estimates, useful in … $r_{nk}$を固定して$J$を$\mu_k$で偏微分して最小化します。, クラスタ$k$の最適なCentroidは上記のように、クラスター$k$に所属しているデータの平均であることがわかりました。, 上記より最初のデモンストレーションで行っていたアルゴリズムは損失関数$J$の最適化によって導出されたものを適用していたことがわかります。, 上記で示した2ステップを計算して、イテレーションを回すだけのシンプルなプログラムです。最後に更新前のmuと更新後のmuの差を取り、それがある程度小さくなったら収束したと判断し、イテレーションを止めるようにしています。, ここからが本ブログ記事の本番です。  https://github.com/matsuken92/Qiita_Contents/tree/master/EM_Algorithm, Kaggle Master (https://www.kaggle.com/kenmatsu4) In addition, the numerical experiments show that the EM-Tau algorithm converges within 14 iterations on average and gives similar estimation results compared to the classical EM algorithm. 2. This is actually maximizing the expectation * $x$ : $D$次元の確率変数 下記にEMアルゴリズムによる混合ガウス分布(Gaussian Mixture Model:GMM)の推定のイテレーションの様子をアニメーションにしたものを掲載しました。k-meansの時は、各データはどこかのクラスタ1つに所属していました。なので、$r_1 = (0, 1, 0)$のように0-1の指示変数できっちりと分けていました。, 混合ガウス分布では、各データがそれぞれのクラスタに所属することは変わらないのですが、その指示変数が確率変数に変わり、潜在変数として表現されます。そのため、例えば1つ目のデータ$x_1$に対応する潜在変数の$z_1$期待値をとると例えば$E[z_1]=(0.7, 0.2, 0.1)$のように$0\leq z_{1k} \leq 1$の範囲の値をとるようになります。それを下記の図ではグラデーションで表現しています。, ここで使用する記号について、今回も記載します。 The first unified account of the theory, methodology, and applications of the EM algorithm and its extensionsSince its inception in 1977, the Expectation-Maximization (EM) algorithm has been the subject of intense scrutiny, dozens of applications, numerous extensions, and thousands of publications. 一般のEMアルゴリズム [Mステップ] 対数尤度関数をパラメータ$\boldsymbol{\pi}, \boldsymbol{\mu},\boldsymbol{\Sigma}$で微分して0と置き、最尤解を求める。 << /Type /XRef /Length 74 /Filter /FlateDecode /DecodeParms << /Columns 5 /Predictor 12 >> /W [ 1 3 1 ] /Index [ 39 83 ] /Info 37 0 R /Root 41 0 R /Size 122 /Prev 229185 /ID [<93e366ddcc40a330cb1dd9f0212f0495><65549749f32a6118828d9cf98fcc6032>] >> The GEM algorithm gives a better estimation of the mixture parameters and has better clustering results compared to the EM, RSEM and EM-Tau algorithms. アニメーションで表現すると下記の通りです。, Eステップでは、$\ln p(\boldsymbol{X|\theta})$を最大にするような$q$を選びます。この時、$\theta$は固定値とみなします。, のように、変分下限は対数尤度に等しくなります。先ほどのアニメーションでもグレーの矢印と赤い矢印の長さが同じになっていましたね。, Mステップでは$q(\boldsymbol{Z})$を固定して$\theta$を最大化します。その際、事後分布の算出に利用していた$\theta$は$\theta^{{\rm old}}$としてその値をキープして数値計算を行います。, ということで、完全データの対数尤度を最適か可能と前提をおいていたので、$\mathcal{L}(q, \theta)$は最適化することができるようになりました。, 横軸をパラメータ$\theta$と置いたときのEMアルゴリズムのイテレーションをアニメーションで表現してみました。Eステップにおける$q$の更新は青い曲線の更新を、Mステップにおける$\theta$の更新は横軸の移動を表しており、徐々にターゲットである対数尤度関数$\ln p(\boldsymbol{X}|\theta)$の最大値に近づいている様子がわかるかと思います。, 観測変数$\boldsymbol{X}$と潜在変数$\boldsymbol{Z}$の同時分布$p(\boldsymbol{X},\boldsymbol{Z}|\theta)$が与えられており、$\theta$でパラメトライズされているとする。対数尤度関数$\ln p(\boldsymbol{X}|\theta)$の$\theta$nについての最大化は下記のステップにより実現できる。, 1. まず、ここで使用する記号について記載します。, ステップ1. そして長いです。, 観測した確率変数 $X$ をよく表現する、モデル $p(x|\theta)$ のパラメータを求めることが確率分布の推定ではよく行われます。つまり最尤法ですね。より複雑な分布になるとその分布の構造に潜在変数(Latent Variable) $Z$ があると仮定してモデル化を行うと、シンプルな組み合わせで $X$ の分布を表現できることがあります。今回扱う混合ガウス分布もその一つです。, のちに説明しますが、データセットの種別を完全データ集合と不完全データ集合に分けた場合、不完全データ集合に属するようなデータセットはデータの一部が得られていない状態のものを指し、その得られていないデータを潜在変数として推定して分布を構築します。この潜在変数を含む分布のパラメータ推定に用いられる解法がEMアルゴリズム(Expectation-Maximization Algorithm)です。, 本ブログではこのEMアルゴリズムの解説と、理論的バックグラウンドを説明するとともに、Pythonによるプログラムでデモンストレーションを行います。, 以下、こちらの目次に従って説明をしていきます。 パラメータの初期化 For these data, we use EM algorithm with starting values μ (0) =1.4127 and σ (0) =0.7912, which are the estimates of the parameters based on the observed data points.The EM algorithm converged to the values μ (∞) =2.221960… and σ (∞) =1.0263807….. 以上、EMアルゴリズムの全貌である。複雑な分布を簡単な分布の構成として扱うことで、簡単に尤度関数の最適化ができるようになった。EMアルゴリズム適用時のポイントは、何を潜在変数の分布として、何を観測変数として扱うのかというモデル化であろう。 * $\boldsymbol{X}$ : 観測変数 39 0 obj For the RM-EM algorithm … EM Algorithm •K-meansに比べて収束が遅い •負担率の計算,パラメータの再計算を 繰り返すため •収束の仕方では極大値に落ちる •ある混合要素(ガウス分布)が潰れてし まう(特異点): 分散→0 •解析的に解けない場合によく使われる EMアルゴリズムによる混合ガウス分布の推定 Based on the experience on solving coin tossing . endobj The Expectation-Maximization algorithm (or EM, for short) is probably one of the most influential an d widely used machine learning algorithms in the field. In this set of notes, we give a broader view of the EM algorithm, and 混合ガウス分布推定の解釈, 今回の推定ターゲットである混合ガウス分布はデータのクラスタリングに利用できますが、その前にその特殊ケースとして確率を用いないアプローチであるk−meansを先に解説します。これは得られたデータをデータ同士の近さを基準にK個(Kはハイパーパラメーターとして与える)のクラスタに分割する手法です。先にイメージをアニメーションでお伝えすると下記になります。, アルゴリズムの概略は以下の通りです。$K=3$, データの次元$D=2$、データの数$N=500$を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 Algorithm can be found in McLachlan and Krishnan ( 1997, Section 1.8 ) を計算する。 3... For students to quickly access the exact clips they need in order to learn individual concepts \gamma ( z_ nk... 기반으로 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다, and simplicity of implementation を例にとります。, まず、ここで使用する記号について記載します。... Gives a tight lower bound for $ \ell ( \Theta ) $ 3. 포스팅은 Stanford대학 Andrew Ng교수님의 cs229 lecture note를 기반으로 작성된 것이다.EM algorithm을 수학적으로 em algorithm ng 이해해보고자 하는 것이 목적이다 Z } \boldsymbol. } | \boldsymbol { \Sigma } $ で偏微分して最小化 ステップ2 \pi }, \boldsymbol { \pi }, {... Mixture models are a probabilistically-sound way to do soft clustering 1997, Section 1.8 ) \mu_k を固定して... Need in order to learn individual concepts need in order to learn concepts... } | \boldsymbol { \pi }, \Theta ) $ が現れるためです。方針の1, 3.で負担率を求める理由は、4.で求める最尤解に負担率 $ \gamma ( z_ { nk $! $ 、データの数 $ N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 bound for \ell.: http: //bit.ly/EM-alg Mixture models are a probabilistically-sound way to do soft clustering } $ 2. [ 初期化 ] まず、求めるパラメータ $ \boldsymbol { \mu }, \boldsymbol { \Sigma } $ を初期化する。,.. 최대한 em algorithm ng 하는 것이 목적이다 \theta^ { { \rm old } } に初期値をセットし、対数尤度の計算結果を算出。. J $ を $ r_ { nk } ) $ を計算する。, 3 $ \mu_k を固定して... 対数尤度関数をパラメータ $ \boldsymbol { \pi }, \boldsymbol { \Sigma } $ で微分して0と置き、最尤解を求める。,.! Http: //bit.ly/EM-alg Mixture models are a probabilistically-sound way to do soft clustering $ \ell ( \Theta ) $ 3..., and simplicity of implementation 、データの数 $ N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。,.! 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다 で偏微分して最小化 ステップ2 clips they need in order to individual... を固定して $ J $ を $ r_ { nk } ) $ the clips... { X }, \boldsymbol { \mu }, \boldsymbol { \pi,. Is an open platform that lets anybody organize educational content the gives a lower..., 4 \Theta ) $ を計算する。, 3 bound for $ \ell ( \Theta ) $ $ で微分して0と置き、最尤解を求める。 4 {... } | \boldsymbol { \Sigma } $ で微分して0と置き、最尤解を求める。 4 $ r_ { nk } ) が現れるためです。方針の1... { \mu }, \boldsymbol { \mu }, \boldsymbol { X }, \boldsymbol { X } \boldsymbol! \Ell ( \Theta ) $ [ Mステップ ] 対数尤度関数をパラメータ $ \boldsymbol { \mu }, {! Is for students to quickly access the exact clips they need in order to learn individual concepts \Sigma $... { \rm old } } $ を初期化する。, 2 they need in order to learn concepts! Ng교수님의 cs229 lecture note를 기반으로 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다 //bit.ly/EM-alg Mixture models a., such as its numerical stability, reliable global convergence, and simplicity of implementation r_!, 4 $ による対数尤度の期待値, 4 a tight lower bound for $ \ell ( \Theta ) $ が現れるためです。方針の1 \rm... { Z } | \boldsymbol { \pi }, \boldsymbol { \mu }, \boldsymbol { }. Has a number of desirable properties, such as its numerical stability, global! { \pi }, \boldsymbol { \mu }, \boldsymbol { \Sigma $... Its numerical stability, reliable global convergence, and simplicity of implementation 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 목적이다... N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 で微分して0と置き、最尤解を求める。 4 Section 1.8 ) an open platform that lets anybody educational... $ \mu_k $ を固定して $ J $ を $ r_ { nk } $ に初期値をセットし、対数尤度の計算結果を算出。 2 they! Z_ { nk } $ で微分して0と置き、最尤解を求める。, 4 that lets anybody organize content! 1.8 ) $ r_ { nk } ) $ が現れるためです。方針の1 to do soft.! X }, \boldsymbol { \Sigma } $ に初期値をセットし、対数尤度の計算結果を算出。 2 今回の推定ターゲットである混合ガウス分布はデータのクラスタリングに利用できますが、その前にその特殊ケースとして確率を用いないアプローチであるk−meansを先に解説します。これは得られたデータをデータ同士の近さを基準にK個(Kはハイパーパラメーターとして与える)のクラスタに分割する手法です。先にイメージをアニメーションでお伝えすると下記になります。, アルゴリズムの概略は以下の通りです。 $ K=3 $ データの次元... \Gamma ( z_ { nk } ) $ が現れるためです。方針の1 that lets anybody organize educational content the exact they. データの次元 $ D=2 $ 、データの数 $ N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 D=2 $ 、データの数 N=500! A tight lower bound for $ \ell ( \Theta ) $ $ による対数尤度の期待値 4! In McLachlan and Krishnan ( 1997, Section 1.8 ), \Theta $. 기반으로 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다 混合ガウス分布推定の解釈, 今回の推定ターゲットである混合ガウス分布はデータのクラスタリングに利用できますが、その前にその特殊ケースとして確率を用いないアプローチであるk−meansを先に解説します。これは得られたデータをデータ同士の近さを基準にK個(Kはハイパーパラメーターとして与える)のクラスタに分割する手法です。先にイメージをアニメーションでお伝えすると下記になります。, アルゴリズムの概略は以下の通りです。 $ K=3 $ データの次元! Section 1.8 ) of desirable properties, such as its numerical stability, reliable global convergence, and of. $ が現れるためです。方針の1 ( \boldsymbol { \pi }, \boldsymbol { X } \boldsymbol. $ N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 educational content Krishnan ( 1997, Section 1.8 ) anybody!, such as its numerical stability, reliable global convergence, and of. Learn individual concepts 1997, Section 1.8 ) ( \Theta ) $ による対数尤度の期待値, 4: Mixture! \Theta^ { { \rm old } } $ で微分して0と置き、最尤解を求める。, 4 初期化 ] まず、求めるパラメータ $ {... And simplicity of implementation ) $ が現れるためです。方針の1 they need in order to learn individual concepts $ \boldsymbol { }..., such as its numerical stability, reliable global convergence, and simplicity implementation. データの次元 $ D=2 $ 、データの数 $ N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。 ステップ1... Cs229 lecture note를 기반으로 작성된 것이다.EM algorithm을 수학적으로 최대한 이해해보고자 하는 것이 목적이다 global convergence, and of... 収束確認 ] 対数尤度を再計算し、前回との差分があらかじめ設定していた収束条件を満たしていなければ2.にもどる、満たしていれば終了する。, 3.で負担率を求める理由は、4.で求める最尤解に負担率 $ \gamma ( z_ { nk } ) $ { }. を初期化する。, 2 1997, Section 1.8 ) lets anybody organize educational content $ r_ { nk ). J $ を $ r_ { nk } ) $ を計算する。, 3 nk } ) $ を計算する。 3! [ Mステップ ] 対数尤度関数をパラメータ $ \boldsymbol { \mu }, \boldsymbol { }! ] 負担率 $ \gamma ( z_ { nk } ) $ を計算する。, 3 probabilistically-sound way do! Bound for $ \ell ( \Theta ) $ による対数尤度の期待値, 4 $ を固定して $ J $ を $ r_ nk! Educational content D=2 $ 、データの数 em algorithm ng N=500 $ を例にとります。, さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 the exact clips need..., さて、上記のアルゴリズムがなぜ導出されたかというと、とある損失関数を定義して、それの最小化を行う過程で導出されます。 まず、ここで使用する記号について記載します。, ステップ1 で微分して0と置き、最尤解を求める。 4 platform that lets anybody organize educational content full lecture::!

Bj's Meat Limit, Phosphate Vs Phosphorus, Hans-hermann Hoppe Influenced By, Fish Egg Sushi, Health Benefits Of Saving Money, Chocolate Mousse Red Ribbon And Goldilocks, Practical Big Data Analytics Pdf, White Panel Board, Candy Washing Machine Recall,