信息增益生成決策樹

首先查看數據集

在這裏插入圖片描述
我們用這個數據集來構造決策樹,判斷一個新的西瓜是否爲好瓜。

決策樹的構造

計算數據集的信息熵

首先觀察數據集DD,發現數據集DD中有好瓜和壞瓜兩個類別,其中好瓜佔比p1=817p_1=\frac {8}{17},壞瓜佔比p2=917p_2=\frac {9}{17},計算出數據集DD的信息熵爲
Ent(D)=k=12pklog2pk=(817log2817+917log2917)=0.998Ent(D)=-\sum_{k=1}^{2}p_klog_2p_k=-(\frac{8}{17}log_2\frac{8}{17}+\frac{9}{17}log_2\frac{9}{17})=0.998

計算各個屬性的信息增益

觀察數據集可以發現,西瓜的屬性有色澤、根蒂、敲聲、紋理、臍部、觸感,首先對色澤計算信息增益。

西瓜的色澤有青綠、烏黑和淺白三種情況,青綠記做D1D^1,烏黑記做D2D^2,淺白記做D3D^3;
對於D1D^1,其中正例佔36\frac{3}{6},對於D2D^2,正例佔36\frac{3}{6},分別計算它們的信息熵
Ent(D1)=(36log236+36log236)=1.000,Ent(D^1)=-(\frac{3}{6}log_2\frac{3}{6}+\frac{3}{6}log_2\frac{3}{6})=1.000,
Ent(D2)=(46log246+26log226)=0.918,Ent(D^2)=-(\frac{4}{6}log_2\frac{4}{6}+\frac{2}{6}log_2\frac{2}{6})=0.918,
Ent(D3=15log215+45log245)=0.722.Ent(D^3=-\frac{1}{5}log_2\frac{1}{5}+\frac{4}{5}log_2\frac{4}{5})=0.722.
計算色澤的信息增益
Gain(D,)=Ent(D)v=1v=3DvDEnt(Dv)=0.998(6171.000+6170.918+5170.722)=0.109\begin{aligned} Gain(D,色澤) &=Ent(D)-\sum_{v=1}^{v=3}\frac{|D_v|}{|D|}Ent(D_v)\\ &=0.998-(\frac{6}{17}*1.000+\frac{6}{17}*0.918+\frac{5}{17}*0.722)\\ &=0.109 \end{aligned}
用同樣的方法可以計算出
Gain(D,)=0.143;Gain(D,)=0.141;Gain(D,)=0.381;Gain(D,)=0.289;Gain(D,)=0.006 \begin{aligned} &Gain(D,根蒂)=0.143;Gain(D,敲聲)=0.141;\\&Gain(D,紋理)=0.381;Gain(D,臍部)=0.289;\\&Gain(D,觸感)=0.006 \end{aligned}
其中紋理的信息增益最大,於是選擇紋理作爲數據集DD的劃分標準,構造第一級的決策樹
在這裏插入圖片描述
決策樹算法對每一個分支結點繼續進行劃分,方法和上一步相同,最後生成的決策樹如下
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章