Classification

判別分析的三個版本:差異以及如何使用它們

  • September 30, 2013

任何人都可以解釋差異並舉例說明如何使用這三種分析嗎?

  • LDA - 線性判別分析
  • FDA - Fisher 判別分析
  • QDA - 二次判別分析

我到處搜索,但找不到具有真實值的真實示例,以了解如何使用這些分析和計算數據,只有很多公式,沒有任何真實示例就難以理解。正如我試圖理解的那樣,很難區分哪些方程/公式屬於 LDA,哪些屬於 FDA。

例如,假設有這樣的數據:

x1 x2 class
1  2  a
1  3  a
2  3  a
3  3  a
1  0  b
2  1  b
2  2  b

讓我們說一些測試數據:

x1 x2
2  4
3  5
3  6

那麼如何通過所有這三種方法使用這些數據呢?最好看看如何手動計算所有內容,而不是使用一些在幕後計算所有內容的數學包。

PS我只找到了這個教程: http: //people.revoledu.com/kardi/tutorial/LDA/LDA.html#LDA。它展示瞭如何使用 LDA。

“Fisher’s Discriminant Analysis”只是2類情況下的LDA。當只有 2 個類別時,手動計算是可行的,並且分析與多重回歸直接相關。LDA是Fisher關於任意類情況的思想的直接擴展,並使用矩陣代數設備(如特徵分解)來計算它。因此,“Fisher 判別分析”這個術語在今天看來已經過時了。應改為使用“線性判別分析”。另請參閱。具有 2 個以上類別(多類別)的判別分析通過其算法是規範的(將判別式提取為規範變量);罕見術語“典型判別分析”

在計算判別函數後,Fisher 使用當時稱為“Fisher 分類函數”的方法對對象進行分類。如今,在 LDA 程序中使用更通用的貝葉斯方法對對象進行分類。

對於您對 LDA 的解釋請求,我可能會將我的答案發送給您: LDA 中的提取、LDA中的分類、相關程序中的 LDA 。還有這個這個這個問題和答案。

就像 ANOVA 需要假設等方差一樣,LDA 需要假設類的等方差-協方差矩陣(在輸入變量之間)。這個假設對於分析的分類階段很重要。如果矩陣顯著不同,則觀察值將傾向於分配給變異性較大的類別。為了克服這個問題,發明了QDA。QDA 是對 LDA 的修改,它允許類協方差矩陣的上述異質性。

如果您有異質性(例如通過 Box 的 M 檢驗檢測到)並且您手頭沒有 QDA,您仍然可以在使用分類時判別式的單個協方差矩陣(而不是合併矩陣)的製度中使用 LDA . 這部分地解決了這個問題,儘管不如 QDA 有效,因為 - 正如剛才指出的那樣 - 這些是判別式之間的矩陣,而不是原始變量之間的矩陣(哪些矩陣不同)。

讓我自己分析您的示例數據。


回复@zyxue 的回答和評論

LDA 是您在答案中定義的 FDA。LDA首先提取線性構造(稱為判別式),以最大化間隔到內部的分離,然後使用它們執行(高斯)分類。如果(如您所說)LDA 與提取判別式的任務無關 LDA 似乎只是一個高斯分類器,則根本不需要名稱“LDA”。

這是LDA 假設類的正態性和方差-協方差同質性的分類階段。LDA的提取或“降維”階段假設線性方差-協方差同質性,這兩個假設共同使“線性可分性”成為可能。(我們使用單池 $ S_w $ 矩陣來產生判別式,因此在類內協方差矩陣中具有恆等池,這使我們有權應用相同的判別式集對所有類進行分類。我摔倒 $ S_w $ s 相同,表示類內協方差都相同,相同;使用它們的權利變得絕對。)

高斯分類器(LDA 的第二階段)使用貝葉斯規則通過判別器將觀察值分配給類。通過直接利用原始特徵的所謂Fisher線性分類函數可以實現相同的結果。然而,貝葉斯基於判別式的方法有點通用,因為除了使用一種默認方式(池化矩陣)之外,它還允許使用單獨的類判別協方差矩陣。此外,它將允許基於判別式子集進行分類。

當只有兩個類時,LDA 的兩個階段可以一起描述一次,因為“潛在提取”和“觀察分類”減少到相同的任務。

引用自:https://stats.stackexchange.com/questions/71489

comments powered by Disqus