1. 决策树基础概念解析
决策树作为机器学习中最直观的算法之一,其核心思想是通过一系列规则对数据进行递归划分。想象一下玩20个问题的游戏——通过不断提问"是"或"否"来缩小可能性范围,这正是决策树的工作方式。
1.1 决策树的结构组成
一棵标准的决策树包含三种节点类型:
- 根节点:位于树顶端的起始节点,包含第一个划分特征
- 内部节点:中间的决策点,每个节点对应一个特征测试
- 叶节点:最终的预测结果节点
以动物分类为例,一个简单的决策路径可能是:
- 腿的数量≥3?→是
- 眼睛数量≥3?→否
- →预测为"狗"
1.2 决策树的两种主要类型
根据预测目标的不同,决策树主要分为:
- 分类树:叶节点输出类别标签(如动物种类)
- 回归树:叶节点输出连续数值(如价格预测)
实际应用中,CART(Classification and Regression Trees)算法可以同时处理这两种任务,通过不同的损失函数进行切换。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 决策树的构建原理
2.1 特征选择准则
决策树构建的核心在于如何选择最优划分特征,常用指标包括:
| 指标名称 | 计算公式 | 适用场景 |
|---|---|---|
| 信息增益 | IG = H(D) - Σ|Dv|/|D|*H(Dv) | ID3算法 |
| 增益率 | GainRatio = IG / IV | C4.5算法 |
| 基尼指数 | Gini = 1-Σ(p_i)^2 | CART算法 |
其中:
- H(D)表示当前节点的信息熵
- Dv表示按特征划分后的子集
- IV是特征的固有值(Intrinsic Value)
2.2 树的生长与停止条件
决策树采用递归分裂策略,停止条件通常包括:
- 节点样本数小于预设阈值
- 所有样本属于同一类别
- 没有更多特征可用
- 信息增益低于设定值
python复制# 伪代码展示决策树构建过程
def build_tree(data):
if 满足停止条件:
return 创建叶节点
else:
选择最佳划分特征
按特征值划分数据集
