构建神经网络的一般方法是:
- 定义神经网络结构(输入单元的数量,隐藏单元的数量等)。
- 初始化模型的参数
- 循环:
- 实施前向传播
- 计算损失
- 实现向后传播
- 更新参数(梯度下降)
??我们要它们合并到一个nn_model() 函数中,当我们构建好了nn_model()并学习了正确的参数,我们就可以预测新的数据。
定义神经网络结构
在构建之前,我们要先把神经网络的结构给定义好:
- n_x: 输入层的数量
- n_h: 隐藏层的数量(这里设置为4)
- n_y: 输出层的数量
初始化模型的参数
在这里,我们要实现函数initialize_parameters()。我们要确保我们的参数大小合适,如果需要的话,请参考上面的神经网络图。
我们将会用随机值初始化权重矩阵。
np.random.randn(a,b)* 0.01
来随机初始化一个维度为(a,b)的矩阵。
将偏向量初始化为零。
np.zeros((a,b))
用零初始化矩阵(a,b)。
后向传播
更新参数
我们需要使用(dW1, db1, dW2, db2)来更新(W1, b1, W2, b2)。