更新、更全的《机器学习》的更新网站,更有python、go、数据结构与算法、爬虫、人工智能教学等着你:https://www.cnblogs.com/nickchen121/
基尼指数
一、基尼指数简介
基尼指数(gini coefficient)代表了模型的不纯度,基尼指数越小,则不纯度越低;基尼指数越大,则不纯度越高,这和信息增益比是相反的。
假设一个训练集有\(K\)个类别,样本属于第\(k\)个类别的概率为\(p_k\),则它的基尼指数为
\[
G(p) = \sum_{k=1}^K p_k (1-p_k) = 1 - \sum_{k=1}^K p_k^2
\]
如果是二分类问题,其中一个分类的概率为\(p\),则它的基尼指数为
\[
G(p) = 2 p(1-p)
\]
对于某一个训练集\(D\),假设训练集有\(K\)个类别,并且第\(k\)个类别有\(C_k\)个样本,则\(D\)的基尼指数为
\[
G(D) = 1 - \sum_{k=1}^K ({\frac {|C_k|} {|D|}})^2
\]
对于某一训练集\(D\),如果根据特征\(T\)的某个特征值是否等于\(t\)把\(D\)分成两个子集\(D_1\)和\(D_2\)
\[
D_1 = \{(x,y)\in{D}|A(x)=t\},\quad D_2 = D-D_1
\]
则\(D\)的基尼指数为
\[
G(D,A) = ({\frac {|D_1|} {|D|}})G(D_1) + ({\frac {|D_2|} {|D|}})G(D_2)
\]
基尼指数\(G(D)\)表示\(D\)的不确定性,基尼指数\(G(D,A)\)表示经过\(T=t\)分割后\(D\)的不确定性。基尼指数越大,样本集合的不确定性也就越大,不纯度越高。