本文重点
我们已经知道了向量化可以明显的加速程序的运行速度,本节课程将使用向量化来完成逻辑回归的前向传播,不使用一个for循环。
逻辑回归的前向传播
我们先来回忆一下逻辑回归的前向传播,如果我们有m个训练样本,首先对第一个样本进行预测,我们需要计算z,然后计算预测值a,其它样本也是这个过程,下面是两个样本x(1)、x(2)的计算过程
通过上面的计算方式,我们就可以将全部m个样本计算出来了。但是我们需要做m次前向传播才可以计算出m个样本的预测值。
向量化
下面我们将使用向量化的方法来完成逻辑回归的前向传播,我们定义一个矩阵X,每一列是一个样本。
我们的权重参数W向量是列向量,W的转置就是行向量
W的转置*X表示W和X的每一列相乘,结果为1*m的行向量
然后加上行向量[b,b,b,b,b..,b],将b加到每个元素上,最终为一个Z组成的行向量1*m:
这样我们就通过向量的方式计算出来了,为了完成上面的计算,我们可以使用