ID3算法哺乳动物分类实例
-
算法key:属性是否重要通过信息增益大小判断,而信息增益本质是两个熵值之差(不考虑i属性的分类结果的熵值与考虑i属性分类结果的熵值)
max(Gain(S,Ai))=Entropy(S)−j=1∑vSSjEntroy(Sj)
其中,v表示属性i的类型,j=1,2,3...v表示属性i的类型有v种,Entropy(S)表示一个属性也不考虑的分类结果熵值,后面一部分是考虑属性i的熵值,前面系数赋权,S表示样本个数,Sj表示样本中属性i的类型j的数量。
-
是否哺乳动物分类ID3算法实例如下:

- 观察样本数据发现如下:
第一,有14个样本
第二,有4个属性i=1,2,3,4
第三,有2种分类结果,是否哺乳
- 计算公式如下:
Entropy(S)=−i=1∑mPi∗log2Pi
max(Gain(S,Ai))=Entropy(S)−j=1∑vSSjEntroy(Sj)
- ID3具体算法操作如下:
-
首先,计算不考虑4个属性的样本本来的熵值Entropy(S)
-
接着计算考虑属性i的样本熵值,并作差
max(Gain(S,Ai))=Entropy(S)−j=1∑vSSjEntroy(Sj)
比如,不考虑属性i=1,2,3,4(即饮食习性,胎生动物,水生动物,会飞),且针对属性i的类型j=1,2,3...v的计算结果如下:

-
取增益最大属性胎生动物,即胎生动物为决策树根节点
-
简化压缩表格(不考虑已选出属性),重复算法做递归,不断选取次优属性,直到完成全部分类,作出决策树。