实验一:决策树算法实验

实验一:决策树算法实验

|博客班级|首页 - 20级大数据3班机器学习 - 池州学院 - 班级博客 - 博客园 (cnblogs.com)|

|作业要求|实验一:决策树算法实验 - 作业 - 20级大数据3班机器学习 - 班级博客 - 博客园 (cnblogs.com)|

|学号|201613318|

【实验目的】

  1. 理解决策树算法原理,掌握决策树算法框架;
  2. 理解决策树学习算法的特征选择、树的生成和树的剪枝;
  3. 能根据不同的数据类型,选择不同的决策树算法;
  4. 针对特定应用场景及数据,能应用决策树算法解决实际问题。

【实验内容】

  1. 设计算法实现熵、经验条件熵、信息增益等方法。
  2. 针对给定的房贷数据集(数据集表格见附录1)实现ID3算法。
  3. 熟悉sklearn库中的决策树算法;
  4. 针对iris数据集,应用sklearn的决策树算法进行类别预测。
  5. 针对iris数据集,利用自编决策树算法进行类别预测。

【实验报告要求】

  1. 对照实验内容,撰写实验过程、算法及测试结果;
  2. 代码规范化:命名规则、注释;
  3. 查阅文献,讨论ID3、C4.5算法的应用场景;
  4. 查询文献,分析决策树剪枝策略。

【附录1】

  1.   年龄 有工作 有自己的房子 信贷情况 类别
    0 青年 一般
    1 青年
    2 青年
    3 青年 一般
    4 青年 一般
    5 中年 一般
    6 中年
    7 中年
    8 中年 非常好
    9 中年 非常好
    10 老年 非常好
    11 老年
    12 老年
    13 老年 非常好
    14 老年 一般

【实验内容及结果】

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

【实验小结】

1、讨论ID3、C4.5算法的应用场景:

ID3算法应用场景:适于处理大规模的学习问题,是数据挖掘和知识发现领域中的一个很好的范例。C4.5算法在机器学习、知识发现、金融分析、遥感影像分类、生产制造、分子生物学和数据挖掘等领域得到广泛应用。

2、分析决策树剪枝策略

剪枝的目的在于:缓解决策树的"过拟合",降低模型复杂度,提高模型整体的学习效率
(决策树生成学习局部的模型,而决策树剪枝学习整体的模型)
基本策略:
预剪枝:是在决策树生成过程中,对每一个结点在划分前进行估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点。
后剪枝:先从训练集生成一棵完整的决策树,然后自底向上地对非叶子结点进行考察,若将该结点对应地子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点。

【实验中遇到的问题及解决办法】

问题一:如下图所示

 

解决方法:通过 pip install graphviz安装graphviz

 问题二:如下图所示

 

 解决方法:电脑添加环境变量。电脑右键属性>高级系统设置>环境变量>用户变量u>path>新建粘贴文件的安装路径+\bin 

此电脑右键>属性>高级系统设置>环境变量>系统环境变量>path>新建粘贴文件的安装路径+\bin\dot.exe 

posted @ 2022-10-22 21:35  zhouyuyan2333  阅读(110)  评论(0)    收藏  举报