• 机器学习-04-分类算法-01决策树案例


    总结

    本系列是机器学习课程的系列课程,主要介绍机器学习中分类算法,本篇为分类算法开篇与决策树部分。

    本门课程的目标

    完成一个特定行业的算法应用全过程:

    懂业务+会选择合适的算法+数据处理+算法训练+算法调优+算法融合
    +算法评估+持续调优+工程化接口实现

    机器学习案例

    安装可视化库Graphviz

    graphviz下载地址
    在这里插入图片描述

    下载后,解压,移动路径如下

    D:\Graphviz-10.0.1-win64\bin
    
    • 1

    添加环境变量:

    D:\Graphviz-10.0.1-win64\bin
    
    • 1

    在这里插入图片描述

    安装graphviz的python库

    pip install graphviz==0.20.1
    
    • 1

    决策树代码

    核心类:

    sklearn.tree.DecisionTreeClassifier(
    	criterion=’entropy’, 
    	max_depth=None, 
    	min_samples_split=2, 
    	min_samples_leaf=1, 
    	min_weight_fraction_leaf=0.0, 
    	random_state=None, 
    	max_leaf_nodes=None, 
    	)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    参考:
    https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html#sklearn.tree.DecisionTreeClassifier
    在这里插入图片描述

    完整代码:

    #引入load_iris
    from sklearn.datasets import load_iris
    #引入tree
    from sklearn import tree
    #用于画出图形
    import graphviz 
    #在window设置graphviz的路径
    import os
    os.environ["PATH"] += os.pathsep + 'D:\Graphviz-10.0.1-win64\bin'
    
    #加载数据
    iris = load_iris()
    #创建决策树分类器
    clf = tree.DecisionTreeClassifier()
    #训练
    clf = clf.fit(iris.data, iris.target)
    
    
    print(iris.data[0:5])
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    输出为:
    array([[5.1, 3.5, 1.4, 0.2],
    [4.9, 3. , 1.4, 0.2],
    [4.7, 3.2, 1.3, 0.2],
    [4.6, 3.1, 1.5, 0.2],
    [5. , 3.6, 1.4, 0.2]

    
    import joblib
    joblib.dump(clf,'tree.pkl')
    tree = joblib.load('tree.pkl')
    tree.predict([[5.1, 3.5, 1.4, 0.2]])
    
    • 1
    • 2
    • 3
    • 4
    • 5

    输出为:
    array([0])

    #通过graphviz将模型保存
    dot_data = tree.export_graphviz(clf, out_file=None,filled=True, rounded=True, 
    special_characters=True) 
    #设置graphviz的数据源
    graph = graphviz.Source(dot_data) 
    #显示图片
    #graph.save()
    graph
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    输出为:
    在这里插入图片描述

    确定方向过程

    针对完全没有基础的同学们
    1.确定机器学习的应用领域有哪些
    2.查找机器学习的算法应用有哪些
    3.确定想要研究的领域极其对应的算法
    4.通过招聘网站和论文等确定具体的技术
    5.了解业务流程,查找数据
    6.复现经典算法
    7.持续优化,并尝试与对应企业人员沟通心得
    8.企业给出反馈

  • 相关阅读:
    React 多环境运行打包配置(版本区分)
    sklearn 的 knn 用法
    前端AJAX讲解
    ubuntu 外置相机使用记录
    C语言必会15个文件函数
    2. 工业大数据的特点
    国际化:i18n
    Linux ARM平台开发系列讲解(IIC) 2.7.3 I2C设备驱动分析
    Python 3.11的10个高效新特性
    移动机器人路径规划(五)--- 基于Minimun Snap的轨迹优化
  • 原文地址:https://blog.csdn.net/m0_38139250/article/details/136614843