1. 深度学习中的激活函数需要具有哪些属性?
- 计算简单
- 非线性
- 具有饱和区
- 几乎处处可微
ABD。解析:(1)非线性:导数不能是常数。(2)几乎处处可微:sigmoid处处可微,ReLU仅在有限点处不可微)。(3)计算简单。(4)非饱和性:Sigmoid存在饱和区,存在梯度消失问题,后来提出了relu。(5)单调性。(6)输出范围有限;(7)接近恒等变换;(8)参数少;(9)归一化,助力稳定训练。
2. BatchNorm 层对于 input batch 会统计出 mean 和 variance 用于计算 EMA。如果input batch 的 shape 为(B, C, H, W),统计出的 mean 和 variance 的 shape 为:
- B * 1 * 1 * 1
- 1 * C * 1 * 1
- B * C * 1 * 1
- 1 * 1 * 1 * 1
B。解析:BN对多张图像的每个通道做归一化,有多少个通道就有多少均值和方差。
3.CNN常见的Loss函数不包括以下哪个()
- softmax_loss
- sigmoid_loss
- Contrastive_Loss
- siamese_loss
D。解析:siamese network(孪生神经网络)中应用Contrastive_Loss(对比损失),能有效的处理paired data的关系。对比损失主要用在降维中,保证本来相似的样本,降维后(新特征空间中)仍旧相似。表达式如下:
d是样本间距离,当样本相似时y=1,损失函数只剩前半部分,距离越大说明模型越差,损失越大。样本不相似时y=0,损失函数只剩后半部分,如果距离越小说明模型越差,损失越大。
4. 关于Attention-based Model,下列说法正确的是()
- 相似度度量模型
- 是一种新的深度学习网络
- 是一种输入对输出的比例模型
- 都不对
A。解析:Attention-based Model其实就是一个相似性的度量,当前的输入与目标状态越相似,那么在当前的输入的权重就会越大,说明当前的输出越依赖于当前的输入。
5. 考虑某个具体问题时,你可能只有少量数据来解决这个问题。不过幸运的是你有一个类似问题已经预先训练好的神经网络。可以用下面哪种方法来利用这个预先训练好的网络?
- 把除了最后一层外所有的层都冻结,重新训练最后一层
- 对新数据重新训练整个模型
- 只对最后几层进行调参(fine tune)
- 对每一层模型进行评估,选择其中的少数来用
C。解析:模型微调方法:
数据量少,数据相似度高:改最后几层或者只改输出层。
数据量少,数据相似度低:冻结一些,训练一些。
数据量大,数据相似度低:从头训练。
数据量大,数据相似度高:最理想。用预训练权重重新训练。
6. 基于二次准则函数的H-K算法较之于感知器算法的优点是?
- 计算量小
- 可以判别问题是否线性可分
- 其解完全适用于非线性可分的情况
- 其解的适应性更好
BD。解析:H-K算法是在最小均方误差准则下求得权矢量。适用于线性可分和非线性。对于线性可分的情况: 给出最优权矢量;对于非线性可分得情况: 能够判别出来,以退出迭代过程。
7. caffe中基本的计算单元为
- blob
- layer
- net
- solver
B。解析:blob: caffe的数据存储单元;layer: caffe的计算单元。
8. GoogLeNet提出的Inception结构优势有?
- 保证每一层的感受野不变,网络深度加深,使得网络的精度更高
- 使得每一层的感受野增大,学习小特征的能力变大
- 有效提取高层语义信息,且对高层语义进行加工,有效提高网络准确度
- 利用该结构有效减轻网络的权重
D。解析:多分支结构,大卷积核拆成小卷积核串联,3*3卷积拆成3*1和1*3卷积,使用1*1卷积等,能够减轻网络权重。
9. 下图是一个利用sigmoid函数作为激活函数的含四个隐藏层的神经网络训练的梯度下降图。这个神经网络遇到了梯度消失的问题。下面哪个叙述是正确的?
第一隐藏层对应D,第二隐藏层对应C,第三隐藏层对应B,第四隐藏层对应A
解析:在神经网络反向传播中,梯度从后往前传,梯度不断减小,最后变为零,此时,浅层的神经网络权重得不到更新,那么前面隐藏层的学习速率低于后面隐藏层的学习速率,即随着隐藏层数目的增加,分类准确率反而下降了。这种现象叫做梯度消失。梯度消失导致后层的权重更新的快,靠近输出层的权值更新相对正常,前层网络由于梯度传递不过去得不到更新。因此,靠近输入层的更新会变得很慢,导致靠近输入层的隐藏层权值几乎不变,接近于初始化的权值。这样在网络很深的时候,学习的速度很慢或者无法学习。D的学习速率最慢,因此是第一隐藏层。
10. 以下关于深度神经网络的说法中错误的是
A 使用梯度裁剪(gradient clipping)有助于减缓梯度爆炸问题
B 若batch size过小,batch normalization的效果会出现退化
C 在使用SGD训练时,若训练loss的变化逐渐平缓不再明显下降时,通常可以通过减小learning rate的方式使其再进一步下降
D 增大L2正则项的系数有助于减缓梯度消失问题
D。解析:L2正则化用于降低模型复杂度,防止过拟合,不能缓解梯度消失。残差结构、合适的激活函数、梯度裁剪、BN、初始化等可以缓解梯度消失。
11. 下列关于神经网络的叙述中,正确的是
A 损失函数关于输入一定是非凸或非凹的
B 存在某种深度神经网络(至少一个隐藏层),使其每个局部最优解都是全局最优解
C 深度神经网络容易陷入局部最优解
D 以上选项都不对
解析:B。神经网络容易陷入的是鞍部而不是局部最优解,在多维度的损失函数中局部最小点非常少。
12. 图像挖掘中常用卷积神经网络作为基础结构,以下关于卷积操作 (conv)和池化 ( pooling)的说法正确的是?
A conv基于平移不变性,pooling基于局部相关性
解析:平移不变性:对于同一张图及其平移后的版本,都能输出同样的结果。局部相关性:池化层利用局部相关性,对图像进行下采样,可以减少数据处理量同时保留有用信息,相当于图像压缩。
13.RNN中哪个做法能够更好处理梯度爆炸问题?
A 用LSTM或GRU
B 梯度裁剪
C dropout
解析:B。LSTM中有梯度累加,能够减轻梯度消失问题,但是会加剧梯度爆炸问题。最好的做法是限制梯度范围,进行梯度裁剪。
14. 关于神经网络中经典使用的优化器,以下说法正确的是
A Adam的收敛速度比RMSprop慢
B 相比于SGD或RMSprop等优化器,Adam的收敛效果是最好的
C 对于轻量级神经网络,使用Adam比使用RMSprop更合适
D 相比于Adam或RMSprop等优化器,SGD的收敛效果是最好的
解析:D。SGD 能收敛到极小值,但用时比较长。如果在意更快的收敛,并且需要训练较深较复杂的网络时,推荐使用学习率自适应的优化方法。
15. (多选)影响聚类算法效果的主要原因有?
A、特征选取
B、模式相似性测度
C、分类准则
D、已知类别的样本质量
解析:ABC。聚类是无监督,不使用标记好的数据。