cart回归树备忘录

决策树回顾

(1)决策树进化(ID3,C4.5,Cart)
提问:异同点

(2)决策树节点分裂评估准则

  1. 分类:信息增益,信息增益比率,gini系数
  2. 回归:MSE

提问:优缺点

(3)剪枝:预剪枝(泛化能力,自上而下,偏差,快),后剪枝(泛化能力,自下而上,慢)

提问:优缺点

Cart树

classifier and regression tree,既可分类任务,又可回归任务,但构建过程仅仅为二叉树

分类树

(1)最优特征选择准则:gini系数(从样本中任意取两样本不属于同一类的概率)
(2)算法流程:返回递归情形+递归分裂

回归树(最小二乘回归树)

最优特征选择准则:MSE(均方差)

  1. 在左右子树样本已知情况下,各节点预测值取均值时,左右子树MSE和最小;
  2. 那么接下来的问题是 如何选择特征j,以及特征对应的切分点s
    做法:遍历特征以及切分点,计算分裂后左右子树MSE和,取使得MSE最小的特征j和切分点s
Python中的CART回归树,全称为Classification And Regression Trees,是一种用于预测数值型变量(回归问题)或分类问题(分类问题)的决策树算法。它由Leo Breiman等人开发,并通过sklearn库在Python中得到了广泛的应用。 CART回归树的工作原理是将数据集划分为一系列越来越小、越来越纯净的子集(即划分节点),每个子集对应于一个特征值。对于连续特征,划分通常是基于某个阈值;对于离散特征,则直接比较其取值。这个过程一直持续到满足停止条件(如达到最大深度,样本数过少等),然后在叶子节点处进行平均(回归问题)或多数投票(分类问题)来进行预测。 在Python中,你可以使用`sklearn.tree`模块中的`DecisionTreeRegressor`类来构建CART回归树模型,而`plot_tree()`函数则可以帮助可视化树结构。下面是一个简单的例子: ```python from sklearn.datasets import load_boston from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeRegressor import matplotlib.pyplot as plt # 加载波士顿房价数据 boston = load_boston() X, y = boston.data, boston.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) # 创建并训练模型 model = DecisionTreeRegressor(random_state=42) model.fit(X_train, y_train) # 可视化回归树 plt.figure(figsize=(25, 10)) _ = plot_tree(model, filled=True) plt.show() # 预测 predictions = model.predict(X_test) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值