deep learning.ai 第一课笔记-神经网络和深度学习

第二周:神经网络基础

  1. numpy中的广播:

一个(m,n)的矩阵加减乘除(1,n)或者(m,1)的A向量,python会自动把A向量变成(m,n)维度

Eg:

 

 

  1. 在写代码中不要用shape=(5,)这种秩为1的数据类型,它既不是行向量也不是列向量,记得reshape(1,5)或者(5,1)
  2. 神经网络中,比如a[m](i),方括号中的m表示神经网络第m层,圆括号里面的i表示训练样本i。

 

第三周:浅层神经网络

  1. 神经网络中,可以用矩阵表示神经网络的向量化实现,比如说下面:横向表示了不同的样本,竖向表示了神经网络中的不同节点(隐藏单元,即样本特征以及计算得到的特征)。

eg这个双层神经网络的例子

  1. 初始化权重非常重要,如果把W全部初始化为0,那么所有的隐藏单元都是对称的,不管做多久梯度下降都毫无意义,比如,

  1. 因此随机初始化权重是个好方法,比如可以让W[1]=np.random.randn((2,2))*0.01(产生参数为(2,2)的高斯随机分布)得到一个很小的权重,我们喜欢较小的初始化权重,因为权重过大时,z值会非常大或者非常小,则激活函数会落在平缓部分,造成梯度过于平缓,训练太慢。对于b,则没有这个对称问题,则可以吧b初始化为0

2.反向传播图示

 

第四周  深层神经网络

  1. 怎么检查神经网络的权重矩阵?

前向传播:

W[l] = (n[l], n[l-1])

B[l] = (n[l], 1)

 

反向传播:

dW[l] =  W[l] = (n[l], n[l-1])

Db[l] = B[l] = (n[l], 1)

 

Z[l] = a[l]

向量化后,W,b,dW和db的维度应该始终是一样的,但是Z,A以及X的维度会在向量化后发生变化。比如下面的Z[1]:

 

  1. 一个梯度下降循环,记得缓存各种用到的参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

catbird233

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值
>