機器學習_生成式模型與判別式模型
阿新 • • 發佈:2018-12-27
從概率分佈的角度看待模型。
給個例子感覺一下: 如果我想知道一個人A說的是哪個國家的語言,我應該怎麼辦呢?
- 生成式模型
我把每個國家的語言都學一遍,這樣我就能很容易知道A說的是哪國語言,並且C、D說的是哪國的我也可以知道,進一步我還能自己講不同國家語言。
- 判別式模型
我只需要學習語言之間的差別是什麼,學到了這個界限自然就能區分不同語言,我能說出不同語言的區別,但我哦可能不會講。
如果我有輸入資料 x ,並且想通過標註 y 去區分不同資料屬於哪一類,生成式模型是在學習樣本和標註的聯合概率分佈
而判別式模型是在學習條件概率
生成式模型
可以通過貝葉斯公式轉化為
,並用於分類,而聯合概率分佈
也可用於其他目的,比如用來生成樣本對
判別式模型的主要任務是找到一個或一系列超平面,利用它(們)劃分給定樣本到給定分類,這也能直白的體現出“判別”模型這個名稱。
最後給一個很簡單的例子說明一下:
假如我有以下獨立同分布的若干樣本 (x,y) ,其中 x 為特徵,
為標註,
則:
一些理論可看:On Discriminative vs Generative classifiers: A comparison of logistic regression and naive Bayes。
- 常見生成式模型
Naive Bayes
Gaussians
Mixtures of Gaussians
Mixtures of Experts
Mixtures of Multinomials
HMM
Markov random fields
Sigmoidal belief networks
Bayesian networks - 常見判別式模型
Linear regression
Logistic regression
SVM
Perceptron
Traditional Neural networks
Nearest neighbor
Conditional random fields