
機器學習實現(xiàn)與分析之五(高斯判別分析)
高斯判別分析(GDA)簡介
首先,高斯判別分析的作用也是用于分類。對于兩類樣本,其服從伯努利分布,而對每個類中的樣本,假定都服從高斯分布,則有:
這樣,根據(jù)訓練樣本,估計出先驗概率以及高斯分布的均值和協(xié)方差矩陣(注意這里兩類內(nèi)部高斯分布的協(xié)方差矩陣相同),即可通過如下貝葉斯公式求出一個新樣本分別屬于兩類的概率,進而可實現(xiàn)對該樣本的分類。
GDA詳細推導
那么高斯判別分析的核心工作就是估計上述未知量?,μ0,μ1,Σ?,μ0,μ1,Σ。如何來估計這些參數(shù)?又該最大似然估計上場了。其對數(shù)似然函數(shù)為:
注意此函數(shù)第一部分只和μ0,Σμ0,Σ有關,第二部分只和μ1,Σμ1,Σ有關,最后一部分只和??有關。最大化該函數(shù),首先求??,先對其求偏導數(shù):
此處II為指示函數(shù)。令其為0,可求解出:
同樣地,對μ0μ0求偏導數(shù):
令其為0,可求解得:
根據(jù)對稱性可直接得出:
下面對ΣΣ求偏導數(shù),由于似然函數(shù)只有前面兩部分與ΣΣ有關,則將前兩部分改寫如下:
進而有:
這里推導用到了:
令其為0,從而求得:
上面的推導似乎很復雜,但其結果卻是非常簡潔。通過上述公式,所有的參數(shù)都已經(jīng)估計出來,需要判斷一個新樣本x時,可分別使用貝葉斯求出p(y=0|x)和p(y=1|x),取概率更大的那個類。
實際計算時,我們只需要比大小,那么貝葉斯公式中分母項可以不計算,由于2個高斯函數(shù)協(xié)方差矩陣相同,則高斯分布前面那相同部分也可以忽略。實際上,GDA算法也是一個線性分類器,根據(jù)上面推導可以知道,GDA的分界線(面)的方程為:
取對數(shù)展開后化解,可得:
若,則
這就是GDA算法的線性分界面。
GDA實現(xiàn)
這里也采用前面講邏輯回歸生成的數(shù)據(jù)來進行實驗,直接load進來進行處理,詳見邏輯回歸。GDA訓練代碼如下:
View Code
測試代碼:
View Code
訓練結果如下,訓練樣本中,正負樣本均為100個,故?=0.5:
改變正負樣本數(shù)量,即相當于改變先驗概率,則實驗結果如下(相應的??的值顯示在圖像標題):
算法分析
1.與邏輯回歸的關系
根據(jù)上面的結果以及貝葉斯公式,可有
而
那么,令
則
這不就是邏輯回歸的形式么?
在推導邏輯回歸的時候,我們并沒有假設類內(nèi)樣本是服從高斯分布的,因而GDA只是邏輯回歸的一個特例,其建立在更強的假設條。故兩者效果比較:
a.邏輯回歸是基于弱假設推導的,則其效果更穩(wěn)定,適用范圍更廣
b.數(shù)據(jù)服從高斯分布時,GDA效果更好
c.當訓練樣本數(shù)很大時,根據(jù)中心極限定理,數(shù)據(jù)將無限逼近于高斯分布,則此時GDA的表現(xiàn)效果會非常好
2.為何要假設兩類內(nèi)部高斯分布的協(xié)方差矩陣相同?
從直觀上講,假設兩個類的高斯分布協(xié)方差矩陣不同,會更加合理(在混合高斯模型中就是如此假設的),而且可推導出類似上面簡潔的結果。
假定兩個類有相同協(xié)方差矩陣,分析具有以下幾點影響:
A.當樣本不充分時,使用不同協(xié)方差矩陣會導致算法穩(wěn)定性不夠;過少的樣本甚至導致協(xié)方差矩陣不可逆,那么GDA算法就沒法進行
B.使用不同協(xié)方差矩陣,最終GDA的分界面不是線性的,同樣也推導不出GDA的邏輯回歸形式
3.使用GDA時對訓練樣本有何要求?
首先,正負樣本數(shù)的比例需要符合其先驗概率。若是預先明確知道兩類的先驗概率,那么可使用此概率來代替GDA計算的先驗概率;若是完全不知道,則可以公平地認為先驗概率為 50%。
其次,樣本數(shù)必須不小于樣本特征維數(shù),否則會導致協(xié)方差矩陣不可逆,按照前面分析應該是多多益善。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關鍵? 在循環(huán)神經(jīng)網(wǎng)絡(RNN)家族中,長短期記憶網(wǎng)絡(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報考條件詳解與準備指南? ? 在數(shù)據(jù)驅動決策的時代浪潮下,CDA 數(shù)據(jù)分析師認證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計的實用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實施重大更新。 此次更新旨在確保認 ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務的價值轉化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時代,BI ...
2025-07-10SQL 在預測分析中的應用:從數(shù)據(jù)查詢到趨勢預判? ? 在數(shù)據(jù)驅動決策的時代,預測分析作為挖掘數(shù)據(jù)潛在價值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢結束后:分析師的收尾工作與價值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢結束)并非工作的終點,而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報考到取證的全攻略? 在數(shù)字經(jīng)濟蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗:捕捉數(shù)據(jù)背后的時間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢性檢驗如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據(jù)類型:時間維度的精準切片? ? 在數(shù)據(jù)的世界里,時間是最不可或缺的維度之一,而year_month數(shù)據(jù)類型就像一把精準 ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應用與實戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗:數(shù)據(jù)趨勢與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領域中,準確捕捉數(shù)據(jù)的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認證作為國內(nèi)權威的數(shù)據(jù)分析能力認證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應對策略? 長短期記憶網(wǎng)絡(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(RNN)的一種變體,憑借獨特的門控機制,在 ...
2025-07-07統(tǒng)計學方法在市場調研數(shù)據(jù)中的深度應用? 市場調研是企業(yè)洞察市場動態(tài)、了解消費者需求的重要途徑,而統(tǒng)計學方法則是市場調研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅動力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉日期:解鎖數(shù)據(jù)處理的關鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準確性的基礎 ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅動力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03