看课看到这一节,算是ML课中相对较难的一节了。
因为一下多出来了好几个公式,而且有些公式是通用的,有些公式是因为老师所举例子为sigmoid而得出的结果。今天稍微梳理了一下,推荐先后阅读以下两篇文章。
关键把握两个点,一是误差,二是梯度。
课上只讲了不考虑偏置时的梯度传播,但第一个文章是包含的。
请特别注意第一篇文章所描述的权重Wl是当前层向左边一层的权重传播,而吴恩达老师课上的Wl是当前层向右边一层的传播,务必区分清除。
除最输出层误差外,每一层误差等于本层到右一层权重Wl与右一层误差δl+1与f‘z的乘积;
输出层误差为损失函数对该层激活值的偏导J'(a,y)与f'z的乘积
当输出层的损失函数为CE,激活函数为sigmoid时,误差为a-y.
每一层梯度为,从该层到有一层的权重Wl的梯度为该层激活值al与上一层误差δl+1的乘积.
所以在吴恩达课上的四层NN,只有W1,W2,W3的权重。最多可对W3求偏导。