zoukankan      html  css  js  c++  java
  • tensorflow决策树初接触

        决策树是一种树形结构,为人们提供决策依据,决策树可以用来回答yes和no问题,它通过树形结构将各种情况组合都表示出来,每个分支表示一次选择(选择yes还是no),直到所有选择都进行完毕,最终给出正确答案。

     决策树(decision tree)是一个树结构(可以是二叉树或非二叉树)。在实际构造决策树时,通常要进行剪枝,这时为了处理由于数据中的噪声和离群点导致的过分拟合问题。剪枝有两种:

        先剪枝——在构造过程中,当某个节点满足剪枝条件,则直接停止此分支的构造。

        后剪枝——先构造完成完整的决策树,再通过某些条件遍历树进行剪枝。

    import numpy as np
    import matplotlib.pyplot as plt
    from sklearn.tree import DecisionTreeRegressor
    
    
    if __name__ == "__main__":
        n = 500
        x = np.random.rand(n) * 8 - 3
        x.sort()
        y = np.cos(x) + np.sin(x) + np.random.randn(n) * 0.4
        x = x.reshape(-1, 1)
    
        reg = DecisionTreeRegressor(criterion='mse')
        # reg1 = RandomForestRegressor(criterion='mse')
        dt = reg.fit(x, y)
        # dt1 = reg1.fit(x, y)
        x_test = np.linspace(-3, 5, 100).reshape(-1, 1)
        y_hat = dt.predict(x_test)
        plt.figure(facecolor="w")
        plt.plot(x, y, 'ro', label="actual")
        plt.plot(x_test, y_hat, 'k*', label="predict")
        plt.legend(loc="best")
        plt.title(u'Decision Tree', fontsize=17)
        plt.tight_layout()
        plt.grid()
        plt.show()
  • 相关阅读:
    冒泡排序
    tp框架---View视图层---模板继承(举例说明)
    tp框架---表单验证
    对thinkphp的命名空间的理解
    控制器操作方法的调用
    thinkphp的空控制器和空操作以及对应解决方法
    tp框架的url模式
    tp框架的MVC模式
    thinkphp目录结构
    Linux Centos 下安装软件 三种方式(转)
  • 原文地址:https://www.cnblogs.com/520520520zl/p/14264586.html
Copyright © 2011-2022 走看看