python决策树预测学生成绩等级实现详情
1.数据准备
1.1 引入头文件
写入头文件之前,需要下载安装所必须的依赖包。有的无法使用pip安装的内容,使用手动导入依赖的方式.
1.2 把student_1.csv数据拖入代码的同一文件夹下,同时读取文件中的数据
1.3 特征选取
课件中选取16个特征值,这里我采用了所有的特征值进行处理。
2.数据处理
2.1 对G1、G2、G3处理
对于离散值进行连续处理,同时设置lambda函数计算G1、G2、G3。
2.2 同样对Pedu参数进行连续值处理
2.3 由于数据集中每个参数差异比较大,所以这里把特征参数统一改为数字形式
2.4 对于当前处理过的数据集,划分训练集和测试集,并设置好随机种子等其他参数
3.训练得到的模型
3.1 决策树
3.1.1 开始对训练集中的数据进行训练
训练完的模型用来设置图像参数进行可视化展现。
3.1.2 利用已经训练好的模型来预测G3的值
对训练好的模型进行打分。
3.1.3 对模型中的参数进行优化,输出优化后最好的分数
3.1.4 优化后的模型来绘制决策树
输出优化后的分数。
3.2 集成学习
重新划分数据集用于训练模型。
3.2.1 Decision Tree
这里采用集成学习的多个决策树方式进行训练模型,以及模型的评估。
3.2.2 Bagging算法
这里采用集成学习的Bagging算法进行训练模型,对模型做出分数估测。
3.2.3 这里采用集成学习的Random Forest算法进行训练模型,对模型做出分数估测
3.2.4 这里采用集成学习的AdaBoost算法进行训练模型,对模型做出分数估测
3.2.5 这里采用集成学习的GBDT算法进行训练模型,对模型做出分数估测
4.评价结果:
模型 | 得分 |
---|---|
决策树(优化前) | 0.806 |
决策树(优化后) | 0.848 |
多个决策树 | 0.831 |
Bagging | 0.890 |
Random Forest | 0.882 |
AdaBoost | 0.806 |
GBDT | 0.865 |
5.结论分析
根据决策树和集成学习两大类的训练模型可以看出:两种方式实现各有千秋,同样由优缺点。
决策树在优化参数前后预测结果有了较明显的提升,并且有可视化的图片便于观察。集成学习中的Bagging算法对于预测结果是最好的,随之的得分情况也是最高。但是AdaBoost算法的表现就相对不够。
以上就是python决策树预测学生成绩等级实现详情的详细内容,更多关于python决策树预测学生成绩等级的资料请关注脚本之家其它相关文章!
相关文章
python轻松办公将100个Excel中符合条件的数据汇总到1个Excel里
这篇文章主要为大家介绍了python轻松办公将100个Excel中符合条件的数据汇总到1个Excel里示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-03-03使用Python的Tornado框架实现一个一对一聊天的程序
这篇文章主要介绍了使用Python的Tornado框架实现一个一对一聊天的程序,程序基于WebSocket,需要的朋友可以参考下2015-04-04python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
这篇文章主要介绍了python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例,需要的朋友可以参考下2020-02-02
最新评论