【機器學習】--EM演算法從初識到應用

LHBlog發表於2018-04-09

一、前述

Em演算法是解決數學公式的一個演算法,是一種無監督的學習。

EM演算法是一種解決存在隱含變數優化問題的有效方法。EM演算法是期望極大(Expectation Maximization)演算法的簡稱,EM演算法是一種迭代型的演算法,在每一次的迭代過程中,主要分為兩步:即求期望(Expectation)步驟和最大化(Maximization)步驟。

二、具體

1、高斯混合模型
       所謂混合高斯模型(GMM)就是指對樣本的概率密度分佈進行估計,而估計採用的模型(訓練模型)是幾個高斯模型的加權和(具體是幾個要在模型訓練前建立好)。每個高斯模型就代表了一個類(一個Cluster)。對樣本中的資料分別在幾個高斯模型上投影,就會分別得到在各個類上的概率。得出一個概率有很多好處,因為它的資訊量比簡單的一個結果要多,比如,我可以把這個概率轉換為一個 score ,表示演算法對自己得出的這個結果的把握。簡單的說就是:m個樣本{x1,...xm},可以分為k類,每個類別都服從高斯分佈。

2、EM演算法概述

EM演算法實際上是一個不停迭代計算的過程,根據我們事先估計的先驗概率A,得出一個結果B,再根據結果B,再計算得到結果A,然後反覆。
可以想象飯店的後方大廚,炒了兩盤一樣的菜,現在,菜炒好後從鍋中倒入盤,不可能一下子就分配均勻,所以先往兩盤中倒入,然後發現B盤菜少了,就從A中勻出一些,A少了,從B勻.......不停迭代。

給定訓練樣本{x1,...xm}(與k-means中的樣本一樣是沒有標籤的,因此EM也是非監督學習方法),認為他們滿足高斯分佈    , 求估計引數    

 


     

 

相關文章