6.3 BP四个基本方程之:中间层神经元误差
文章插图
derivativeHidden = derivative_sigmoid(hiddenActivation)derivativeHidden.shapedeltaHidden = np.dot(deltaOutput, weightsHiddenOutput.T) * derivativeHiddendeltaHidden.shapedeltaHidden
6.4 BP四个基本方程之:权重和偏置的更新文章插图
# Learning ratelr = 0.01weightsHiddenOutput -= np.dot(hiddenActivation.T, deltaOutput) * lr# 3xN x Nx1 = 3x1weightsInputHidden -= np.dot(X.T, deltaHidden) * lr# 4xN x Nx3 = 4x3biasOutput -= np.sum(deltaOutput, axis=0) * lrbiasHidden -= np.sum(deltaHidden, axis=0) * lr
注意: 上面注意维度的匹配!网络本身的参数维度和样本数均无关,比如权重和偏置的维度,都不可能与样本数有关系!这是检验我们有没有做对的一个很有用的标准 。【简单网络的反向传播代码这么写就对了:分解步骤+完整实现】到这为止,对这个神经网络的一次完整的前向传播+反向传播的流程算是进行完了!这是分解动作,也是完成了一次『训练』,但是一个神经网络必须经过多次训练,才能够较好的调整参数并完成任务,因此我们需要把这个训练过程写入一个循环中,反复进行!
推荐阅读
- N log N 为什么排序的复杂度为 O
- 乾隆爱孝贤皇后还是孝仪皇后 乾隆皇帝最喜欢的女人是哪一位
- 清平乐村居表达了诗人什么之情 清平乐村居词人在词中勾勒了一幅怎样的画面
- 历史上永琪的母亲怎么死的 历史上的永琪的女儿
- 蜀汉灭亡诸葛亮的责任 诸葛亮死后多少年蜀汉灭亡
- 宋仁宗赵祯时期的大臣 宋仁宗赵祯死后谁继位
- 凯迪拉克运动模式和舒适模式的切换 嘉庆为什么不留着和珅
- 秦朝以少胜多的战役 古代三大战役以少胜多
- 老茶头如何保存好,什么样的老茶头比较好
- 苦瓜茶的副作用,苦瓜茶的好处