DecisionTree决策树

信息熵(Information Entropy)

熵是随机变量或系统不确定性的度量。熵越大不确定性越大,熵越低纯度越高越稳定

在决策树中熵用来衡量样本的纯度。
$$ H(Y) = -\sum_{i=0}^{c-1}P(Y=y_i)log_2P(Y=y_i) $$
一般情况下当p为y所有取值情况n的倒数时1/n,熵取得最大值,不确定性最强。

条件熵(Conditional entropy)

条件熵表示在一个条件下,随机变量的不确定性。

给定条件X的情况下,(所有不同X值情况下)随机变量Y的信息熵,记作H(Y|X)。
$$ H(Y|X) = \sum_{x_i\in X}^{}P(X=x_i)H(Y|X=x_i) $$
把H(Y|X=x)代入熵公式H(Y)得:
$$ H(Y|X=x_i) = -\sum_{i=0}^{c-1}P(Y|X=x_i)log_2P(Y|X=x_i) $$
最终得到条件熵的公式为:
$$ H(Y|X) = - \sum_{x\in X}^{}P(X=x_i)\sum_{i=0}^{c-1}P(Y|X=x_i)log_2P(Y=|X=x_i) $$

信息增益(Information Gain)

信息增益是用于衡量一个特征在给定条件下对于减少不确定性(或熵减)的贡献程度。我们需要最大化信息增益 ,同时最小化熵。

在特征选择中,信息增益用于衡量一个特征将训练数据划分为不同类别的能力,它计算了在使用特征划分数据之前和之后的熵之差。信息增益越高,表示使用该特征进行划分后,不确定性减少得越多,因此该特征更具有区分性。

信息增益 = 信息熵 - 条件熵
$$ Gain(Y,X) = ΔH = H(Y) - H(Y|X) $$

信息增益率(Information Gain Ratio)

信息增益率是对信息增益的一种改进(信息增益倾向于选择具有更多可能取值的特征,因为它们可以更多地减少不确定性),它考虑了属性自身固有的信息量,避免了某些属性取值数目较多而导致的信息增益偏大的问题。
$$ Gain\_rate(Y,X) = \frac{Gain(Y,X)}{H(X)}= \frac{H(Y) - H(Y|X)}{H(X)} $$

基尼系数(Gini index) / 不纯度

基尼系数(Gini Index),也称为基尼不纯度(Gini Impurity),是用于衡量一个数据集中样本类别不纯度的指标。

取值范围在0到1之间,其中0表示数据集完全纯净(所有数据点都属于同一类别),而1表示数据集最不纯(各类别的数据点均匀分布)

数据集类别的基尼系数计算:
$$ Gini(D) = 1-\sum_{i=1}^{n}p(i)^2 = 1-\sum_{i=1}^{n}(\frac{\left |D_i \right | }{\left |D \right | })^{2} $$

  • D 表示数据集。
  • n 表示类别的总数。
  • p(i)表示数据集中属于第 i 个类别的样本的占比

数据集在指定属性特征下的基尼系数的计算:
$$ Gini(D,X) = \sum_{i=1}^{n}\frac{\left |X_i \right | }{\left |X \right |}Gini(D) $$

  • 基尼系数是用于衡量数据集不纯度的指标,范围在0和1之间。
  • 在决策树算法中,基尼系数常用于特征选择和节点划分,选择能够最大程度降低不纯度的特征
  • 基尼系数越低,表示数据集越纯净,决策树节点的划分越好。

在决策树中根据Gini系数的变动大小决定分裂特征:
$$ ΔGini = Gini(D)-Gini(D,X) $$