「深度学习」深度学习面试必备的 25 个问题( 二 )


11.使用Batchnorm有什么优势?
答:Batchnorm能够加快训练过程 , 而且(一些噪音的副产品)还具有调节作用 。
12.什么是多任务学习?应该在什么时候使用?
答:当我们使用少量数据处理多个任务时 , 多任务处理将很有用 , 而且我们还可以使用在其他任务的大型数据集上训练好的模型 。 通过“硬”方式(即相同的参数)或“软”方式(即对成本函数进行正则化/惩罚)共享模型的参数 。
13.什么是端到端学习?列举一些优点 。
答:端到端学习通常是一个模型 , 该模型能够获取原始数据并直接输出所需的结果 , 而无需任何中间任务或功能工程 。 其优点包括:无需手工构建功能 , 而且通常可以降低偏差 。
14.如果在最后一层中 , 我们先使用ReLU激活函数 , 然后再使用Sigmoid函数 , 会怎 样?
答:由于ReLU始终会输出非负结果 , 因此该神经网络会将所有输入预测成同一个类别!
15.如何解决梯度爆炸的问题?
答:解决梯度爆炸问题的一个最简单的方法就是梯度修剪 , 即当梯度的绝对值大于M(M是一个很大的数字)时 , 设梯度为±M 。
16.使用批量梯度下降法时 , 是否有必要打乱训练数据?
答:没有必要 。 因为每个epoch的梯度计算都会使用整个训练数据 , 所以打乱顺序也没有任何影响 。
17.当使用小批量梯度下降时 , 为什么打乱数据很重要?
答:如果不打乱数据的顺序 , 那么假设我们训练一个神经网络分类器 , 且有两个类别:A和B , 那么各个epoch中的所有小批量都会完全相同 , 这会导致收敛速度变慢 , 甚至导致神经网络对数据的顺序产生倾向性 。
18.列举迁移学习的超参数 。
答:保留多少层、添加多少层、冻结多少层 。
19. 测试集上是否需要使用dropout?
答:不可以使用!dropout只能用于训练集 。 dropout是训练过程中应用的一种正则化技术 。
20.说明为什么神经网络中的dropout可以作为正则化 。
答:关于dropout的工作原理有几种解释 。 我们可以将其视为模型平均的一种形式:我们可以在每一步中“去掉”模型的一部分并取平均值 。 另外 , 它还会增加噪音 , 自然会产生调节的效果 。 最后 , 它还可以稀释权重 , 从根本上阻止神经网络中神经元的共适应 。
21. 举个适合多对一RNN架构的例子 。
答:例如:情绪分析 , 语音中的性别识别等 。
22.我们什么时候不能使用BiLSTM?说明在使用BiLSTM我们必须做的假设 。
答:在所有双向模型中 , 我们都可以假设在给定的“时间”内访问序列的下一个元素 。 文本数据(例如情感分析、翻译等)就是这种情况 , 而时间序列数据则不属于这种情况 。
23. 判断对错:将L2正则化添加到RNN有助于解决梯度消失的问题 。
答:错误!添加L2正则化会将权重缩小为零 , 在某些情况下这实际上会让梯度消失的问题更严重 。
24. 假设训练错误/成本很高 , 而且验证成本/错误几乎与之相等 。 这是什么意思?我们应该做些什么?
答:这表明欠拟合 。 我们可以添加更多参数 , 增加模型的复杂性或减少正则化 。
25. 说明为何L2正则化可以解释为一种权重衰减 。
答:假设我们的成本函数为C(w) , 我们再加上一个c|w|2 。 使用梯度下降时 , 迭代如下:
w = w -grad(C)(w) — 2cw = (1–2c)w — grad(C)(w)
在该等式中 , 权重乘以因子<1
原文:https://towardsdatascience.com/50-deep-learning-interview-questions-part-1-2-8bbc8a00ec61
本文为 CSDN 翻译 , 转载请注明来源出处 。


推荐阅读