05 分类与回归树
5.1 简介
分类与回归树(CART)是一种非参数模型,用于分类和回归任务。CART模型通过不断地将数据集划分成较小的子集,构建一棵决策树。决策树的每个节点对应一个决策规则,根据这个规则将数据划分为两个子集,最终形成树的结构。
5.2 构建决策树
决策树通过递归地分裂数据来构建。在分类问题中,分裂的目标是最大化子节点的纯度。常用的纯度指标包括基尼指数和信息增益。在回归问题中,分裂的目标是最小化子节点的方差。
在scikit-learn
中,我们可以使用DecisionTreeClassifier
(用于分类)或DecisionTreeRegressor
(用于回归)来构建决策树。下面是一个简单的分类树示例:
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 生成模拟数据
np.random.seed(0)
X = np.random.rand(100, 2)
y = (X[:, 0] + X[:, 1] > 1).astype(int) # 分