Deeplearning.ai - 浅层神经网络

神经网络和深度学习
吴恩达 Andrew Ng

浅层神经网络

神经网络概览

这里写图片描述

神经网络表示

这里写图片描述

  • 输入层 a[0] a [ 0 ] 、隐藏层 a[1] a [ 1 ] 、输出层 a[2] a [ 2 ]
  • 多个逻辑回归的叠加
  • 计算神经网络的输出
    这里写图片描述
  • 将各个元素竖向叠加起来构成一个大矩阵
  • 向量化计算
    这里写图片描述
  • 各个矩阵的大小
    这里写图片描述

多个样本的向量化

  • 圆括号表示样本,方括号表示层数
  • Horizontal(横向), the matrix A goes over different training examples. Vertically(竖向), the different hidden unit.
  • 这里写图片描述 这里写图片描述 这里写图片描述

激活函数 (Activation Function)

  • σ(z) σ ( z ) 常用于二元分类问题
  • tanh(z)=ezezez+ez t a n h ( z ) = e z − e − z e z + e − z (效果常常比 σ(z) σ ( z ) 好)
  • z 很大或者很小时, tanh(z)σ(z) 、 t a n h ( z ) 、 σ ( z ) 的斜率接近于0,会拖慢梯度下降法(梯度弥散)
  • 不同层的激活函数可以不同
  • ReLU(z)=max(0,z) R e L U ( z ) = m a x ( 0 , z )
    • 在 0 处不可导,但在实验中 z 极少取到 0
    • 负数区域时神经元不会训练, Leaky ReLU() L e a k y   R e L U ( ) 可避免这一问题
    • 通常学习速度优于前两个激活函数
    • Leaky ReLU(z)=max(0.01z,z) L e a k y   R e L U ( z ) = m a x ( 0.01 z , z ) (系数可以自定义)
  • identity activation function 恒等激活函数 g(z)=z g ( z ) = z
  • If using linear activation functions, then the neural network is just outputting a linear function of the input.
  • No matter how many layers your neural network has, it is just computing a linear activation function. There is no need to have the hidden layers.
  • 两个线性函数的组合仍然是线性函数
  • 线性函数通常只在输出层使用,隐藏层几乎都使用非线性函数

梯度下降法 (Gradient Descent)

  • 给定随机的初始值而不是全零

  • 维度匹配
    这里写图片描述

  • 公式
    这里写图片描述

随机初始化 (Random Initialization)

  • symmetric, computing the same function
  • 如果初始化为0,隐藏单元做的是相同的计算,无论迭代多少次
  • initialize parameters(w) randomly w = np.random.randn((2,2))*0.01
  • 偏置量 b 可以初始化为0
  • 初值一般小一些,如果很大,可能落在激活函数斜率平缓的部分,会降低学
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值