题库深度学习面试题型介绍及解析--第5期

上传人:ja****ee 文档编号:149211460 上传时间:2020-10-25 格式:DOC 页数:6 大小:39.50KB
返回 下载 相关 举报
题库深度学习面试题型介绍及解析--第5期_第1页
第1页 / 共6页
题库深度学习面试题型介绍及解析--第5期_第2页
第2页 / 共6页
题库深度学习面试题型介绍及解析--第5期_第3页
第3页 / 共6页
题库深度学习面试题型介绍及解析--第5期_第4页
第4页 / 共6页
题库深度学习面试题型介绍及解析--第5期_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《题库深度学习面试题型介绍及解析--第5期》由会员分享,可在线阅读,更多相关《题库深度学习面试题型介绍及解析--第5期(6页珍藏版)》请在金锄头文库上搜索。

1、1.神经网络中激活函数的真正意义?一个激活函数需要具有哪些必要的属性?还有哪些属性是好的属性但不必要的?(1)非线性:即导数不是常数。这个条件是多层神经网络的基础,保证多层网络不退化成单层线性网络。这也是激活函数的意义所在。(2)几乎处处可微:可微性保证了在优化中梯度的可计算性。传统的激活函数如 sigmoid 等满足处处可微。对于分段线性函数比如 ReLU,只满足几乎处处可微(即仅在有限个点处不可微)。对于 SGD算法来说,由于几乎不可能收敛到梯度接近零的位置,有限的不可微点对于优化结果不会有很大影响。(3)计算简单:非线性函数有很多。极端的说,一个多层神经网络也可以作为一个非线性函数,类似

2、于 Network In Network 2 中把它当做卷积操作的做法。但激活函数在神经网络前向的计算次数与神经元的个数成正比,因此简单的非线性函数自然更适合用作激活函数。这也是 ReLU 之流比其它使用 Exp 等操作的激活函数更受欢迎的其中一个原因。(4)非饱和性(saturation):饱和指的是在某些区间梯度接近于零(即梯度消失),使得参数无法继续更新的问题。最经典的例子是 Sigmoid,它的导数在 x 为比较大的正值和比较小的负值时都会接近于 0。更极端的例子是阶跃函数,由于它在几乎所有位置的梯度都为 0,因此处处饱和,无法作为激活函数。ReLU 在 x0 时导数恒为 1,因此对于

3、再大的正值也不会饱和。但同时对于 x0 时为线性。这个性质也让初始化参数范围的推导更为简单。额外提一句,这种恒等变换的性质也被其他一些网络结构设计所借鉴,比如 CNN 中的 ResNet 和 RNN 中的 LSTM。(8)参数少:大部分激活函数都是没有参数的。像 PReLU 带单个参数会略微增加网络的大小。还有一个例外是 Maxout ,尽管本身没有参数,但在同样输出通道数下 k 路 Maxout 需要的输入通道数是其它函数的 k 倍,这意味着神经元数目也需要变为 k 倍;但如果不考虑维持输出通道数的情况下,该激活函数又能将参数个数减少为原来的 k 倍。(9)归一化(normalization

4、):这个是最近才出来的概念,对应的激活函数是 SELU ,主要思想是使样本分布自动归一化到零均值、单位方差的分布,从而稳定训练。在这之前,这种归一化的思想也被用于网络结构的设计,比如 Batch Normalization 。2.在人工神经网络中为什么 ReLu 要好过于 tanh 和 sigmoid function?第一,采用 sigmoid 等函数,算激活函数时(指数运算),计算量大,反向传播求误差梯度时,求导涉及除法和指数运算,计算量相对大,而采用 Relu 激活函数,整个过程的计算量节省很多。第二,对于深层网络,sigmoid 函数反向传播时,很容易就会出现梯度消失的情况(在 sig

5、moid 接近饱和区时,变换太缓慢,导数趋于 0,这种情况会造成信息丢失),这种现象称为饱和,从而无法完成深层网络的训练。而 ReLU 就不会有饱和倾向,不会有特别小的梯度出现。第三,Relu 会使一部分神经元的输出为 0,这样就造成了网络的稀疏性,并且减少了参数的相互依存关系,缓解了过拟合问题的发生(以及一些人的生物解释 balabala)。当然现在也有一些对 relu 的改进,比如 prelu,random relu 等,在不同的数据集上会有一些训练速度上或者准确率上的改进,具体的大家可以找相关的 paper 看。3.神经网络更“深”有什么意义?提示:需要在一定范围内。 在神经元数量相同的

6、情况下,深层网络结构具有更大容量,分层组合带来的是指数级的表达空间,能够组合成更多不同类型的子结构,这样可以更容易地学习和表示各种特征。 隐藏层增加则意味着由激活函数带来的非线性变换的嵌套层数更多,就能构造更复杂的映射关系。反向传播的作用 / 目的 / 本质 反向传播概述:梯度下降法中需要利用损失函数对所有参数的梯度来寻找局部最小值点;而反向传播算法就是用于计算该梯度的具体方法,其本质是利用链式法则对每个参数求偏导。4.ReLU相比sigmoid的优势避免梯度消失 sigmoid函数在输入取绝对值非常大的正值或负值时会出现饱和现象 在图像上表现为变得很平,此时函数会对输入的微小变化不敏感 从而

7、造成梯度消失; ReLU的导数始终是一个常数 负半区为 0,正半区为 1 所以不会发生梯度消失现象减缓过拟合 ReLU在负半区的输出为0。一旦神经元的激活值进入负半区,那么该激活值就不会产生梯度/不会被训练,造成了网络的稀疏性 稀疏激活 这有助于减少参数的相互依赖,缓解过拟合问题的发生加速计算 ReLU的求导不涉及浮点运算,所以速度更快5.LSTM 是如何实现长短期记忆的?(遗忘门和输入门的作用)LSTM 主要通过遗忘门和输入门来实现长短期记忆。 如果当前时间点的状态中没有重要信息,遗忘门f中各分量的值将接近 1(f - 1);输入门i中各分量的值将接近 0(i - 0);此时过去的记忆将会被

8、保存,从而实现长期记忆; 如果当前时间点的状态中出现了重要信息,且之前的记忆不再重要,则f - 0,i - 1;此时过去的记忆被遗忘,新的重要信息被保存,从而实现短期记忆; 如果当前时间点的状态中出现了重要信息,但旧的记忆也很重要,则f - 1,i - 1。6.LSTM 里各部分使用了不同的激活函数,为什么?可以使用其他激活函数吗? 在 LSTM 中,所有控制门都使用 sigmoid 作为激活函数(遗忘门、输入门、输出门); 在计算候选记忆或隐藏状态时,使用双曲正切函数 tanh 作为激活函数sigmoid 的 “饱和” 性 所谓饱和性,即输入超过一定范围后,输出几乎不再发生明显变化了 sigmoid 的值域为(0, 1),符合门控的定义:当输入较大或较小时,其输出会接近 1 或 0,从而保证门的开或关;如果使用非饱和的激活函数,将难以实现门控 / 开关的效果。 sigmoid 是现代门控单元中的共同选择。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号