Gaussian Discriminant Analysis
本文將介紹第一個generative learning algorithm,稱為Gaussian Discriminant Analysis(GDA 高斯判別演算法),很有趣的是演算法是generative learning algorithm,卻叫discriminant analysis。
在該模型中,我們假定是多變數正態分布,在討論GDA模型之前,我們先討論下多變數正態分布的性質.
1. 多變數正態分布
n維多變數正態分布,也稱為多變數高斯分布,參數包括:
- mean vector
- covariance matrix 協方差矩陣
其中 ,是對稱並且半正定矩陣,多變數高斯分布可以寫為: ,密度函數為
對於一個任意的變數X分布為 ,其平均值為:
一個vector-valued 任意變數Z的協方差定義為:
協方差也可以寫為:
如果 ,那麼
下圖1給出了一些高斯分布的例子,其中
- 最左邊的是 ,這樣的高斯分布稱為標準正態分布
- 中間的是 ,可以看出協方差更小就更加陡峭
- 最右邊是 ,可以看出協方差更大,高斯分布變得更加扁平
我們在看一些額外的例子
其中 ,而協方差矩陣如下所示
圖2中
- 最左邊是標準正態分布
- 當我們增加協方差矩陣中的非對角線元素,密度會沿著 壓縮,增加越多,壓縮的更加明顯
同樣我們可以給出當非獨角仙元素減小時,密度會如何變化
其中協方差矩陣分別為
2. GDA模型
當我們遇到一個分類問題,其中輸入特徵 是連續的,就可以採用GDA模型。GDA模型採用多變數正態分布對 進行建模,模型如下:
將分布用密度函數表示即可得到:
所有數據下的log-likelihood是:
通過最大化 我們發現參數的最大似然估計是:
tuzho這個可以採用 的方法來進行計算,並不難,這裡就略過
GDA模型給出來的結果可以看作如圖所示,圖中給出了訓練集和兩個高斯分布的輪廓。圖中給出了確定邊界的直線,在直線上 ,在另一邊 是最可能的輸出,在另一邊預測
3. 討論:GDA VS 邏輯回歸
GDA與邏輯回歸之間有一個有趣的關係,如果將 看作 的函數,那麼就可以寫作以下形式 ,其中 是 組成的函數,這與邏輯回歸的形式完全相同
GDA和logistic regression在相同的訓練集上會給出不同的邊界,哪個結果更好?
我們說明了如果 是多變數高斯分布,那麼 就可以寫為邏輯函數。但是反過來並不成立。這意味著GDA對數據的建模假設比邏輯回歸更強烈。這意味著當建模假設成立的時候,GDA會更好的擬合數據是 一個更好的模型。當 符合高斯分布時,GDA是漸進有效(asymptotically efficient), 非正式地說,當訓練集數目很大時,沒有模型能顯著地比GDA更好。
想對而言,通過構造更弱的假設,邏輯回歸的魯棒性更強並且對錯誤的建模假設更不敏感。有很多不同的假設會導致 符合邏輯回歸的形式,例如 會導致 是邏輯回歸形式。邏輯回歸在泊松分布的數據上也可以work,但是如果採用GDA在這樣的數據上,那麼結果就可能很差。
因此我們總結如下:
- GDA構造了更強的建模假設並且當建模假設成立的時候is more data efficient(也就是需要更少的訓練數據來學習很好的效果)
- Logistic regression構造了較弱的建模假設,魯棒性更強,當數據並不符合高斯分布的時候,在一定的數據量下,邏輯回歸比GDA更好。因此在實踐中,邏輯回歸比GDA應用更加廣泛。
推薦閱讀:
※Learning Explanatory Rules from Noisy Data 閱讀筆記1
※AutoML——降低機器學習門檻的利器
※如何理解機器學習?
※記第一次參加的數據挖掘比賽
TAG:機器學習 |