决策树 ID3和CART算法

ID3算法

概念

(1)信息熵: 信息的混乱程度。
假定S为训练集,S的目标属性C具有m个可能的类标号值,C={C1,C2,…Cm},训练集中,Ci在所有样本中出现的频率为(i=1,2,3,…m),则该训练集S所包含的信息熵为:
E n t r o p y ( S ) = ( p 1 , p 2 , . . . p m ) = − ∑ i = 1 k p i l o g 2 p i Entropy(S)=(p_1,p_2,...p_m)=-\sum^{k}_{i=1}{p_ilog_2p_i} Entropy(S)=(p1,p2,...pm)=i=1kpilog2pi
熵越小表示样本对目标属性的分布越纯。

(2)信息增益: 样本数据集被划分前后数据集不纯程度(熵)的差值。
假定划分前样本数据集S,并用属性A来划分样本集S,则按照属性A划分S的信息增益Gain(S,A)为:
G a i n ( S , A ) = E n t r o p y ( S ) − E n t r o p y A ( S ) . Gain(S,A)=Entropy(S)-Entropy_A(S). Gain(S,A)=Entropy(S)EntropyA(S).
其中
E n t r o p y A ( S ) = ∑ i = 1 k ∣ S i S ∣ E n t r o p y ( S i ) Entropy_A(S)=\sum^{k}_{i=1}{|\frac{S_i}{S}|}Entropy(S_i) EntropyA(S)=i=1kSSiEntropy(Si)
其中, ∣ S i ∣ ( i = 1 , 2 , 3 , . . ) |S_i|(i=1,2,3,..) Si(i=1,2,3,..)为样本子集中的样本数目, ∣ S ∣ |S| S为所有样本数目。信息增益越大,说明使用属性A划分后的样本子集越纯。

(3)基尼指数: 假设有N个类,样本点为第k类的概率为 p k p_k pk,则概率分布的基尼指数定义为:
G i n i ( p ) = ∑ k = 1 N p k ( 1 − p k ) = 1 − ∑ k = 1 N p k 2 Gini(p)=\sum^{N}_{k=1}{p_k(1-p_k)}=1-\sum^{N}_{k=1}p_k^2 Gini(p)=k=1Npk(1pk)=1k=1Npk2

函数

sklearn.tree.DecisionTreeClassifier

https://blog.csdn.net/e15273/article/details/79648502
https://blog.csdn.net/gzj_1101/article/details/78355234

你可能感兴趣的:(数据挖掘)