决策树是机器学习中一种直观且强大的分类与回归方法,通过树状结构对数据进行分割,适用于多种场景。以下是核心知识点梳理:

1. 基本概念

决策树由节点和分支组成,内部节点代表特征判断,叶节点代表最终分类结果。

  • 例如:判断“是否下雨”作为根节点,分支分为“是”和“否”
  • 常见算法:ID3、C4.5、CART(可点击 CART算法详解 深入学习)
决策树结构

2. 核心原理

  • 信息增益(ID3算法):选择分裂后数据纯度最高的特征
  • 基尼系数(CART算法):衡量数据集的不纯度,数值越小越好
  • 递归构建:重复选择最优特征并分割子节点,直到满足停止条件
ID3_algorithm

3. 优缺点对比

✅ 优点:

  • 易于理解和解释(可可视化树状结构)
  • 无需复杂预处理(能处理类别型和数值型数据)
  • 训练速度较快

❌ 缺点:

决策树优缺点

4. Python代码示例 🐍

from sklearn.tree import DecisionTreeClassifier  
from sklearn.datasets import load_iris  
from sklearn.model_selection import train_test_split  

# 加载数据集  
data = load_iris()  
X, y = data.data, data.target  

# 划分训练集与测试集  
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)  

# 训练决策树模型  
model = DecisionTreeClassifier()  
model.fit(X_train, y_train)  

# 预测与评估  
accuracy = model.score(X_test, y_test)  
print(f"模型准确率:{accuracy:.2f}")  

5. 扩展阅读 📚

Random_Forest