决策树CART算法、基尼系数的计算方法和含义

决策树CART算法——基尼系数

决策树的CART算法使用基尼系数来选择划分属性。一个数据集的纯度可以用基尼系数来度量

G i n i ( D ) = ∑ k = 1 ∣ y ∣ ∑ k ′ ≠ k p k p k ′ = 1 − ∑ k = 1 ∣ y ∣ p k 2 \begin{aligned}Gini(D) = \sum_{k=1}^{|y|}\sum_{k'\ne k}p_kp_{k'} = 1-\sum_{k=1}^{|y|}p_k^2\end{aligned} Gini(D)=k=1yk̸=kpkpk=1k=1ypk2

直观来说,数据集的基尼系数反映了从数据集D中随机抽取两个样本,其类别不一样的概率。因此,基尼系数越小,数据集的纯度越高。

那么属性a的基尼系数为

G i n i _ i n d e x ( D , a ) = ∑ v = 1 V ∣ D v ∣ D G i n i ( D v ) \begin{aligned}Gini\_index(D,a) = \sum_{v=1}^{V}\frac{|D^v|}{D}Gini(D^v)\end{aligned} Gini_index(D,a)=v=1VDDvGini(Dv)

与数据集D中a属性的熵值计算类似,参考我的博文1和我的博文2

于是,我们在候选属性集合A中,选择那个使得划分后的基尼指数值最小的属性作为最优划分属性

a ∗ = a r g m i n a ∈ A G i n i _ i n d e x ( D , a ) a_* = argmin_{a\in A}Gini\_index(D,a) a=argminaAGini_index(D,a)

你可能感兴趣的:(机器学习,决策树CART算法,基尼系数的计算方法,基尼系数代表的含义)