决策树是一种常用的监督学习算法,既可以用于分类任务也可以用于回归任务。决策树通过递归地将数据集划分成更小的子集,逐步建立树结构。每个节点对应一个特征,树的叶子节点表示最终的预测结果。构建决策树的关键是选择最佳的特征来分割数据,而信息增益(Information Gain)和熵(Entropy)是常用的度量标准。
熵(Entropy)
原理
熵是衡量随机变量不确定性的指标。在决策树中,熵用于衡量数据集的纯度或混乱程度。熵越高,数据集越混乱;熵越低,数据集越纯净。
公式
对于一个包含 ( n ) 个类别的分类问题,数据集 ( S ) 的熵定义为:
Entropy ( S ) = − ∑ i = 1 n p i log 2 ( p i ) \text{Entropy}(S) = -\sum_{i=1}^{n} p_i \log_2(p_i) Entropy(S)=−i=1∑npilog2(pi)
其中,( p_i ) 是数据集中第 ( i ) 类的比例。
示例
假设数据集 ( S ) 有两类(正例和反例),其中正例占比 ( p ),反例占比 ( 1-p ),则熵为:
Entropy ( S ) = − p log 2 ( p ) − ( 1 − p ) log 2 ( 1 − p ) \text{Entropy}(S) = -p \log_2(p) - (1-p) \log_2(1-p) Entropy(S)=−plog2(p)−(1−p)log2(1−p)
信息增益(Information Gain)
原理
信息增益用于衡量选择某个特征进行划分后,数据集的纯度增加了多少。信息增益越大,说明通过该特征进行划分,能够更好地区分数据。因此,决策树在选择特征进行划分时,会选择信息增益最大的特征。
公式
特征 ( A ) 对数据集 ( S ) 的信息增益定义为:
Gain ( S , A ) = Entropy ( S ) − ∑ v ∈ Values ( A ) ∣ S v ∣ ∣ S ∣ Entropy ( S v ) \text{Gain}(S, A) = \text{Entropy}(S) - \sum_{v \in \text{Values}(A)} \frac{|S_v|}{|S|} \text{Entropy}(S_v) Gain(S,A)=Entropy(S)−v∈Values(A