机器学习:生成式模型和判别式模型
決策函數Y=f(X)與條件概率分布P(Y|X)
決策函數Y=f(x):輸入一個x,它就輸出一個y值,這個y與一個閾值比較,根據比較結果判定x屬于哪個類別。
條件概率分布P(y|x):輸入一個x,它通過比較它屬于所有類的概率,然后預測時應用最大后驗概率法(MAP)即比較條件概率最大的類為x對應的類別。
舉個例子,對于一個二分類問題:對于Y=f(x)形式的分類模型,如果輸出Y大于某個閾值V就屬于類w1,否則屬于類w2;而對于P(y|x)形式的分類模型,分別計算條件概率,如果P(w1|x)大于P(w2|x),x就屬于類w1,否則屬于類w2。
?
生成式模型與判別式模型
生成式模型(Generative Model):由數據學習聯合概率密度分布P(x,y),然后生成條件概率分布P(y|x),或者直接學得一個決策函數?Y=f(x),用作模型預測。
判別式模型(Discriminative Model):由數據直接學習決策函數f(x)或者條件概率分布P(y|x)作為預測。
?
異同點
1.生成模型和判別模型都屬于監督學習的模型。
2.生成式模型可以根據貝葉斯公式得到條件概率分布P(y|x),但反過來不行,即判別方法不能還原出聯合概率分布P(x,y)。
3.生成方法學習聯合概率密度分布P(x,y),所以就可以從統計的角度表示數據的分布情況,能夠反映同類數據本身的相似度,但它不關心到底劃分各類的那個分類邊界在哪;判別方法不能反映訓練數據本身的特性,但它尋找不同類別之間的最優分類面,反映的是異類數據之間的差異。
?
常見模型分類
生成式模型:
- 判別式分析
- 樸素貝葉斯
- 混合高斯模型
- 隱馬爾科夫模型(HMM)
- 貝葉斯網絡
- Sigmoid Belief Networks
- 馬爾可夫隨機場(Markov Random Fields)
- 深度信念網絡(DBN)
判別式模型:
- 線性回歸(Linear Regression)
- 邏輯斯特回歸(Logistic Regression)
- K近鄰(KNN)
- 感知機
- 神經網絡(NN)
- 支持向量機(SVM)
- 決策樹
- 最大熵模型(maximum entropy model, MaxEnt)
- 高斯過程(Gaussian Process)
- 條件隨機場(CRF)
- 區分度訓練
- boosting方法
借用一個網友舉的通俗易懂的例子
假如你的任務是識別一個語音屬于哪種語言,對面一個人走過來,和你說了一句話,你需要識別出她說的到底是漢語、英語還是法語等。那么你可以有兩種方法達到這個目的:
(1)學習每一種語言,你花了大量精力把漢語、英語和法語等都學會了,我指的學會是你知道什么樣的語音對應什么樣的語言。然后再有人過來對你說,你就可以知道他說的是什么語音.
(2)不去學習每一種語言,你只學習這些語言之間的差別,然后再判斷(分類)。意思是指我學會了漢語和英語等語言的發音是有差別的,我學會這種差別就好了。
第一種方法就是生成方法,第二種方法是判別方法。
?
參考一篇比較判別式模型和生成式模型的paper:?
On Dicriminative vs. Generative classfier: A comparison of logistic regression and naive Bayes
總結
以上是生活随笔為你收集整理的机器学习:生成式模型和判别式模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 宝塔Linux面板安装教程(+Mysql
- 下一篇: bt种子文件变成html,bt种子文件是