機器學習:生成模型和判別模型
經典提問:Navie Bayes和Logistic迴歸區別是什麼?
Navie Bayes是生成式模型,Logistic迴歸是判別式模型,二者的區別就是生成式模型與判別式模型的區別。
首先,Navie Bayes通過已知樣本求得先驗概率P(Y), 及條件概率P(X|Y), 對於給定的例項,計算聯合概率,進而求出後驗概率。也就是說,它嘗試去找到底這個資料是怎麼生成的(產生的),然後再進行分類。哪個類別最有可能產生這個訊號,就屬於那個類別。
優點:樣本容量增加時,收斂更快;隱變數存在時也可適用。
缺點:時間長;需要樣本多;浪費計算資源
相比之下,Logistic迴歸不關心樣本中類別的比例及類別下出現特徵的概率,它直接給出預測模型的式子。設每個特徵都有一個權重,訓練樣本資料更新權重w,得出最終表示式。梯度法。
優點:直接預測往往準確率更高;簡化問題;可以反應資料的分佈情況,類別的差異特徵;適用於較多類別的識別。
缺點:收斂慢;不適用於有隱變數的情況。
---------------------------------------------------------------------------------------------------------------
1. 定義
對o和s進行統計建模,通常有兩種方式:
(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) 條件隨機場