判別分析是經(jīng)典的分類預(yù)測(cè)方法,它根據(jù)已有的訓(xùn)練樣本,確定分類型輸出變量與數(shù)值型輸入變量之間的數(shù)量關(guān)系,其使用的中介,是判別函數(shù)。
判別分析非常常見,本博嘗試從Clementine、Spss和R三個(gè)角度來切入判別分析。
判別分析的分類:
按輸出的分類變量的數(shù)目分為兩組判別分析和多組判別分析;根據(jù)所采用的數(shù)學(xué)模型,分為線性判別分析和非線性判別分析;根據(jù)判別準(zhǔn)則,可以分為距離判別法、Fisherr判別法和Bayes判別法。這些都集中在Clementine的判別分析節(jié)點(diǎn)上。
8.2.1 距離判別法
設(shè)某樣本可分為K組(即輸出的分類變量有K個(gè)類別),且每個(gè)樣本都有P個(gè)變量(P>K),且輸入型變量都為數(shù)值型變量,服從正態(tài)分布。距離判別法的思想是:將N個(gè)樣本數(shù)據(jù)看做是P維空間中的點(diǎn),則一個(gè)樣本通過它的P個(gè)變量取值,就可以在P維空間中得到惟一位置。這樣,計(jì)算出K個(gè)分組中每個(gè)組的各輸入變量的均值,通過這P個(gè)均值的組合,在P維空間得到惟一點(diǎn),稱為此分組的類別中心。對(duì)于新數(shù)據(jù),計(jì)算它到各類別中心的馬氏距離,并根據(jù)距離最近的原則,新數(shù)據(jù)點(diǎn)距離哪個(gè)類別近則屬于哪個(gè)類別。
判別分析的目的是得到相應(yīng)的判別函數(shù),從而得到能夠?qū)⒉煌傮w區(qū)分開的線、平面或超平面。需要注意的是,做判別分析要求不同變量的數(shù)值分布要呈正態(tài)分布,嚴(yán)格意義上講,多元變量的分布也要呈多元正態(tài)分布,相關(guān)內(nèi)容我們會(huì)在Spss的判別分析中介紹。除了正態(tài)性外,判別分析還要求不同類別的總體間有顯著性差異,否則錯(cuò)判率會(huì)較高。
8.2.2Fisher判別法
Fisher判別分析的核心思想是先投影,再判別。Fisher判別法的判別函數(shù)是輸入變量的線性函數(shù)形式,其中的系數(shù)我們稱為判別系數(shù),表示輸入變量對(duì)于判別函數(shù)的影響。所謂投影,指將原來P維的X空間的輸入變量組合投影到K(K<P)維的Y空間中去,實(shí)現(xiàn)了坐標(biāo)系統(tǒng)的變換,坐標(biāo)系統(tǒng)的變換原則是,盡可能把來自不同類別的樣本區(qū)分開。
首先,應(yīng)該在輸入變量的P維空間中找到某個(gè)線性組合,使各類別的平均值差異最大,作為第一維 度,代表輸入變量組間方差中的最大部分,得到第一判別函數(shù)。
然后,按照同樣規(guī)則依次找到第二判別函數(shù),第三判別函數(shù)等,且判別函數(shù)之間獨(dú)立。
因此,我們通過Fisher判別法得到的判別函數(shù)代表了輸入變量間的方差,一般第一判別函數(shù)代表的組間方差是最大的,所以我們往往會(huì)發(fā)現(xiàn)最后的判別分析圖中,不同類別在第一維度即第一函數(shù)上的分布,是差異最大的。
則所有判別函數(shù)所代表的組間方差比例之和,為1。
在判別分析過程中,我們對(duì)判別函數(shù)的要求是,使組間方差越大越好,組內(nèi)方差載小越好。
那么,應(yīng)該取幾個(gè)判別函數(shù)呢,一般有兩個(gè)標(biāo)準(zhǔn)。第一,指定取特征值大于1的特征值;第二,前M個(gè)判別函數(shù)的判別能力達(dá)到指定的百分比。
對(duì)新數(shù)據(jù)的預(yù)測(cè)與距離判別法相似,通過判別函數(shù)計(jì)算出新數(shù)據(jù)在Y空間中的位置,然后計(jì)算其與各類別中心的距離,最近,則屬于該類別。
8.2.3 Bayes判別法
Bayes差別法屬于Bayes方法范疇,Bayes方法是一種研究不確定性的推理方法,其不確定性用Bayes概率表示。Bayes概率的估計(jì)取決于先驗(yàn)知識(shí)的正確性和后難知識(shí)的豐富性,其會(huì)隨人掌握信息的不同而發(fā)生變化。如某部影片上映后獲得理想票房的收入的概率,在未上映之前主要取決于電影發(fā)行商多年的經(jīng)驗(yàn),但在電影上映過程中此概率并定得到調(diào)整,增大或者減小。
關(guān)于Bayes,我們?cè)谶@里不再多談。
8.2.4 判別分析應(yīng)用示例
導(dǎo)入Spss數(shù)據(jù),此數(shù)據(jù)是一份關(guān)于MBA招生的數(shù)據(jù),含三個(gè)變量:平均學(xué)分成績、管理才能得分和錄取結(jié)果。其中前兩個(gè)輸入變量為數(shù)值型變量,最后一個(gè)輸出變量為分類變量,含有錄取、不錄取和待定三個(gè)水平。依次添加SpssFile和Type節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行讀取和字段方向設(shè)置,添加Modeling中的Discriminate節(jié)點(diǎn),設(shè)置相關(guān)參數(shù)。
在方法方面Clementine提供了兩種方法,一是Enter,一是Stepwise。Enter是強(qiáng)制進(jìn)入法,即所有輸入變量都參加模型的構(gòu)建;Stepwise為逐步篩選法,Stepwise法可以挑選出具有高判別能力的輸入變量進(jìn)入判別函數(shù)。
逐步篩選法與回歸分析中的逐步回歸法思想相似。即采用的是“有進(jìn)有出”的策略,逐步引入最重要的輸入變量,并隨機(jī)判斷是否有其它輸入變量因?yàn)楹罄m(xù)的操作而不再顯著。如果有輸入變量的判別作用下降,則將其剔除出去,直到所有輸入變量進(jìn)入,而不再有輸入變量的作用低于顯著性水平。通過,我們會(huì)用WilksLambda統(tǒng)計(jì)量為此函數(shù)的效果進(jìn)行檢驗(yàn)。
一、準(zhǔn)備工作:均值檢驗(yàn)和方差性次性檢驗(yàn)
1、均值檢驗(yàn)
我們知道,進(jìn)行判別分析的一個(gè)條件是各類別間輸入變量的均值具有顯著性差異,為此我們要通過檢驗(yàn)統(tǒng)計(jì)量WilkLambda進(jìn)行檢驗(yàn)人。此檢驗(yàn)同方差檢驗(yàn),其統(tǒng)計(jì)量等于SSE/SST,即組內(nèi)變差除以總變差,此統(tǒng)計(jì)量服從Wilks分布,也可以用卡方分布近似。
具體的操作是選擇Expert面板,選擇Expert,然后在“輸出”中進(jìn)行設(shè)置:
在輸出面板中進(jìn)行設(shè)置。選擇描述性分析中的均值和單變量ANOVAS,表示顯示各類別的變量均值并對(duì)其進(jìn)行方差分析。
如下圖,給出了各類別中不同輸入變量的均值和方差,在后面顯示了加權(quán)情況。第二張表顯示的是對(duì)不同輸入變量的均值檢驗(yàn),我們只看Sig列,發(fā)現(xiàn)兩列都具有顯著性,說明輸入變量均值擁有顯著性差異,則可以適用于判別分析。
2、方差齊次性檢驗(yàn)
在距離判別法中,各總體的協(xié)方差矩陣相等和不相等時(shí),采用的判別函數(shù)是不同的,因此我們?cè)谳敵鲋羞x擇BoxM進(jìn)行方差齊次性檢驗(yàn)。以顯示了不同組內(nèi)和組間的協(xié)方差矩陣和相關(guān)系數(shù)矩陣。顯然三組協(xié)方差矩陣存在明顯差異,在使用協(xié)方差矩陣的選項(xiàng)中,我們選擇使用獨(dú)立組。
二、解讀判別結(jié)果
在輸出面板中的Function Coefficients中選擇未標(biāo)準(zhǔn)化項(xiàng),顯示未標(biāo)準(zhǔn)化的判別函數(shù)系數(shù)。
1、Fisher判別函數(shù)
下圖給出了未標(biāo)準(zhǔn)化的Fisher判別系數(shù),則根據(jù)未標(biāo)準(zhǔn)化的判別系數(shù)可以得同兩個(gè)判別函數(shù)為:
Y1=-15.595+4.086X1+0.007X2
Y2=-1.47+-1.831X1+0.014X2
將原數(shù)據(jù)的相應(yīng)值代入兩個(gè)函數(shù),可以得到樣本點(diǎn)在Y空間的坐標(biāo)。
下圖給出了三個(gè)類別在該新空間中的坐標(biāo)。注意,這是三個(gè)類別的中心在兩個(gè)判別函數(shù)中的得分,可以根據(jù)兩個(gè)得分畫出其中心所在位置。

下圖為標(biāo)準(zhǔn)化后的判別系數(shù)。標(biāo)準(zhǔn)化后的判別系數(shù)克服了原始數(shù)據(jù)中量綱差別造成的影響,反映的是不同輸入變量對(duì)新樣本坐標(biāo)確定的貢獻(xiàn)率。由圖可知,大學(xué)平均成績對(duì)第一坐標(biāo)的貢獻(xiàn)最大,管理才能評(píng)分對(duì)第二坐標(biāo)的貢獻(xiàn)率最大。
下面為結(jié)構(gòu)矩陣,StructureMatrix。揭示了不同輸入變量對(duì)判別函數(shù)的相關(guān)性,是簡單相關(guān)系數(shù)修正后的結(jié)果。星號(hào)表示相應(yīng)系數(shù)的絕對(duì)值最大,表明第一判別函數(shù)與大學(xué)平均成績的相關(guān)性高,第二判別函數(shù)與管理才能的評(píng)分相關(guān)性高。
2、判別能力檢驗(yàn)
那么,F(xiàn)isher判別函數(shù)的投影是否很好地實(shí)現(xiàn)了各類樣本分開的效果呢,哪個(gè)判別函數(shù)更重要?下圖第一張顯示了特征根,我們看到第一函數(shù)和第二函數(shù)的特征根,組間方差解釋百分比,累積百分比和相關(guān)性。其中,特征根表征了判別函數(shù)攜帶信息的量,越大,表示攜帶組間方差越大。相關(guān)系數(shù)表征了判別函數(shù)與不同類別的相關(guān)性,其中相關(guān)性越大,表示不同類別在此維度上差異越明顯。
第二張顯示了WilksLambda,即從統(tǒng)計(jì)檢驗(yàn)角度分析哪個(gè)判別函數(shù)表現(xiàn)出的判別能力是顯著的。我們看到第一二判別函數(shù)綜合起來的判別效果二判別函數(shù)的效果一樣,都有顯著性。
3、Fisher判別函數(shù)
在輸出面板的函數(shù)系數(shù)中選擇Fisher's,得到Fisher判別函數(shù)如下。費(fèi)舍爾線性判別函數(shù)相關(guān)矩陣,利用此矩陣將新數(shù)據(jù)的值代入,哪個(gè)類別的結(jié)果值大,則屬于哪個(gè)類別
4、各樣本的詳細(xì)判別結(jié)果
在Classification框中選擇Casewise reults項(xiàng)表示顯示前面若干個(gè)樣本的詳細(xì)判別結(jié)果??稍贚imitcase to first框中指定想查看的樣本個(gè)數(shù),默認(rèn)為前十個(gè)。如下所示,判別分析生成判別模型后,還會(huì)應(yīng)用于自己原有的數(shù)據(jù)上進(jìn)行驗(yàn)證。下圖中預(yù)測(cè)組中帶星號(hào)的表示預(yù)測(cè)錯(cuò)誤,不帶星號(hào)表示預(yù)測(cè)正確?!暗劫|(zhì)心的平方馬氏距離”列表示此數(shù)據(jù)點(diǎn)距離該類別中心點(diǎn)的馬氏距離;第二最高級(jí)中的“組”列是通過Bayes判別得出的第二高的判別結(jié)果,后面的P值為相應(yīng)的貝葉斯概率。注意最右側(cè)的兩列得分,這是此點(diǎn)在第一判別維度和第地判別維度上的得分,通過這兩個(gè)得分,我們就能和到此點(diǎn)在二維圖像上的位置。
5、判別結(jié)果的評(píng)價(jià)
通過勾選Classification中的SummaryTable,得到判別分析的混淆矩陣。在混淆矩陣中,我們可以查看模型的預(yù)測(cè)能力。如下圖示,在類別1中,模型成功預(yù)測(cè)30項(xiàng),錯(cuò)判1項(xiàng),成功率為0.968;類別2和類別3同理。注意,總體預(yù)測(cè)成功率為最底部的0.953,說明此模型相當(dāng)不錯(cuò)了已經(jīng)。
7、Plot
那么,我們能不能像對(duì)應(yīng)分析那樣將分類的模型展現(xiàn)在圖中呢?添加Plot節(jié)點(diǎn),并進(jìn)行相關(guān)設(shè)置,得如下圖。我們看到三個(gè)類別的點(diǎn)很明顯地彼此區(qū)分了開來。
愛華網(wǎng)


