1. 程式人生 > >機器學習:生成模型和判別模型

機器學習:生成模型和判別模型

經典提問:Navie Bayes和Logistic迴歸區別是什麼?

Navie Bayes是生成式模型,Logistic迴歸是判別式模型,二者的區別就是生成式模型與判別式模型的區別。

首先,Navie Bayes通過已知樣本求得先驗概率P(Y), 及條件概率P(X|Y), 對於給定的例項,計算聯合概率,進而求出後驗概率。也就是說,它嘗試去找到底這個資料是怎麼生成的(產生的),然後再進行分類。哪個類別最有可能產生這個訊號,就屬於那個類別。

優點:樣本容量增加時,收斂更快;隱變數存在時也可適用。

缺點:時間長;需要樣本多;浪費計算資源

相比之下,Logistic迴歸不關心樣本中類別的比例及類別下出現特徵的概率,它直接給出預測模型的式子。設每個特徵都有一個權重,訓練樣本資料更新權重w,得出最終表示式。梯度法。

優點:直接預測往往準確率更高;簡化問題;可以反應資料的分佈情況,類別的差異特徵;適用於較多類別的識別。

缺點:收斂慢;不適用於有隱變數的情況。

---------------------------------------------------------------------------------------------------------------

1. 定義

os進行統計建模,通常有兩種方式:

(1)生成模型

構建o和s的聯合分佈p(s,o) = p(s) *p(o|s)

基本思想:由資料學習聯合概率P(s,o),然後求出後驗概率P(s|o)作為預測的模型,即生成模型:P(s|o)= P(s,o)/ P(o)。

注意,這裡是先求出P(s,o)才得到P(s|o)的,然後這個過程還得先求出P(o)。

(2)判別模型

基本思想:有限樣本條件下建立判別函式,不考慮樣本的生成模型,直接研究預測模型。

典型判別模型:k近鄰,決策樹,logistic迴歸,支援向量機,感知機等。

典型生成模型:樸素貝葉斯、隱馬爾科夫模型等。

2. 對比

共同點:都用於監督學習;生成式模型可以根據貝葉斯公式得到判別式模型,但反過來不行。

生成方法的特點:

生成方法學習聯合概率密度分佈P(X,Y),所以就可以從統計的角度表示資料的分佈情況,能反映同類資料本身的相似度。但不關心分各類邊界在哪。

生成方法可以還原出聯合概率分佈P(Y|X),而判別方法不能。

生成方法的學習收斂速度更快,即當樣本容量增加的時候,學到的模型可以更快的收斂於真實模型。

當存在隱變數時,仍可以用生成方法學習。此時判別方法就不能用。

判別方法的特點:

判別方法直接學習的是決策函式Y=f(X)或者條件概率分佈P(Y|X)。不能反映訓練資料本身的特性。

但它尋找不同類別之間的最優分類面,反映的是異類資料之間的差異

直接面對預測,往往學習的準確率更高。

由於直接學習P(Y|X)或P(X),可以對資料進行各種程度上的抽象、定義特徵並使用特徵,因此可以簡化學習問題

總而言之:

 生成演算法嘗試去找到底這個資料是怎麼生成的(產生的),然後再對一個訊號進行分類。

基於你的生成假設,那麼那個類別最有可能產生這個訊號,這個訊號就屬於那個類別。

判別模型不關心資料是怎麼生成的,它只關心訊號之間的差別,然後用差別來簡單對給定的一個訊號進行分類。

3. 優缺點

判別式優點:

分類邊界更靈活,比使用純概率方法或生產模型得到的更高階。
能清晰的分辨出多類或某一類與其他類之間的
差異特徵。
在聚類、viewpoint changes, partial occlusion and scale variations中的效果較好。
適用於
較多類別的識別。

生成式優點:可以增量式訓練。

4. 主要模型

生成式:

Gaussians, Naive Bayes, Mixtures of multinomials高斯、樸素貝葉斯、混合指數

Mixtures of Gaussians, Mixtures of experts, HMMs混合高斯、專家混合
Sigmoidal belief networks, Bayesian networks反曲信念網路、貝葉斯網路
Markov random fields,EM,LDA馬爾可夫隨機場、EM演算法、線性判別分析(類似PCA)

判別式:

logistic regressionlogistic迴歸

線性迴歸以及各種迴歸(什麼叫回歸呢,就是用函式擬合點,使得誤差最小,然後用各種下降法使得誤差最小)

SVMs支援向量機
traditional neural networks傳統神經網路
Nearest neighbor最近鄰演算法
Conditional random fields(CRF) 條件隨機場