从奥卡姆剃刀定律再看决策树
一、決策樹(shù)理論
1、一句話總結(jié)決策樹(shù)
?? ?
-- 決策樹(shù)是一種自上而下,對(duì)樣本數(shù)據(jù)進(jìn)行樹(shù)形分類的過(guò)程
-- 由結(jié)點(diǎn)和有向邊組成
2、決策樹(shù)結(jié)點(diǎn)
-- 決策樹(shù)結(jié)點(diǎn)分為:內(nèi)部結(jié)點(diǎn)、葉子節(jié)點(diǎn)
-- 每個(gè)內(nèi)部結(jié)點(diǎn)表示一個(gè)特征或者屬性
-- 葉節(jié)點(diǎn)表示類別
3、決策樹(shù)分類過(guò)程描述?? ?
-- 從頂部根結(jié)點(diǎn)開(kāi)始,所有樣本聚在一起。
-- 經(jīng)過(guò)根結(jié)點(diǎn)的劃分,樣本被分到不同的子結(jié)點(diǎn)中。
-- 再根據(jù)子結(jié)點(diǎn)的特征進(jìn)一步劃分
-- 直至所有樣本都被 歸到某一個(gè)類別(即葉結(jié)點(diǎn))中。
4、決策樹(shù)應(yīng)用?? ??? ?
-- 決策樹(shù)為什么再市場(chǎng)營(yíng)銷和生物醫(yī)藥等領(lǐng)域尤其受歡迎
-- 主要因?yàn)闃?shù)形結(jié)構(gòu)與銷售、診斷 等場(chǎng)景下的決策過(guò)程十分相似?? ??? ?
?? ?
二、生成決策樹(shù)的三個(gè)過(guò)程?? ?
【特征選擇】
【樹(shù)的構(gòu)造】
【剪枝】
1、特征選擇
-- ID3:根據(jù)每個(gè)特征在分類前后的最大信息增益來(lái)選擇特征先后順序
? ?-- 某特征信息增益 = 分類前信息熵 - 分類后各個(gè)結(jié)點(diǎn)條件信息熵之和
-- C4.5:根據(jù)每個(gè)特征在分類前后的最大信息增益比來(lái)選擇特征的先后順序
? ?-- 某特征信息增益比 = 某特征信息增益 / 數(shù)據(jù)集D關(guān)于特征A的取值熵
? ? ? -- 其中Di為特征A取第i個(gè)值的樣本子集大小
? ?-- ID3和C4.5都是分類樹(shù),這是因?yàn)樗麄兊膿p失函數(shù)不適用于回歸
-- CART:根據(jù)特征的最小基尼指數(shù)來(lái)選擇特征先后順序
? ?-- CART是回歸樹(shù):因?yàn)镃ART損失函數(shù)是均方差損失,而且回歸樹(shù)一般可以用來(lái)做分類
? ?-- 基尼指數(shù)中|Ck|表示樣本集合D中屬于第K類的樣本子集個(gè)數(shù),這個(gè)K是葉子節(jié)點(diǎn)的類別數(shù),而不是特征的取值
? ?-- CART樹(shù)是一棵二叉樹(shù),假設(shè)有一個(gè)內(nèi)部結(jié)點(diǎn)A1,值為:1,2,3,則是,單就這個(gè)節(jié)點(diǎn)而言,每次樣本劃分的方法是:
? ? ? -- {A1 > 1.5 ,A1<1.5} , {A1>2.5 , A1<2.5} ,{A1>3.5 ,A1<3.5} ,切分值為排序后相鄰取值的平均值
? ? ? -- 然后分別算基尼指數(shù),選擇基尼指數(shù)最小的切分方法
??? ??? ?這里的Di和其他兩種樹(shù)的Di不太一樣,這里的Di不是特征A的具體取值,而是特征A的切分點(diǎn):
?? ??? ?
-- 為什么強(qiáng)調(diào)CART決策樹(shù)是二叉樹(shù),這和ID3,C4.5的區(qū)別具體在哪里?? ?
? ?-- ID3和C4.5都是基于內(nèi)部節(jié)點(diǎn)的每一個(gè)取值來(lái)計(jì)算信息增益或者信息增益比
? ?-- 所以計(jì)算出的是g(D,年齡)這樣的結(jié)果(此處以年齡為例)
? ?-- 而CART是二叉樹(shù),所以每次都要二分,二分依據(jù)是內(nèi)部節(jié)點(diǎn)的某一個(gè)切分點(diǎn)
? ?-- 還是以年齡為例
? ?-- 所以計(jì)算出的就是這樣的結(jié)果:
? ?-- Gini(D|年齡=老)=0.4, Gini(D|年齡=年輕)=0.4
?? ??? ?
2、比較三個(gè)構(gòu)造準(zhǔn)則異同?? ?
1)、C4.5實(shí)際上是對(duì)ID3的優(yōu)化
-- 舉一個(gè)例子就可以:DNA
-- 每個(gè)人的DNA完全不同,但如果按照ID3的邏輯,每次按照DNA進(jìn)行分類,雖然條件信息熵一定為0,但泛化能力特別差
? ?-- 因?yàn)橄麓闻霾坏筋愃频腄NA了,這個(gè)模型就無(wú)法進(jìn)行分類
-- C4.5使用信息增益比,引入取值熵的概念,所謂取值熵其實(shí)就是對(duì)選擇取值較多的特征時(shí),加入一個(gè)懲罰,增強(qiáng)模型泛化能力
2)、樣本類型區(qū)別
-- ID3只能處理離散型變量
-- C4.5可以處理連續(xù)變量:通過(guò) 連續(xù)變量 - 找到類別分割線 -根據(jù)分割線將連續(xù)屬性轉(zhuǎn)換為布爾型(比如1,3,4,7,8,可以切分為5以下,5以上) - 布爾型數(shù)據(jù)即是離散性
-- CART本來(lái)就是二叉樹(shù),二叉樹(shù)處理連續(xù)變量天然優(yōu)勢(shì)
3)、分類與回歸
-- ID3和C4.5只能用于分類任務(wù)
-- CART既可以分類,又可以回歸(使用損失函數(shù)為:最小平方誤差,最終回歸出的值就是葉子節(jié)點(diǎn)中所有樣本標(biāo)簽的均值)
4)、缺失值問(wèn)題
-- ID3比較敏感,另外兩個(gè)不敏感
5)、特征在層級(jí)之間復(fù)用問(wèn)題
-- ID3,C4.5每個(gè)特征在層級(jí)之間不會(huì)復(fù)用,CART會(huì)復(fù)用
6)、ID3、C4.5依賴剪枝來(lái)權(quán)衡樹(shù)的準(zhǔn)確性和泛化能力
-- CART會(huì)直接利用全部數(shù)據(jù)發(fā)現(xiàn)所有可能樹(shù)的結(jié)構(gòu)進(jìn)行對(duì)比(還是二叉樹(shù)的特性)"?? ??? ?
3、樹(shù)的剪枝?? ?
決策樹(shù)的剪枝通常有兩種辦法:
1)、預(yù)剪枝:在樹(shù)中結(jié)點(diǎn)進(jìn)行擴(kuò)展之前,先計(jì)算當(dāng)前的劃分是否能帶 來(lái)模型泛化能力的提升,如果不能,則不再繼續(xù)生長(zhǎng)子樹(shù)
-- 此時(shí)可能存在不同類 別的樣本同時(shí)存于結(jié)點(diǎn)中,按照多數(shù)投票的原則判斷該結(jié)點(diǎn)所屬類別
-- 常用預(yù)剪枝方法:
? ?-- 樹(shù)的深度、當(dāng)前節(jié)點(diǎn)樣本數(shù)量閾值、每次分裂對(duì)測(cè)試集準(zhǔn)確度閾值
-- 風(fēng)險(xiǎn):依賴經(jīng)驗(yàn)、容易欠擬合、當(dāng)前準(zhǔn)確率低不一定之后準(zhǔn)確率低
2)、后剪枝:是讓算法生成一棵完全生長(zhǎng)的決策樹(shù),然后從最底層向上 計(jì)算是否剪枝。剪枝過(guò)程將子樹(shù)刪除,用一個(gè)葉子結(jié)點(diǎn)替代,該結(jié)點(diǎn)的類別同樣 按照多數(shù)投票的原則進(jìn)行判斷
-- 同樣地,后剪枝也可以通過(guò)在測(cè)試集上的準(zhǔn)確率 進(jìn)行判斷,如果剪枝過(guò)后準(zhǔn)確率有所提升,則進(jìn)行剪枝
-- 缺點(diǎn):開(kāi)銷大
-- 常見(jiàn)后剪枝方法:錯(cuò)誤率降低剪枝(Reduced Error Pruning,REP)、悲 觀剪枝(Pessimistic Error Pruning,PEP)、代價(jià)復(fù)雜度剪枝(Cost Complexity Pruning,CCP)、最小誤差剪枝(Minimum Error Pruning,MEP)、CVP(Critical Value Pruning)、OPP(Optimal Pruning)等方法
?? ??? ?
3)、CCP:代價(jià)復(fù)雜剪枝?? ?"核心思想還是循環(huán)每一個(gè)內(nèi)部節(jié)點(diǎn)(子樹(shù)序列)
-- 剪枝之后那個(gè)子樹(shù)用一個(gè)葉子節(jié)點(diǎn)替代
-- 計(jì)算剪枝之后葉子節(jié)點(diǎn)t的訓(xùn)練數(shù)據(jù)集合誤差R(t)和剪枝之前那個(gè)子樹(shù)Tt的誤差R(Tt)
-- 考慮樹(shù)的復(fù)雜性:即是子樹(shù)Tt的葉子節(jié)點(diǎn)個(gè)數(shù)
-- 計(jì)算誤差增加率α:
-- 然后每步選擇最小的α進(jìn)行剪枝(α小即是,減掉同樣誤差情況下復(fù)雜度大的)
4、剪枝算法在決策樹(shù)中的地位?? ?
剪枝比樹(shù)的生成過(guò)程更為關(guān)鍵
對(duì)于不同劃分標(biāo)準(zhǔn)生成的過(guò)擬合決策樹(shù),在經(jīng)過(guò)剪枝之 后都能保留最重要的屬性劃分,因此最終的性能差距并不大。
-- 理解剪枝方法的理論,在實(shí)際應(yīng)用中根據(jù)不同的數(shù)據(jù)類型、規(guī)模,決定使用何種決策樹(shù)以及對(duì)應(yīng)的 剪枝策略,靈活變通,找到最優(yōu)選擇,是本節(jié)想要傳達(dá)給讀者的思想。
三、簡(jiǎn)單既有效
奧卡姆剃刀定律(Occam’s Razor,Ockham’s Razor)?? ?這個(gè)原理最簡(jiǎn)單的描述是“如 無(wú)必要,勿增實(shí)體”,即“簡(jiǎn)單有效原理”。?? ?ID3,Dropout算法都參照了這個(gè)理論來(lái)降低模型復(fù)雜度?? ??? ?
總結(jié)
以上是生活随笔為你收集整理的从奥卡姆剃刀定律再看决策树的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 软件测试人员考核办法
- 下一篇: java检测kafka是否连接成功,Ka