深度学习面试题-3

article/2025/10/3 9:58:32

1. 梯度爆炸问题是指在训练深度神经网络的时候,梯度变得过大而损失函数变为无穷。在RNN中,下面哪种方法可以较好地处理梯度爆炸问题?

A 用改良的网络结构比如LSTM和GRUs
B 梯度裁剪
C Dropout
D 所有方法都不行

正确答案是:B, 您的选择是:A
解析:为了处理梯度爆炸问题,最好让权重的梯度更新限制在一个合适的范围。

LSTM在反向传播的时候,会有梯度累加,所以会减轻梯度消失的问题,但是由于有加法,所以如果存在梯度爆炸的可能,反而会加剧爆炸一般用强制截断来避免梯度爆炸

2. 有许多种梯度下降算法,其中两种最出名的方法是l-BFGS和SGD。l-BFGS根据二阶梯度下降而SGD是根据一阶梯度下降的。 在下述哪些场景中,会更加偏向于使用l-BFGS而不是SGD? 场景1: 数据很稀疏 场景2: 神经网络的参数数量较少

A 场景1
B 场景2
C 两种情况都是
D 都不会选择l-BFGS

正确答案是:C, 您的选择是:D
解析:在这两种情况下,l-BFGS的效果都是最好的

3. 下面哪种方法没办法直接应用于自然语言处理的任务?

A 去语法模型
B 循环神经网络
C 卷积神经网络
D 主成分分析(PCA)

正确答案是:D, 您的选择是:A
解析:主成分分析(PCA)主要用于特征降维,后续还需要接其他算法进行自然语言处理。

PCA只是一种数据维度调整方法

4. 对于非连续目标在深度神经网络的优化过程中,下面哪种梯度下降方法是最好的?

A SGD
B AdaGrad
C l-BFGS
D 拉格朗日松弛Subgradient method

正确答案是:D, 您的选择是:A
解析:优化算法无法作用于非连续目标

5. 下面哪个叙述是对的? Dropout对一个神经元随机屏蔽输入权重 Dropconnect对一个神经元随机屏蔽输入和输出权重

A 1是对的,2是错的
B 都是对的
C 1是错的,2是对的
D 都是错的

正确答案是:D, 您的选择是:B
解析:在dropout的过程中,神经元被失活,在dropconnect的过程中,失活的是神经元之间的连接。 所以dropout会使输入和输出权重都变为无效,而在dropconnect中,只有其中一种会被失活。

区别在于失活的是神经元还是连接,神经元失活时,相当于训练时暂时将该神经元排除在外,输入和输出权重无效。

6. 当训练一个神经网络来作图像识别任务时,通常会绘制一张训练集误差和交叉训练集误差图来进行调试。在图中,最好在哪个时间停止训练?

在这里插入图片描述

A. D
B. A
C. C
D. B

正确答案是:C, 您的选择是:C
解析:你最好在模型最完善之前「提前终止」,所以C点是正确的。

7. 反向传播算法一开始计算什么内容的梯度,之后将其反向传播?

A 预测结果与样本标签之间的误差
B 各个输入样本的平方差之和
C 各个网络权重的平方差之和
D 都不对

正确答案是:A, 您的选择是:A
解析:BP算法是一个迭代算法,它的基本思想如下: 将训练集数据输入到神经网络的输入层,经过隐藏层,最后达到输出层并输出结果,这就是前向传播过程。 由于神经网络的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层; 在反向传播的过程中,根据误差调整各种参数的值(相连神经元的权重),使得总损失函数减小。 迭代上述三个步骤(即对数据进行反复训练),直到满足停止准则。

8. 在构建一个神经网络时,batch size通常会选择2的次方,比如256和512。这是为什么呢?

A 当内存使用最优时这可以方便神经网络并行化
B 当用偶数是梯度下降优化效果最好
C 这些原因都不对
D 当不用偶数时,损失值会很奇怪

正确答案是:A, 您的选择是:A
解析:计算机中 CPU 和 GPU 的 memory 都是 2进制方式存储,将 batch size 设置成2的幂次就顺理成章了。

9. Xavier初始化是最为常用的神经网络权重初始化方法, V a r ( W ) = 2 n i n + n o u t \mathrm{Var}(W)=\frac{2}{n_{in}+n_{out}} Var(W)=nin+nout2是初始化的公式。Xavier初始化是用来帮助信号能够在神经网络中传递得更深,下面哪些叙述是对的?

  1. 如果权重一开始很小,信号到达最后也会很小
  2. 如果权重一开始很大,信号到达最后也会很大
  3. Xavier初始化是均匀分布中采样得到的
  4. Xavier初始化可以帮助减少梯度弥散问题

A. 234
B. 1234
C. 124
D. 134

正确答案是:B, 您的选择是:D
解析:所有项目都是正确的

10. 一个循环神经网络可以被展开成为一个完全连接的、具有无限长度的普通神经网络,这种说法是

A 正确的
B 错误的

正确答案是:A, 您的选择是:B
解析:循环神经元可以被认为是一个具有无限时间长度的神经元序列。

11. Dropout是一种在深度学习环境中应用的正规化手段。它是这样运作的:在一次循环中我们先随机选择神经层中的一些单元并将其临时隐藏,然后再进行该次循环中神经网络的训练和优化过程。在下一次循环中,我们又将隐藏另外一些神经元,如此直至训练结束。根据以上描述,Dropout技术在下列哪种神经层中将无法发挥

在这里插入图片描述
A 仿射层
B 卷积层
C RNN层
D 均不对

正确答案是:C, 您的选择是:B
解析:Dropout对于循环层效果并不理想,你可能需要稍微修改一下dropout技术来得到良好的结果。

12. 假设你的任务是使用一首曲子的前半部分来预测乐谱的未来几个小节,比如输入的内容如下的是包含音符的一张乐谱图片:而你需要输出描绘了接下来若干个音符的图片:关于这类问题,哪种架构的神经网络最好?

在这里插入图片描述
在这里插入图片描述

A 神经图灵机
B 附加有循环单元的卷积神经网络
C 端到端完全连接的神经网络
D 都不可用

正确答案是:B, 您的选择是:D
解析:RNN的序列和CNN的空间,是有区分的 序列问题,强调的是先后顺序,这也引申出上下文的概念,一个翻译问题,这个词的含义可能和前后的单词形成的这个组合有联系(Skip-gram),也可能是它之前的所有单词都有联系(Attention),并且,借助RNN的state这样的记忆单元,使得一个序列位置的输出在数学上和之前的所有序列的输入都是有关系的。当然原始的RNN由于梯度的乘性问题,前面的序列的影响近乎为0,这个后面又用LSTM来修正为加性问题。RNN的数学基础可以认为是马尔科夫链,认为后续的值是有前者和一些参数的概率决定的。 CNN的卷积核,强调的是空间中的窗口,这个窗口和序列问题相同之处在于同样考虑前后,但RNN没有也不会考虑到空间上下问题。类似股票的价格,也不会在同一个x上出现多个y(价格),整个空间只有一条线,这样的数据密度本身也是不适合用CNN的

13. 当在内存网络中获得某个内存空间时,通常选择读取矢量形式数据而不是标量,这里需要的哪种类型的寻址来完成?

A 基于内容的寻址
B 基于位置的寻址
C 都不行
D 都可以

正确答案是:A, 您的选择是:A

14. 一般我们建议将卷积生成对抗网络(convolutional generative adversarial nets)中生成部分的池化层替换成什么?

A 跨距卷积层(Strided convolutional layer)
B ReLU层
C 局部跨距卷积层(Fractional strided convolutional layer)
D 仿射层(Affine layer)

正确答案是:C, 您的选择是:A

15. 以下哪些是通用逼近器?

A Kernel SVM
B Neural Networks
C Boosted Decision Trees
D 以上所有

正确答案是:D, 您的选择是:D

16. 在CNN中使用1×1卷积时,下列哪一项是正确的?

A 它可以帮助降低维数
B 可以用于特征池
C 由于小的内核大小,它会减少过拟合
D 所有上述

正确答案是:D, 您的选择是:D
解析:1×1卷积在CNN中被称为bottleneck structure。


http://chatgpt.dhexx.cn/article/MTTbE1s4.shtml

相关文章

深度学习算法面试题总结(38题)

原文链接:https://blog.csdn.net/attitude_yu/article/details/80963323 1. 什么是凸集、凸函数、凸学习问题? 凸集:若对集合C中任意两点u和v,连接他们的线段仍在集合C中,那么集合C是凸集。 公式表示为:αu(1-α)v∈C…

深度学习笔试、面试题 一

1、神经网络模型(Neural Network)因受人类大脑的启发而得名,神经网络由许多神经元(Neuron)组成,每个神经元接受一个输入,对输入进行处理后给出一个输出,如下图所示。请问下列关于神经…

面试笔试整理3:深度学习机器学习面试问题准备(必会)

第一部分:深度学习 1、神经网络基础问题 (1)Backpropagation(要能推倒)   后向传播是在求解损失函数L对参数w求导时候用到的方法,目的是通过链式法则对参数进行一层一层的求导。这里重点强调&#xff…

机器学习与深度学习常见面试题

为了帮助参加校园招聘、社招的同学更好的准备面试,SIGAI整理出了一些常见的机器学习、深度学习面试题。理解它们,对你通过技术面试非常有帮助,当然,我们不能只限于会做这些题目,最终的目标是真正理解机器学习与深度学习…

深度学习最全面试题总结(二)

👨‍💻作者简介: CSDN、阿里云人工智能领域博客专家,新星计划计算机视觉导师,百度飞桨PPDE,专注大数据与AI知识分享。✨公众号:GoAI的学习小屋 ,免费分享书籍、简历、导图等&#xf…

大厂必考深度学习面试题及参考答案

目录 一,滤波器与卷积核二,卷积层和池化输出大小计算 2.1,CNN 中术语解释2.2,卷积输出大小计算(简化型)2.3,理解边界效应与填充 padding参考资料三,深度学习框架的张量形状格式四&am…

深度学习面试必备的25个问题

作者 | Tomer Amit 译者 | 弯月,编辑 | 屠敏 出品 | CSDN(ID:CSDNnews) 在本文中,我将分享有关深度学习的25个问题,希望能够帮助你为面试做好准备。 1.为什么必须在神经网络中引入非线性? 答&am…

深度学习算法面试题总结

1. 什么是凸集、凸函数、凸学习问题? 凸集:若对集合C中任意两点u和v,连接他们的线段仍在集合C中,那么集合C是凸集。 公式表示为:αu+(1-α)v∈C α∈[0, 1] 凸函数:凸集上的函数是凸函数。凸函数的每一个局部极小值也是全局极小值( f(x) = 0.5x^2 )。 公式表示为:f(αu…

用python计算n的阶乘的方法!(含示例代码)

前言: 今天为大家的内容是:用python计算n的阶乘的方法!(含示例代码)希望通过本文内容能够对各位有所帮助,要是喜欢的话记得点赞转发收藏关注不迷路哦!!! 提示&#xff…

python计算n的阶乘

1.程序 n int(input())def fact(n):if n 0 | n 1:return 1elif n > 1:return n * fact(n - 1)print(fact(n)) 2.分析 首先,阶乘本身就是一个递归问题,那最好的方法就是写一个递归函数,即函数调用自身,递归函数一定要有基…

Python应用之计算阶乘

1.背景知识 阶乘是基斯顿卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号。一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,通俗的讲也就是按顺序从1乘到n,所得的那个数就是n的阶乘。0的阶乘为1,自然数n的阶乘写作n!。即:0!= 11!= 12!= …

Python阶乘求和的方法

Python阶乘求和的方法 题目描述: 获得用户输入的整数n,输出 1!2!…n!的值。 如果输入数值为0、负数、非数字或非整数,输出提示信息:输入有误,请输入正整数。 (推荐学习:Python视频教程&…

用Python进行1的阶乘到10的阶乘相加的计算

用Python实现1的阶乘到10的阶乘相加之和 对于阶乘我们不得不想到迭代,但其实除了迭代还有其他的办法,这里我将介绍我知晓的几种方法: 首先我们应知道迭代和递归的区别: 递归是针对于函数来讲的,我们常说函数递归调用,这…

Python阶乘求和

题目: 获得用户输入的整数n,输出 1!2!…n!的值。 思路: 依次计算每个阶乘的值,然后相加起来,即可得到结果 代码: # 获得用户输入的整数n,输出 1!2!…n!的值。 num int(input("please i…

python计算阶乘方法

1. 阶乘的概念 公式&#xff1a; n ! ∏ k 1 n k , ∀ n ≥ 1. n! \prod_{k1}^{n} k, \forall n\geq1. n!∏k1n​k,∀n≥1. 2. 方法1&#xff1a;循环 # method 1. def factorial_1(n):if n<1:return 1res 1for i in range(1, n1):res * ireturn res测试&#xff1a…

Python计算阶乘(5种方法)

Python计算阶乘 第一次写博客&#xff0c;请多多指教 五种方法计算阶乘方法如下&#xff1a; 1.利用循环&#xff0c;如下代码演示 def main(num):a1for i in range(1,num1):a*ireturn aprint(main(10))执行结果如下&#xff1a; 2.导入functools中的reduce模块 from func…

python入门学习——6种方法求n的阶乘(8种写法)

一、阶乘&#xff08;factorial&#xff09; 自然数n&#xff01;&#xff08;n的阶乘&#xff09;是指从1、2……&#xff08;n-1&#xff09;、n这n个数的连乘积&#xff0c;即 n&#xff01;n&#xff08;n-1&#xff09;……21 如&#xff1a; 1&#xff01; 1 1 2&…

Fiddler模拟发送POST请求

在发起POST请求时不像GET请求可以在浏览器地址栏直接输入&#xff0c;POST请求的参数是放在请求体中的&#xff0c;因此如果想要模拟POST请求&#xff0c;需要借助工具&#xff0c;比如Postman或者Fiddler&#xff0c;这里简单介绍一下Fiddler模拟Post请求的方法。 输入请求ur…

轻松把玩HttpClient之模拟post请求示例

HttpClient 是 Apache Jakarta Common 下的子项目&#xff0c;可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包&#xff0c;并且它支持 HTTP 协议最新的版本和建议。当前官网最新版介绍页是&#xff1a;http://hc.apache.org/httpcomponents-client-4…

IDEA模拟post发送请求

第一步&#xff1a; 第二步&#xff1a; 发送请求准备 第三步&#xff1a;查看结果