神经网络实战之MNIST手写体识别

神经网络实战之MNIST手写体识别

参考资料

从零开始神经网络

卷积神经网络学习笔记(本博客站内搜索)

再整理了部分吴恩达机器学习课程后 觉得有必要结合实践操作学习

在搜索了一些学习资料后找到了一个相当不错的实操教程

这里展示&分享一下最终的实践成果

经过一轮训练后正确率从7.9%变成了93.5%

用mnist数据集中的图片进行识别测试

输出结果与图片吻合

在尝试自己的手写体

在windows自带的画图软件上写的数字8 经过截取压缩预处理后(网上找到的专门针对生成类mnist图片的小程序)

进行识别显示结果为8结果与预期吻合

调整学习率LearnRate

上图是学习率learn rate = 10^x(横坐标) 与 训练集的误差平方和 (纵坐标)

表明学习率Learn_rate>10^0.5时误差显著增大 设置学习率=1比较合适

主要从这个实践教程中学习了具体如何搭建一个简单神经网络, 验证求导正确性, 如何探究学习率与正确率的关系

算法理论内涵结合吴恩达的课程对于入门的我也能理解

而整个学习过程最难的部分 “反向传播过程”的公式推倒 还得继续研究学习

不过不懂原理并不妨碍使用它,如果不深究具体推导计算 其实实现它的学习成本并不高

最后贴上开源代码