神经网络与深度学习(邱锡鹏)编程练习4 FNN 简单神经网络

1. 全连接神经网络

问题描述:

利用numpy 和tensorflow 、pytorch 搭建全连接神经网络。
使用numpy 实现此练习需要自己手动求导,
tensorflow 和pytorch 具有自动求导机制。

数据集:

MNIST数据集包括60000张训练图片和10000张测试图片。
图片样本的数量已经足够训练一个很复杂的模型(例如 CNN的深层神经网络)。
经常被用来作为一个新 的模式识别模型的测试用例。
它也是一个方便学生和研究者们执行用例的数据集。
除此之外,MNIST数据集是一个相对较小的数据集,可以在你的笔记本CPUs上面直接执行

题目要求:

补全本章节中所有*.ipynb文件中提示补全的部分。

2. 函数拟合

问题描述:

理论和实验证明,一个两层的ReLU网络可以模拟任何函数[1~5]。请自行定义一个函数, 并使用基于ReLU的神经网络来拟合此函数。

要求:

  • 请自行在函数上采样生成训练集和测试集,使用训练集来训练神经网络,使用测试集来验证拟合效果。
  • 可以使用深度学习框架来编写模型,如tensorflow、pytorch、keras等。
    • 如果不使用上述框架,直接用NumPy实现可以最高加5分的附加分。
  • 提交时请一并提交代码和报告。
    • 代码建议注释清楚(5分)
    • 报告至少应包含以下部分:(5分)
    • 函数定义、数据采集、模型描述、拟合效果。

参考文献:

[1] G. Cybenko. 1989. Approximation by superpositions of a sigmoidal function.

[2] K. Hornik, M. Stinchcombe, and H. White. 1989. Multilayer feedforward networks are universal approximators.

[3] Moshe Leshno, et al. 1993. Multilayer feedforward networks with a nonpolynomial activation function can approximate any function

[4] Vinod Nair and Geoffrey E. Hinton. 2010. Rectified linear units improve restricted boltzmann machines.

[5] Xavier Glorot, Antoine Bordes, Yoshua Bengio. 2011. Deep Sparse Rectifier Neural Networks. PMLR 15:315-323.

posted on 2022-06-03 17:09  HBU_DAVID  阅读(772)  评论(0编辑  收藏  举报

导航