前言
本系列文章要解决的主要问题是剖析清各种经典的神经网络结构(FNN,CNN,vanilla RNN以及LSTM)的前向传播与反向梯度求导,并在常用的深度学习框架中验证其结论的准确性。希望通过这些工作让自己对经典的神经网络结构有较深的理解。
本系列的主要内容编排如下:
- 数学知识准备篇,其内容主要是矩阵微分的知识和一些重要技巧,最后会附上矩阵微分的应用的小demo。该篇相当于是后续篇章的“依赖包”。
- FNN(DNN)的前向传播,反向梯度推导以及代码验证
- CNN的前向传播,反向梯度推导以及代码验证
- vanilla RNN的前向传播,反向梯度推导以及代码验证
- LSTM的前向传播,反向梯度推导以及代码验证
注意:
- 本系列默认读者已具备导数,梯度下降等基础的数学概念
- 本系列默认读者已具备基本的线性代数知识
- 本系列涉及到的深度学习框架是tensorflow,版本为2.1.0
- 部分内容仍处于施工状态,上面有超链接的说明已发出来了。虽说本地word文档和代码都有,但篇幅量大,公式很多所以施工起来挺繁琐的,会尽量在近期全部放出来。