zoukankan      html  css  js  c++  java
  • sklearn决策树应用及可视化

    from sklearn import datasets
    from sklearn.tree import DecisionTreeClassifier

    1.载入iris数据集(from sklearn import datasets)

    x = iris.data[:,[0,2]]   # x = iris.data[:, 0:2]
    y = iris.target

    2.设置训练集中的数据和标签(x是特征集合,二维数组,y是标签值集合,一维数组)

    clf = DecisionTreeClassifier(max_depth = 3)
    clf.fit(x,y)

    3.训练模型(DecisionTreeClassifier涉及到参数max_depth及其他,参考sklearn)

    最后,是决策树的可视化,预备工作为:

        scikit-learn中决策树的可视化一般需要安装graphviz。主要包括graphviz的安装和python的graphviz插件的安装。

        第一步是安装graphviz。下载地址在:http://www.graphviz.org/。如果你是linux,可以用apt-get或者yum的方法安装。如果是windows,就在官网下载msi文件安装。无论是linux还是windows,装完后都要设置环境变量,将graphviz的bin目录加到PATH,比如我是windows,将C:/Program Files (x86)/Graphviz2.38/bin/加入了PATH

        第二步是安装python插件graphviz: pip install graphviz

        第三步是安装python插件pydotplus。这个没有什么好说的: pip install pydotplus

        这样环境就搭好了,若仍然找不到graphviz,可以在代码里面加入这一行:

        os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'

    两种方法:

    (1)生成pdf

    import pydotplus 
    dot_data = tree.export_graphviz(clf, out_file=None) 
    graph = pydotplus.graph_from_dot_data(dot_data) 
    graph.write_pdf("iris.pdf") 

    (2)直接在jupyter中显示

    from IPython.display import Image  
    from sklearn import tree
    import pydotplus 
    import os
    os.environ["PATH"] += os.pathsep + 'C:/Program Files (x86)/Graphviz2.38/bin/'
    dot_data = tree.export_graphviz(clf, out_file=None, 
                             feature_names=["sepal length","sepal width"],  
                             class_names=iris.target_names,  
                             filled=True, rounded=True,  
                             special_characters=True)  
    graph = pydotplus.graph_from_dot_data(dot_data)  
    Image(graph.create_png())

    文章参考:https://www.cnblogs.com/pinard/p/6056319.html

  • 相关阅读:
    GitLabCI系列之流水线语法
    ssh访问控制,阻断异常IP,防止暴力破解
    天翼云主机高可用的两种办法
    kvm命令管理虚拟机
    kvm安装windows使用virtio驱动
    kvm上已安装的虚拟机修改为桥接网络
    监控Redis集群,有两种方法
    vivo 公司 Kubernetes 集群 Ingress 网关实践
    KVM里安装不是原装的winxp系统镜像
    kvm里的虚拟机硬盘和网卡使用virtio驱动
  • 原文地址:https://www.cnblogs.com/qiezi-online/p/12784733.html
Copyright © 2011-2022 走看看