自学内容网 自学内容网

反向传播固定模型公式

1: 初始化前向传播结果

首先,执行前向传播,计算每一层的激活值 A[L] 和线性输出 Z[L],将这些中间结果存储起来,以便在反向传播时使用。

2:计算输出层的损失函数的导数
如果是Sigmoid 激活函数
d Z [ l ] = A [ l ] − Y dZ^{\left[l\right]}=A^{\left[l\right]}-Y dZ[l]=A[l]Y

3: 对每一层逐层向后计算梯度

d W [ l ] = 1 m d Z [ l ] A [ l − 1 ] T dW^{\left[l\right]}=\frac{1}{m}dZ^{\left[l\right]}A^{\left[l-1\right]T} dW[l]=m1dZ[l]A[l1]T

d b [ l ] = 1 m n p . s u m ( d z [ l ] , a x i s = 1 , k e e p d i m s = T r u e ) db^{\left[l\right]}=\frac{1}{m}np.sum(dz^{\left[l\right]}, axis=1, keepdims=True) db[l]=m1np.sum(dz[l],axis=1,keepdims=True)

d Z [ 1 ] = W [ 2 ] T d Z [ 2 ] ∗ g [ 1 ] ′ ( Z [ 1 ] ) dZ^{\left[1\right]}=W^{\left[2\right]T}dZ^{\left[2\right]}* g {[1]'} (Z ^ {[1]}) dZ[1]=W[2]TdZ[2]g[1](Z[1])

4: 若使用的tanh, 则 g [ 1 ] ′ ( Z [ 1 ] ) = = ( 1 − n p . p o w e r ( A 1 , 2 ) ) g {[1]'} (Z ^ {[1]}) == (1 - np.power(A1, 2)) g[1](Z[1])==(1np.power(A1,2))


原文地址:https://blog.csdn.net/HJS1453100406/article/details/142859860

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!