轉(zhuǎn)載請注明出處 http://www.aygfsteel.com/fireflyk/archive/2011/09/25/359447.html
1. 分類
1.1 定義:通過學(xué)習(xí)得到一個目標(biāo)函數(shù)f,把每個屬性集x映射到一個預(yù)先定義的類標(biāo)號y。
狹隘地說,有大量數(shù)據(jù),預(yù)先知道所有的類型,但無法分類,通過將數(shù)據(jù)的多個屬性維度來推測每條數(shù)據(jù)項(xiàng)屬于哪個類型。(男,高,瘦,帥) -> 極品帥哥,(男,矮,胖,丑) -> 猥瑣男。
嚴(yán)格來說,“分類”可以用于描述性建模和預(yù)測性建模。
1.2 應(yīng)用場景
適合預(yù)測或描述二元或標(biāo)稱的,對于序數(shù)分類,分類技術(shù)不太有效,其他形式的聯(lián)系會被忽略。(復(fù)習(xí):標(biāo)稱的,=和≠,教師和工人;序數(shù)的,<和>,收入高和收入低)
例如,前幾天看的一個科學(xué)研究,個人認(rèn)為不適合用分類來做。科學(xué)家找來志愿者,按臀圍大小分為兩組做智商測試,發(fā)現(xiàn)臀圍大的明顯比臀圍小的智商測試結(jié)果高。于是得出結(jié)論,臀圍大的智商高。我認(rèn)為,這就是最明顯的一個錯誤,智商高低是序數(shù)分類,不能用分類方法來做。它隱藏了一些內(nèi)在聯(lián)系,例如智商高的相對來說愛學(xué)習(xí)、坐辦公室、少運(yùn)動導(dǎo)致肥胖、臀圍大。而不是你把臀圍搞大就一定能智商高!
1.3 實(shí)現(xiàn)方法
訓(xùn)練數(shù)據(jù) -> 學(xué)習(xí)模型 -> 模型 -> 應(yīng)用模型 -> 校驗(yàn)數(shù)據(jù)
簡單說就是先訓(xùn)練,得出結(jié)論再校驗(yàn)。分類方法包括決策樹分類法、基于規(guī)則的分類法、神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)和樸素貝葉斯分類法。
模型準(zhǔn)確率 = 正確預(yù)測數(shù) / 總數(shù)
2. 決策樹分類
2.1 定義
圖2-1
如上圖,通過提出一系列精心構(gòu)思的問題,可以解決分類問題,每當(dāng)一個問題得到答案,后續(xù)問題將隨之解決。
根節(jié)點(diǎn)、內(nèi)部節(jié)點(diǎn)都是非終結(jié)點(diǎn),是屬性測試條件。葉節(jié)點(diǎn)也是終結(jié)點(diǎn),是分類結(jié)果。
2.2 建立決策樹
Hunt算法,是許多決策樹算法的基礎(chǔ),包括ID3,C4.5,CART。
訓(xùn)練數(shù)據(jù)集,(Tid, 有房者, 婚姻狀況, 年收入, 拖欠貸款),具體數(shù)據(jù)見《數(shù)據(jù)挖掘?qū)д摗?/span>P94。
大量數(shù)據(jù)是不拖欠貸款的,所以選取類標(biāo)號,“拖欠貸款=否”。然后選擇測試條件“有房者”。接下來,再看生成數(shù)種,哪個葉子節(jié)點(diǎn)是無法確定到類標(biāo)號的,無法確定的遞歸調(diào)用如上步驟,選取測試條件“婚姻狀況”,然后是“年收入”。一棵決策樹建立好了,為何按照這樣的順序?后邊解釋。
測試條件,可以是二元的(男,女),標(biāo)稱的(單身、已婚、離異),序數(shù)的(S號,M號,L號,XL號,分類結(jié)果不能是序數(shù)的,但是測試條件可以是序數(shù)的),連續(xù)的(工資是連續(xù)屬性)。
2.3 選擇最佳的劃分度量
p(i|t)表示給定節(jié)點(diǎn)t中屬于類i的記錄所占的比例,有時候省略t,直接用pi表示。這里介紹不純性(我稱它為區(qū)分度,數(shù)字越小,區(qū)分度越大)度量的一種方法,c是類的個數(shù),
2.3.1 二元屬性劃分
劃分A,結(jié)點(diǎn)N1,類C0,4個,類C1,3個;結(jié)點(diǎn)N2,類C0,2個,類C1,3個。
| N1 | N2 |
C0 | 4 | 2 |
C1 | 3 | 3 |
Gini(1) = 1-(4/7)2-(3/7)2 = 24/49
Gini(2) = 1-(2/5)2-(3/5)2 = 12/25
加權(quán)Gini = Gini(1) * 7/12 + Gini(2) * 5/12 = 0.486
劃分B,同理得到Gini=0.371,由此說明劃分B更好。
| N1 | N2 |
C0 | 1 | 2 |
C1 | 4 | 5 |
2.3.2 標(biāo)稱屬性劃分
與二元屬性(一個屬性,屬性值多元)劃分衡量方法相同,有三元或多元(一個屬性,屬性值多元)的情況,根據(jù)計(jì)算Gini來決定如何劃分(可以劃分為多路劃分,不局限于兩路劃分)。
2.3.3 連續(xù)屬性劃分
把訓(xùn)練集中每一項(xiàng)都作為一個“<=測試條件”,列出每一個結(jié)點(diǎn)下的C0數(shù)量和C1數(shù)量,計(jì)算每一個點(diǎn)的Gini。而事實(shí)上,不用每一個點(diǎn)都計(jì)算。如《數(shù)據(jù)挖掘?qū)д摗?/span>P100中,60,70,75連續(xù)且類標(biāo)號相同,120,125,220連續(xù)且類標(biāo)號相同,所以劃分點(diǎn)選取不能切斷他們,所以這幾個點(diǎn)不用計(jì)算Gini值。
2.4 決策樹歸納特點(diǎn)
會有重復(fù)的數(shù)據(jù)碎片,即存在相同兩棵子樹,如圖2-1。
目前為止,每個測試條件只包含一個屬性,對于x1+x2<1,也是可以允許的,稱為斜決策樹。