分類器的定義:輸入的數據含有千萬個記錄,每個記錄又有很多個屬性,其中有一個特別的屬性叫做類(例如信用程度的高,中,低)。分類器的目的就是分析輸入的數據,并建立一個模型,并用這個模型對未來的數據進行分類,應用于信用確認,醫療診斷等。
運用在決策樹上的分類器�� SLIQ 。
一:樹的建立。
- 預分類:為訓練集中的每個屬性建立一個屬性表,每個屬性表包含屬性值和索引,每個索引對應一個記錄,而特殊的屬性��類中還包含枝節點。
- 節點的分割過程:
二:樹的修剪。
SLIQ 采用了 MDL (最小敘述長度)的方法來修剪樹。COST(M,D)=COST(D|M)+COST(M);
COST(D|M)
是指對于 Data 的編碼的“費用”,定義為分類器錯誤個數的總和。COST(M)
包含兩部分:a,
樹的編碼的“費用”,有 code1 , code2 和 code3 三種。b,
分割方法的編碼的“費用”。有連續值屬性的(每一個判斷定為 L(test)=1 )和分類屬性( L(test)=lnAi, 其中樹中所有采用類屬性分割的方法的總和)的兩種。上述公式又可分成四種情況:
如果該節點是一個葉子,
Cleaf(t)= L(t)+Errorst;如果該節點有兩個孩子,
Cboth(t)=L(t)+Ltest+C(t1)+C(t2);如果該節點只有左邊有一個孩子,
Cleft(t)=L(t)+Ltest+C(t1)+C’(t2);如果該節點只有右邊有一個孩子,
Cright(t)=L(t)+Ltest+C’(t1)+C(t2);這里
C’ ( ti )指的是:被修剪了的那個枝里的記錄用母節點里的統計方法來編碼所用的“費 用”。根據上面的敘述,可以采用三種策略來進行修剪。
3, Hybrid
(混合的) : 這種方法包含兩個過程,第一步先用 Full 的策略來得到一個比較小的 樹,然后再考慮后三種的計算方法來修剪樹。三:綜述:
SLIQ 采用了 Pre-sorting,breadth-first 和 MDL 的方法來建立和修剪決策樹,它能夠對大量的數據進行處理,突破了傳統分類器的只能處理 700KB 數據的瓶頸。凡是有該標志的文章,都是該blog博主Caoer(草兒)原創,凡是索引、收藏
、轉載請注明來處和原文作者。非常感謝。