決策樹:理解機(jī)器學(xué)習(xí)中的關(guān)鍵算法
決策樹是一種流行而強(qiáng)大的機(jī)器學(xué)習(xí)算法,它從數(shù)據(jù)中學(xué)習(xí)并模擬決策過程,以便對(duì)新的未知數(shù)據(jù)做出預(yù)測(cè)。由于其直觀性和易理解性,決策樹成為了分類和回歸任務(wù)中的首選算法之一。在本文中,我們將深入探討決策樹的工作原理、如何構(gòu)建決策樹、它們的優(yōu)缺點(diǎn),以及在現(xiàn)實(shí)世界中的應(yīng)用。
樹模型
決策樹:從根節(jié)點(diǎn)開始一步步走到葉子節(jié)點(diǎn)(決策)
所有的數(shù)據(jù)最終都會(huì)落到葉子節(jié)點(diǎn),既可以做分類也可以做回歸
樹的組成
根節(jié)點(diǎn):第一個(gè)選擇點(diǎn)
非葉子節(jié)點(diǎn)與分支:中間過程
葉子節(jié)點(diǎn):最終的決策過程
例子:一個(gè)家庭里面找出玩游戲的人(通過年齡和性別兩個(gè)特征)
如何切分特征(選擇節(jié)點(diǎn))
問題:根節(jié)點(diǎn)的特征該用哪個(gè)特征?如何切分?
假設(shè):我們目標(biāo)應(yīng)該是根節(jié)點(diǎn)就像一個(gè)老大一樣能夠更好的切分?jǐn)?shù)據(jù)(分類的效果更好),根節(jié)點(diǎn)下面的節(jié)點(diǎn)自然就是二當(dāng)家。
目標(biāo):通過一種衡量指標(biāo),來計(jì)算通過不同特征進(jìn)行分支選擇后的分類情況,找出最好的那個(gè)當(dāng)成根節(jié)點(diǎn),以此類推。
衡量指標(biāo)——熵
熵:表示隨機(jī)變量不確定性的度量(說白了就是物體內(nèi)部的混亂程度,(概率越大)熵的值越小,物體的混亂程度越低,(概率越?。╈刂翟酱?,物體的混亂程度越高)
公式:
其中:
- 是數(shù)據(jù)集 的熵。
- 是類別的數(shù)量。
- 是選擇第個(gè)類別的概率。
為了計(jì)算一個(gè)數(shù)據(jù)集的熵,你需要遵循以下步驟:
- 對(duì)于數(shù)據(jù)集 ,確定所有不同的類別。
- 計(jì)算屬于每個(gè)類別的元素的比例,即每個(gè)類別的概率。
- 對(duì)每個(gè)類別,計(jì)算。
- 將第3步中計(jì)算的所有值相加,并取其相反數(shù),得到熵。
例如,假設(shè)一個(gè)數(shù)據(jù)集有兩個(gè)類別(正類和負(fù)類),每個(gè)類別的實(shí)例數(shù)分別是 9 和 5。首先,我們計(jì)算每個(gè)類別的概率:正類的概率,負(fù)類的概率。然后,應(yīng)用熵公式計(jì)算:
這個(gè)值反映了數(shù)據(jù)集的不確定性程度。在構(gòu)建決策樹時(shí),我們希望通過選擇合適的特征來減少熵,也就是說,我們希望通過分割數(shù)據(jù)集來得到更低熵的子集,這樣可以使得決策樹在每個(gè)節(jié)點(diǎn)上做出更清晰的決策。
信息增益是決策樹算法中用于選擇數(shù)據(jù)集的最佳分割特征的一種度量。它是基于熵的一個(gè)概念,用來確定一個(gè)特征帶來的熵減少(即信息增加)的數(shù)量。信息增益越高,意味著使用該特征進(jìn)行分割所得到的子集的純度提高得越多。
信息增益 (IG) 的公式是基于父節(jié)點(diǎn)和其子節(jié)點(diǎn)的熵的差值計(jì)算的:
[ IG(S, A) = H(S) - \sum_{t \in T} \frac{|S_t|}{|S|} H(S_t) ]
其中:
- ( IG(S, A) ) 是數(shù)據(jù)集 ( S ) 關(guān)于特征 ( A ) 的信息增益。
- ( H(S) ) 是數(shù)據(jù)集 ( S ) 的原始熵。
- ( T ) 是根據(jù)特征 ( A ) 的所有可能值將數(shù)據(jù)集 ( S ) 分割成的子集的集合。
- ( S_t ) 是由于特征 ( A ) 的值為 ( t ) 而形成的子集。
- ( |S_t| ) 是子集 ( S_t ) 的大小。
- ( |S| ) 是整個(gè)數(shù)據(jù)集 ( S ) 的大小。
- ( H(S_t) ) 是子集 ( S_t ) 的熵。
信息增益
在構(gòu)建決策樹時(shí),我們通常對(duì)每個(gè)特征計(jì)算信息增益,選擇信息增益最大的特征作為節(jié)點(diǎn)的分割特征。通過這個(gè)過程,我們希望每次分割都能最大化信息的純度提升,這樣構(gòu)建出來的樹能更好地分類數(shù)據(jù)。
讓我們通過一個(gè)簡(jiǎn)單的例子來說明信息增益的計(jì)算:
假設(shè)我們有一個(gè)數(shù)據(jù)集,它有兩個(gè)類別,類別 A 和類別 B。數(shù)據(jù)集的總熵已經(jīng)計(jì)算為 0.940?,F(xiàn)在我們考慮一個(gè)特征,它可以將數(shù)據(jù)集分割成兩個(gè)子集 和。我們計(jì)算這兩個(gè)子集的熵 和,然后根據(jù)它們?cè)诟笖?shù)據(jù)集中的比例加權(quán)求和,得出分割后的總熵。如果 是 0.0(因?yàn)橹兴袑?shí)例都屬于同一個(gè)類別),是 0.918,而且是 5, 是 9,那么分割后的總熵是:
因此,特征 的信息增益是:
根據(jù)這個(gè)計(jì)算結(jié)果,我們知道使用特征進(jìn)行分割能夠減少熵,增加信息的純度,具體增加的信息量為 0.351。通過比較不同特征的信息增益,我們可以選擇最好的分割點(diǎn)來構(gòu)建決策樹的下一個(gè)節(jié)點(diǎn)。
決策樹構(gòu)造實(shí)例:
決策樹算法:
ID3:信息增益(問題如果新增ID列,用ID列做信息增益,會(huì)很大,但是沒意義)
C4.5:信息增益率(解決ID3問題,考慮自身熵)
- 是特征A的信息增益。
- 是分割信息,度量的是使用特征 來分割數(shù)據(jù)集時(shí)的熵。
CART:使用GINI系數(shù)來當(dāng)作衡量標(biāo)準(zhǔn)
- 是數(shù)據(jù)集 的基尼系數(shù)。
- 是數(shù)據(jù)集中不同類別的個(gè)數(shù)。
- 是數(shù)據(jù)集中第個(gè)類別的相對(duì)頻率(概率)。
決策樹剪枝策略:
為什么要剪枝:決策樹過擬合風(fēng)險(xiǎn)很大,理論上可以完全分的開數(shù)據(jù)(想象一下,如果樹足夠龐大,每個(gè)節(jié)點(diǎn)不就一個(gè)數(shù)據(jù)了嗎)
剪枝策略:預(yù)剪枝、后剪枝
預(yù)剪枝:邊建立決策樹進(jìn)行剪枝的操作(更實(shí)用)
后剪枝:當(dāng)建立完決策樹后來進(jìn)行剪枝的操作
預(yù)剪枝方法:
限制深度、葉子節(jié)點(diǎn)個(gè)數(shù)葉子節(jié)點(diǎn)樣本數(shù),信息增益量等
后剪枝方法:文章來源:http://www.zghlxwxcb.cn/news/detail-800213.html
通過一定的hen文章來源地址http://www.zghlxwxcb.cn/news/detail-800213.html
到了這里,關(guān)于決策樹:理解機(jī)器學(xué)習(xí)中的關(guān)鍵算法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!