应用决策树批量化自动生成【效果好】【非过拟合】的策略集

决策树在很多公司都实际运用于风险控制,之前阐述了决策树-ID3算法和C4.5算法、CART决策树原理(分类树与回归树)、Python中应用决策树算法预测客户等级和Python中调用sklearn决策树。

本文介绍应用决策树批量自动生成效果好,非过拟合的策略集。

  

一、什么是决策树

  
决策树:通过对已知样本的学习,一步一步将特征进行分类,从而将整个特征空间进行划分,进而区分出不同类别的算法。我们在逻辑判断中用到的思想if, else if ,else, then,其实就是决策树的思想。

  
  

二、决策树中专有名词理解

  
1.根节点:包含数据集中所有数据集合的节点,即初始分裂节点。
  
2.叶节点/终端节点:最终的决策结果(该节点不再进行划分),被包含在该叶节点的数据属于该类别。
  
3.内部节点:非根节点和叶节点的节点,该节点包含数据集中从根节点到该节点所有条件的数据集合。根据内部节点的判断条件结果,其对应的数据集合被分到两个或多个子节点中。
  
4.父节点:划分出子节点的节点。
  
5.子节点:由父节点根据某一规则分裂而来的节点。
  
6.节点的深度:节点与决策树根节点的距离,如根节点的子节点的深度为1.
  
7.决策树的深度:所有叶子节点的最大深度。
  
借用CART决策树原理(分类树与回归树)中的简单决策树说明以上名词,用图形展示如下:

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
决策树在训练集上过是一个常见的问题。当决策树的深度特别深时,模型会变得常复杂,容易出现过问题,导致模型在训练集上表现很好,但在测试集上表现很差。以下是一些解决过问题的方法: 1. 剪枝:剪枝是一种常见的解决过问题的方法。剪枝可以通过限制决策树的深度或者叶子节点中的最小样本数来减少模型的复杂度,从而避免过问题。 2. 正则化:正则化是一种通过添加惩罚项来减少模型复杂度的方法。在决策树中,可以通过添加L1或L2正则化项来减少模型的复杂度,从而避免过问题。 3. 增加数据量:增加数据量是一种有效的减少过问题的方法。通过增加数据量,可以使模型更加泛化,从而避免过问题。 以下是一个决策树剪枝的例子: ```python from sklearn.tree import DecisionTreeClassifier from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split # 加载数据集 iris = load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42) # 构建决策树模型 clf = DecisionTreeClassifier(random_state=42) # 训练模型 clf.fit(X_train, y_train) # 输出在训练集上的准确率 print("Training accuracy:", clf.score(X_train, y_train)) # 输出在测试集上的准确率 print("Testing accuracy:", clf.score(X_test, y_test)) # 剪枝 clf = DecisionTreeClassifier(random_state=42, max_depth=3, min_samples_leaf=5) # 训练剪枝后的模型 clf.fit(X_train, y_train) # 输出在训练集上的准确率 print("Pruned training accuracy:", clf.score(X_train, y_train)) # 输出在测试集上的准确率 print("Pruned testing accuracy:", clf.score(X_test, y_test)) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿黎逸阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值