应用深度神经网络预测学生期末成绩

0、引言

  • 写作目的:只是为了学习一下DNN的用法
  • 基本思路:
    • 首先,将学生成绩(平时成绩x、期末成绩y:csv格式)装载;
    • 接着,将成绩数据标准化。(PS:虽然这里的成绩已经[0~100]之间了,本文是为了学习DNN,故不省略这一步)
    • 接着,将平时成绩x,期末成绩y进一步拆分(按比例,如20%)为训练数据和测试数据。PS:测试数据用来检验训练出的模型性能
    • 接着,创建DNN模型。依次设置一系列的参数。
    • 接着,训练模型(fit函数)。model1.fit(x_train, y_train)
    • 接着,评估模型性能。用测试集数据评估,还可以用训练集数据。 如果性能不好,则调参(第四步)
    • 最后,可以应用所得模型,进行期末预测的预测。
  • 实验环境
    • Mac OSX
    • python 2
    • 应用到的包(好多,缺什么你安装什么好了,有(很多)时候还会出错,自己百度、谷歌等可以解决,我花费了1天时间才搞好)

1、装载数据

2、数据标准化

3、数据拆分为训练样本和测试样本

4、设置DNN模型

  • 参数设置步骤
    • 先设置DNN每层计算方式,先设置每个隐层、最后设置输出层
      • 隐层。设置参数:激活函数(Sigmoid、ReLU: Rectifier)、计算单元数量units
      • 输出层。Layer("Linear")
    • 学习速率: learning_rate=0.02
    • random_rate = 2019 : 用来再现相同的数据
    • 模型允许最大迭代次数:n_iter = 10

5、训练模型

6、评估模型

7、应用模型

附录:本次实验完整的代码

猜你喜欢

转载自www.cnblogs.com/juking/p/11223699.html