zoukankan      html  css  js  c++  java
  • 【笔记】决策树解决回归问题

    决策树解决回归问题

    如果输出是一个具体的数,这就是一个回归问题,相应的一个新的样本点到了决策树之后,使用决策树以后到达叶子节点中,就可以用叶子节点中相应的数据输出值的平均值来作为预测的结果

    具体实现

    (在notebook中)

    加载好需要的类库,使用波士顿房价这个数据集,对数据集进行训练数据集和测试数据集的分类

      import numpy as np
      import matplotlib.pyplot as plt
      from sklearn import datasets
    
      boston = datasets.load_boston()
      X = boston.data
      y = boston.target
    
      from sklearn.model_selection import train_test_split
    
      X_train,X_test,y_train,y_test = train_test_split(X,y,random_state=666)
    

    调用DecisionTreeRegressor类即可,使用默认的构造参数,创建好以后对数据集进行训练

      from sklearn.tree import DecisionTreeRegressor
    
      dt_reg = DecisionTreeRegressor()
      dt_reg.fit(X_train,y_train)
    

    然后使用score的方法计算测试数据集的准确度

      dt_reg.score(X_test,y_test)
    

    结果如下

    使用score的方法计算训练数据集的准确度

      dt_reg.score(X_train,y_train)
    

    结果如下

    可以发现,对于测试数据集来说,准确度是不够好的,但是对于训练数据集来说,准确度却达到了1,对于决策树来说,对于这个是毫无偏差的,很明显,这就是过拟合的情况,所以,决策树算法是很容易产生过拟合的情况的,消除过拟合就可以使用调参的方法

    想要可以直观的看到过拟合和欠拟合的话,可以使用学习曲线

  • 相关阅读:
    【Linux基础总结】Linux基本环境
    mysql 源码安装
    windows内存映射文件
    TCHAR和CHAR类型的互转
    删除链表中重复的结点
    iptables防火墙
    两个链表的第一个公共结点
    无人值守安装linux系统
    dns服务 很多问题,后续再研究
    string 类型转换
  • 原文地址:https://www.cnblogs.com/jokingremarks/p/14341979.html
Copyright © 2011-2022 走看看