zoukankan      html  css  js  c++  java
  • CART树 python小样例

    决策树不断将数据切分成小数据集,直到所有目标变量完全相同,或者数据不能再切分为止,决策时是一种贪心算法,它要在给定的时间内做出最佳选择,但并不关心能否达到最优

    树回归

    优点:可以对复杂和非线性的数据建模

    缺点:结果不易理解

    适用数据类型:数值型和标称型数据

    实现CART算法和回归树,回归树和分类树的思路类似,但叶节点的数据类型不是离散型,而是连续型

    树回归的一般方法

    (1)收集数据:采用任意方法收集数据。

    (2)准备数据:需要数值型的数据,标称型数据应该映射成二值型数据

    (3)分析数据:绘出数据的二维可视化显示结果,以字典方式生成树

    (4)训练算法:大部分时间都花费在叶节点树模型的构建上

    (5)测试算法:使用测试数据上的R2值来分析模型的效果

    (6)使用算法:使用训练出的树做预测,预测结果还可以用来做很多事情

    CART算法只做二元切分,所以这里可以固定树的数据结构。

    创建树的伪代码:

    找到最佳的待切分特征:

      如果该节点不能再分,将该节点存为叶节点

      执行二元切分

      在右子树调用createTree()方法

      在左子树调用createTree()方法

    CATRT算法可以用于构建二元树并处理离散型或连续型数据的切分。若使用不同的误差准则,就可以通过CART算法构建模型树和回归树。该算法构建出的树会倾向于对数据的过拟合。一颗拟合的树常常十分复杂,剪枝技术的出现就是为了解决这个问题。两种剪枝方法分别使预剪枝和后剪枝。

  • 相关阅读:
    事件优先权hdu1873(看病要排队)
    项目包ExpressJS入门指南
    按钮页面ActivityGroup实现Tab效果
    分割范围Codeforces Round #181 (Div. 2)
    随机伪随机随机数字
    数组最小剑指Offer读书笔记之第五章优化时间空间效率
    列字段通用excel导入修改版
    图片区域帧差法识别物体_matlab
    宋体关闭完美退出应用程序
    生成树最小生成树poj 1258 prim
  • 原文地址:https://www.cnblogs.com/zhibei/p/9356113.html
Copyright © 2011-2022 走看看