作者:szx_spark
監督學習可以分為生成方法與判別方法,所學到的模型可以分為生成模型與判別模型。
生成模型
生成模型由數據學習聯合概率分布\(P(X,Y)\),然后求出條件概率分布\(P(Y|X)\)作為預測的模型,即生成模型:
\[P(Y|X)=\frac{P(X,Y)}{P(X)} \]這樣的方法之所以稱為生成方法,是因為模型表示了給定輸入X產生輸出Y的生成關系。典型的生成模型有:朴素貝葉斯法和隱馬爾可夫模型
判別模型
判別方法由數據直接學習決策函數\(f(X)\)或者條件概率分布\(P(Y|X)\)作為預測的模型,即判別模型,判別方法關心的是對給定的輸入X,應該預測什么樣的輸出Y,典型的判別模型包括:K近鄰法、感知機、決策樹、邏輯斯蒂回歸模型、最大熵模型、SVM、CRF等等
區別
生成方法的特點
- 生成方法可以還原出聯合概率分布\(P(X,Y)\),而判別方法則不能;
- 生成方法的學習收斂速度更快,即當樣本容量增加的時候,學到的模型可以更快的收斂於真實模型;
- 當存在隱變量時,仍可以用生成方法學習,此時判別方法就不能用。
判別方法的特點
- 判別方法直接學習的是條件概率\(P(Y|X)\)或決策函數\(f(X)\),直接面對預測,往往學習的准確率更高;
- 由於直接學習\(P(Y|X)\)或\(f(X)\),可以對數據進行各種程度上的抽象、定義特征並使用特征,因此可以簡化學習問題。
上述內容摘自於李航老師的《統計學習方法》一書。
我的理解是,生成模型在學習過程中可以得到聯合分布,但其最終學習的目標可以不是聯合分布,可以與判別模型一樣學習條件概率分布。聯合分布雖然能提供更多的信息,但也需要更多的樣本和更多的計算。因此,對於樣本數量較少的問題,優先考慮判別模型。