1. 神经网络面试题总结

1. 什么是激活函数,为什么要用激活函数?

在神经元中,各个输入通过加权,求和后,还被作用了一个函数,这个函数就是激活函数 。
如果不用激励函数,每一层输出都是输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合。
使用激活函数会给神经元引入了非线性因素,增强表达能力,使得神经网络可以任意逼近任何非线性函数。

2. 激活函数有哪些?

  • Sigmoid
    在这里插入图片描述
    优点:
    1)处处连续看,便于求导
    2)能够压缩数据,保证数据的幅度不会有问题
    缺点:
    1)容易出现梯度消失的现象:当激活函数接近饱和区时,变化太缓慢,导数接近0,根据后向传播的链式求导法则,当前导数需要之前各层导数的乘积,几个比较小的数相乘,导数结果很接近0,从而无法完成深层网络的训练。
    2)导数计算涉及指数和除法(浮点计算)、计算量大
    3)不是0均值。对参数的更新造成影响,例如,输出均为正数,那么对w的导数总是正数,输出是负数,导数也全为负数;这样每次返回的梯度都只会沿着一个方向发生变化,使得收敛缓慢

  • Tanh(双曲正切)
    在这里插入图片描述
    解决了sigmoid不是0均值的问题,但仍然存在梯度消失的问题

  • ReLu(线性修正单元)
    ReLU=max(0, x)
    优点:
    1)对于sigmoid/tanh激活函数,极大的改善了梯度消失的问题
    2)计算速度快
    缺点:
    1)对参数初始化和学习率非常敏感,存在神经元死亡;
    2)ReLU的输出均值也大于0,偏移现象和 神经元死亡会共同影响网络的收敛性;

  • Softmax
    在这里插入图片描述

  • 其他
    Leaky Relu:负半轴不再为零,负半轴信息不会全部丢失,缓解神经元死亡的问题
    Maxout:同一层的神经元分成几组,对每组内的神经元,求最大值作为神经元的输出。maxout可以看成是relu家族的一个推广。缺点在于增加了参数量

3. 人工神经网络中ReLu为什么比Sigmoid和tanh函数好?

4. 激活函数有什么性质?

  • 非线性。当激活函数是非线性的,一个两层的神经网络就可以基本上逼近所有的函数,这也是激活函数的意义所在
  • 可微性。保证优化过程中梯度是可计算的。
  • 单调性。当激活函数是单调的时候,单层网络能够保证是凸函数。
  • 输出范围有限。限的输出范围使得网络对于一些比较大的输入也会比较稳定

4. 正向传播

指对神经网络沿着从输入层到输出层的顺序,依次计算并存储模型的中间变量和输出的过程,最后可以根据得到的输出y和真实值来计算损失函数。

5. 反向传输

指沿着从输出层到输⼊层的顺序,依次计算每层的参数的梯度。根据链式求导法则,第l层的参数的梯度,需要通过l+1层的梯度来求得,因此我们求导的过程是“反向”的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值