深度学习记录--logistic回归损失函数向量化实现

前言

再次明确向量化的目的:减少for循环的使用,以更少的代码量更快的速度来实现程序

正向传播的向量化

对于z^{i}=w^{T}x^{i}+b,i=1,2,...,m,用向量化来实现,只需要Z=np.dot(w.T,X)+b就可以完成,其中Z=\begin{bmatrix} z^{1}&z^{2}&...&z^{m} \end{bmatrix},w=\begin{bmatrix} w^{1} &w^{2} &... &w^{m} \end{bmatrix},X=\begin{bmatrix} | &| & | & |\\ x^{1}& x^{2} & ...&x{m} \\ |& | & | &| \end{bmatrix}

ps.这里b只是一个常数,但是依然可以加在每个向量里(python的广播(Broadcasting))

激活函数a^{i}=\sigma (z^{i}),i=1,2,...,m,同样用向量化实现,只需要A=\sigma (Z)就可以完成,其中A=\begin{bmatrix} a^{1} & a^{2} &... &a^{m} \end{bmatrix}

因此,正向传播的向量化,我们只用了两行代码就完成了

反向传播的向量化

与正向传播的向量化实现类似,也是用矩阵来计算

最后对w和b进行更新即可

当然,进行多次样本的训练还是要用for循环来实现,但是速度已经提升很多了

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值