1.网络结构及实现思路
以下为次此依赖的网络结构,并且后边的所有思路及编程都将遵循这个结构给出。
其中隐藏层、激活函数(采用Relu函数)、输出层的内容如下:
其整体实现思路如下:
1. 定义神经网络参数
2. 实现前馈神经网络 forward pass
3. 计算损失 loss
4. 实现反向传播 backword pass
2.编程实现及公式推导
这里需要说明的一点就是在计算各参数的梯度问题时,是在估计值与真实值之间差值的平方的基础上进行求偏导的,我们令其为A,则有:
有了上边的推导,相信大家很容易就理解代码了吧。
3.测试结果
在结果中我们可以看到,在程序刚开始时和程序结束时的loss值有了明显减小:
可以看到程序在训练了500次的情况下,我们的这个两层的神经网络效果还是比较不错的。接下来我也将会继续将该模型改写为torch版本的。
文章来源:CSDN博客
原文链接:https://blog.csdn.net/weixin_38468077/article/details/106000072
如有侵权,请联系本人删除