注:课程笔记,自用
2.13 主要内容:用向量化的形式去计算z和a的值(正向传播)


这里展示的是,对每一个样本分别计算/
/
等,但是实际上,我们可以把m个样本的z组合成一个向量,同时计算
我们可以把m个样本的x组合起来
然后同时计算m个z组成的向量
注意,是一个1*n_x的向量,由于Z是m个z组合成的向量,维度是1*m,所以b也要变成1*m
上述思路,用numpy可以表示为:
![]()
b是一个实数,但是python会有广播机制将b扩展为矩阵
那么同理,a也可以用类似的方式计算

2.14 主要内容:用向量化的方法计算dz db dw
其实原理都是一样的,尽量用向量化的方法进行矩阵运算

在之前,我们知道了,那么我们可以用之前的思路,使用向量化的方法计算多个dz值

可以看到,一行就算出来所有的dz值(图片中的最后一行)

这里是原来计算dw与db的方式,注意,这里已经去掉了一层for循环(即把for w1 w2 w3变为了对w向量整体进行操作),现在要对其进行简化

这就是向量化的实现方法

总结:代码由左边变成了右边
但是
这个for循环应该去不掉,这个for循环的意思是一共进行一千次梯度下降,相当于一共训练一千轮次网络

9570

被折叠的 条评论
为什么被折叠?



