python决策树预测学生成绩等级实现详情
来源:脚本之家    时间:2022-04-25 17:51:45
目录
1.数据准备1.1 引入头文件1.2 把student_1.csv数据拖入代码的同一文件夹下,同时读取文件中的数据1.3 特征选取2.数据处理2.1 对G1、G2、G3处理2.2 同样对Pedu参数进行连续值处理2.3 由于数据集中每个参数差异比较大,所以这里把特征参数统一改为数字形式3.训练得到的模型3.1 决策树3.1.1 开始对训练集中的数据进行训练3.1.2 利用已经训练好的模型来预测G3的值3.1.3 对模型中的参数进行优化,输出优化后最好的分数3.1.4 优化后的模型来绘制决策树3.2 集成学习3.2.1 Decision Tree3.2.2 Bagging算法3.2.3 这里采用集成学习的Random Forest算法进行训练模型,对模型做出分数估测3.2.4 这里采用集成学习的AdaBoost算法进行训练模型,对模型做出分数估测3.2.5 这里采用集成学习的GBDT算法进行训练模型,对模型做出分数估测4.评价结果:5.结论分析

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
Bagging0.890
Random Forest0.882
AdaBoost0.806
GBDT0.865

5.结论分析

根据决策树和集成学习两大类的训练模型可以看出:两种方式实现各有千秋,同样由优缺点。

决策树在优化参数前后预测结果有了较明显的提升,并且有可视化的图片便于观察。集成学习中的Bagging算法对于预测结果是最好的,随之的得分情况也是最高。但是AdaBoost算法的表现就相对不够。

以上就是python决策树预测学生成绩等级实现详情的详细内容,更多关于python决策树预测学生成绩等级的资料请关注脚本之家其它相关文章!

关键词: 成绩等级 数据处理 数据准备 数字形式 特征参数

上一篇:

下一篇: