1、单一样本时的维度问题
在上图中,l=5l=5l=5
正向传播的过程即为:
z[1]=w[1]x+b[1]z^{[1]}=w^{[1]}x+b^{[1]}z[1]=w[1]x+b[1]
其中,z[1]z^{[1]}z[1]的维度为(3,1),x即a[0]a^{[0]}a[0]的维度为(2,1),由此可知w[1]w^{[1]}w[1]的维度为(3,2),则b[1]b^{[1]}b[1]的维度为(3,1)。
概括的说,z[1]z^{[1]}z[1]的维度为(n[1]n^{[1]}n[1],1),x即a[0]a^{[0]}a[0]的维度为(n[0]n^{[0]}n[0],1),w[1]w^{[1]}w[1]的维度为(n[1]n^{[1]}n[1],n[0]n^{[0]}n[0]),则b[1]b^{[1]}b[1]的维度为(n[1]n^{[1]}n[1],1)。(n为每一层中结点个数)
我们以此推论来验证第二层
z[2]=w[2]a[1]+b[2]z^{[2]}=w^{[2]}a^{[1]}+b^{[2]}z[2]=w[2]a[1]+b[2]
根据推论有,w[2]w^{[2]}w[2]的维度为(n[2]n^{[2]}n[2],n[1]n^{[1]}n[1]),即(5,3);a[1]a^{[1]}a[1]与z[1]z^{[1]}z[1]的维度相同,为(3,1),因此,w[2]∗a[1]w^{[2]}*a^{[1]}w[2]∗a[1]的维度为(5,1),即为z[2]z^{[2]}z[2]和b[2]b^{[2]}b[2]的维度。
综上,总结如下:
对于单个样本在lll层的深度神经网络中训练时,
w[l]w^{[l]}w[l]的维度为(n[l]n^{[l]}n[l],n[l−1]n^{[l-1]}n[l−1])
b[l]b^{[l]}b[l]的维度为(n[l]n^{[l]}n[l],1)
在反向传播时,dw[l]dw^{[l]}dw[l]和db[l]db^{[l]}db[l]应与w[l]w^{[l]}w[l]和b[l]b^{[l]}b[l]相同
即dw[l]dw^{[l]}dw[l]的维度为(n[l]n^{[l]}n[l],n[l−1]n^{[l-1]}n[l−1])
db[l]db^{[l]}db[l]的维度为(n[l]n^{[l]}n[l],1)
2、多样本时的维度问题
对于单一样本时我们知道:
z[1]=w[1]x+b[1]z^{[1]}=w^{[1]}x+b^{[1]}z[1]=w[1]x+b[1]
z[1]z^{[1]}z[1]的维度为(n[1]n^{[1]}n[1],1)
w[1]w^{[1]}w[1]的维度为(n1n^{1}n1,n[0]n^{[0]}n[0])
xxx的维度为(n[0]n^{[0]}n[0],1)
b[1]b^{[1]}b[1]的维度为(n[1]n^{[1]}n[1],1)
当样本量为m时:
z[1]z^{[1]}z[1]的维度为(n[1]n^{[1]}n[1],m)
w[1]w^{[1]}w[1]的维度为(n1n^{1}n1,n[0]n^{[0]}n[0])
xxx即A[0]A^{[0]}A[0]的维度为(n[0]n^{[0]}n[0],m)
b[1]b^{[1]}b[1]的维度还是为(n[1]n^{[1]}n[1],1),但计算时会采用python对其进行扩展,扩展为(n[1]n^{[1]}n[1],m)
综上,总结如下:
z[l],A[l]z^{[l]},A^{[l]}z[l],A[l]的维度为(n[l]n^{[l]}n[l],m)
反向传播中相同:
dz[l],dA[l]dz^{[l]},dA^{[l]}dz[l],dA[l]的维度为(n[l]n^{[l]}n[l],m)