人工智能学习笔记 - 机器学习算法 - 监督学习 - 树模型与集成方法

23 阅读1分钟

人工智能学习笔记 - 机器学习算法 - 监督学习 - 树模型与集成方法

树模型是一类基于“递归划分特征空间”的监督学习方法,通过不断将数据划分为更“纯”的子集来完成分类或回归任务。在实际应用中,单棵决策树通常与集成学习方法结合使用,以提升泛化性能和稳定性。


决策树(Decision Tree)

基本思想

决策树通过一系列“如果–那么”的规则对样本进行划分。
每一个内部节点表示一个特征判断,每一个叶子节点给出预测结果。

训练决策树的核心问题是:

在当前节点,选择哪个特征、用什么方式划分,能使子节点的样本尽可能“纯”?


节点划分的常见评价指标

不同决策树算法的主要区别,在于 节点划分标准的不同


信息熵(Entropy)

信息熵用于衡量样本集合的不确定性,定义为:

H(D)=k=1KpklogpkH(D) = - \sum_{k=1}^{K} p_k \log p_k
  • DD:当前样本集合
  • KK:类别数
  • pkp_k:第 kk 类样本在 DD 中所占比例

性质:

  • 样本越混杂,熵越大
  • 样本越纯,熵越小

信息增益(Information Gain,ID3)

信息增益衡量 划分前后不确定性的减少程度

IG(D,A)=H(D)vDvDH(Dv)IG(D, A) = H(D) - \sum_{v} \frac{|D_v|}{|D|} H(D_v)
  • AA:用于划分的特征
  • DvD_v:特征 AA 取值为 vv 的子集

特点:

  • 信息增益越大,划分效果越好
  • 倾向选择取值种类多的特征

限制:

  • 只能处理离散特征
  • 不适合大规模数据

信息增益率(Gain Ratio,C4.5)

为克服信息增益偏好取值多特征的问题,引入信息增益率:

GainRatio(D,A)=IG(D,A)HA(D)GainRatio(D, A) = \frac{IG(D, A)}{H_A(D)}

其中,特征自身的熵为:

HA(D)=vDvDlogDvDH_A(D) = - \sum_v \frac{|D_v|}{|D|} \log \frac{|D_v|}{|D|}

改进点:

  • 支持连续特征
  • 支持缺失值
  • 减弱多值特征的偏好

但在工程实践中,C4.5 算法复杂、效率较低,已较少使用。


基尼指数(Gini Index,CART)

CART 是现代决策树及集成模型的基础。

基尼指数定义为:

Gini(D)=1k=1Kpk2Gini(D) = 1 - \sum_{k=1}^{K} p_k^2

划分后的基尼指数为:

Gini(D,A)=vDvDGini(Dv)Gini(D, A) = \sum_v \frac{|D_v|}{|D|} Gini(D_v)

特点:

  • 数值计算简单
  • 对分类效果与熵非常接近
  • 只进行二叉划分
  • 工业界事实标准

回归树的划分标准(均方误差)

对于回归问题,CART 使用均方误差作为划分指标:

MSE=1ni=1n(yiyˉ)2MSE = \frac{1}{n} \sum_{i=1}^{n} (y_i - \bar{y})^2

目标是找到划分方式,使子节点的误差之和最小。


随机森林(Random Forest)

随机森林是一种 基于 Bagging 的集成方法,通过训练多棵相互独立的决策树并进行集成预测。

核心思想

  • 样本随机:Bootstrap 抽样
  • 特征随机:每次划分只使用部分特征
  • 模型集成:多数投票或平均

分类预测:

y^=mode{y^1,y^2,,y^T}\hat{y} = \text{mode}\{\hat{y}_1, \hat{y}_2, \dots, \hat{y}_T\}

回归预测:

y^=1Tt=1Ty^t\hat{y} = \frac{1}{T} \sum_{t=1}^{T} \hat{y}_t

优点:

  • 有效降低过拟合
  • 对异常值和噪声不敏感
  • 几乎无需复杂特征工程

梯度提升树(Gradient Boosting Tree, GBDT)

梯度提升树是一种 基于 Boosting 的集成方法,通过逐步拟合残差来提升模型性能。

核心思想

假设当前模型为:

Fm1(x)F_{m-1}(x)

新增一棵树拟合负梯度(残差):

ri=L(yi,F(xi))F(xi)r_i = -\frac{\partial L(y_i, F(x_i))}{\partial F(x_i)}

更新模型:

Fm(x)=Fm1(x)+ηhm(x)F_m(x) = F_{m-1}(x) + \eta h_m(x)

其中:

  • LL:损失函数
  • hm(x)h_m(x):第 mm 棵树
  • η\eta:学习率

特点:

  • 表达能力强
  • 对特征缩放不敏感
  • 是 XGBoost、LightGBM 的理论基础