机器学习基础(三)

机器学习基础实验报告

实验三:

 

一、实验目的

  1. 学习识别手写数字图像的卷积神经网络:LeNet
  2. 学习如何使用单块NVIDIA GPU来计算
  3. 学习迁移学习中的一种常用技术:微调(fine tuning)

 

二、实验内容和步骤

练习一:

1. 绘制误差loss,训练准确率train acc和测试准确率test acc随迭代次数变化的曲线

2. 尝试基于LeNet构造更复杂的网络来提高分类准确率。例如,调整卷积窗口大小、输出通道数、激活函数和全连接层输出个数。在优化方面,可以尝试使用不同的学习率、初始化方法以及增加迭代周期。

3. 选取一个训练性能较好的模型,输出FashionMNIST测试集前20幅图像的模型分类结果,并显示出来

练习二:

1. 绘制误差loss, 训练准确率和测试准确率随迭代次数变化的曲线。

2. 利用训练好的模型预测测试集前20幅图像的分类结果并显示出来。

3. 不断增大 finetune_net 的学习率。准确率会有什么变化?

4. 作为对比,我们定义一个相同的模型,但将它的所有模型参数都初始化为随机值。由于整个模型都需要从头训练,我们可以使用较大的学习率例如0.01,按照相同的批量大小和迭代周期进行训练,该模型精度与原有模型精度对比有何变化?分析精度变化的

原因。

5. 将 finetune_net.features 中的参数固定为源模型的参数而不在训练中迭代,结果会怎样?你可能会用到以下代码。

 

三、代码及运行结果分析

 

练习一:

机器学习基础(三)_第1张图片 机器学习基础(三)_第2张图片

 

 练习二:

机器学习基础(三)_第3张图片 

 

练习三: 

机器学习基础(三)_第4张图片 机器学习基础(三)_第5张图片

 

四、心得体会

本次实验学习了卷积神经网络,对卷积层和最大池化层有了更深入的了解;以及学习了用MXNet实现单块NVIDIA GPU来计算;其次,还有学习了迁移学习中的一种常用技术:微调(fine tuning)。通过此次实验,对神经网络有了进一步的学习,对今后机器学习有了较大的帮助。

 

注释:练习题答案全在实验截图当中。

 

你可能感兴趣的:(机器学习基础,机器学习,人工智能,神经网络,深度学习,python)