吴恩达深度学习(2)python应用下的深度学习,激活函数,神经网络的梯度下降法

import numpy as np //导入numpy库

a=np.random.randn(5)//生成5个随机高斯变量,存储在数组a中

print(a) //[ .......]

print(a.shape) //(5,) 这是python秩为1的数组,既不是列向量也不是行向量

a=np.randon.randn(5,1) //这是一个5行1列的矩阵

print np.dot(a,a.T) //a与a转置的乘积

assert(a.shape == (5,1)) //确认a的维度

a=a.reshape((5,1)) //将秩为1的数组转换成矩阵

2.激活函数

1)sigmoid激活函数

g`(z)=g(z)(1-g(z)) 

a.当z很大时,g(z)趋向于1,其导数趋向于0

b.当z很小时,g(z)趋向于0,其导数趋向于0

c.当z=0时,g(z)=1/2,其导数等于1/4

2)tanh激活函数

g`(z)=1-(tanh(z))^2

a.当z很大时,g(z)趋向于1,其导数趋向于0

b.当z很小时,g(z)趋向于-1,其导数趋向于0

c.当z=0时,g(z)=0,其导数等于1

3)ReLU激活函数

g`(z)=0 if z<0

           1 if z>=0  (在应用中规定0处的导数为1,虽然在数学中不能这么说,因为z精确为0的概率很小,所以将0处的导数定义成什么值影响还是很小很小的)

4)带泄漏的ReLU激活函数

 

g(z)=max(0.01z,z)

当z<0时,g`(z)=0.01

3.神经网络的梯度下降法(只含一层隐藏层)

 

对于db^[2]处的理解:np.sum()对矩阵的一个维度求和,axis=1,说明是水平相加求和。keepdims,是防止python直接输出秩为1的数组

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值