| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 深度学习面经总结 -> 正文阅读 |
|
[人工智能]深度学习面经总结 |
1. BN层的作用(1)BN使得网络中每层输入数据的分布相对稳定,加速模型学习速度 2. 空洞卷积空洞卷积(dilated convolution)是针对图像语义分割问题中下采样会降低图像分辨率、丢失信息而提出的一种卷积思路。利用添加空洞扩大感受野,让原本 3 × 3 3\times 3 3×3的卷积核,在相同参数量的情况下,用于 5 × 5 ( d i l a t e d r a t e = 2 ) 5 \times 5(dilated rate=2) 5×5(dilatedrate=2)或者更大的感受野,无须下采样。 存在问题:
3. 图像插值方法
f
(
x
,
y
2
)
=
f
(
x
1
,
y
2
)
?
x
2
?
x
x
2
?
x
1
+
f
(
x
2
,
y
2
)
?
x
?
x
1
x
2
?
x
1
f\left(x, y_{2}\right)=f\left(x_{1}, y_{2}\right) \cdot \frac{x_{2}-x}{x_{2}-x_{1}}+f\left(x_{2}, y_{2}\right) \cdot \frac{x-x_{1}}{x_{2}-x_{1}}
f(x,y2?)=f(x1?,y2?)?x2??x1?x2??x?+f(x2?,y2?)?x2??x1?x?x1?? 4. Focal loss
α
\alpha
α 平衡了正负样本数量,但实际上,目标检测中大量的候选目标都是易分样本,这些样本会使损失很低,因此模型应关注那些难分样本,将高置信度的样本损失函数降低一些,就有了Focal loss 5. 深度可分离卷积一些轻量级的网络,如mobilenet中,会有深度可分离卷积depthwise separable convolution,由depthwise(DW)和pointwise(PW)两个部分结合起来,用来提取特征feature map 相比常规的卷积操作,其参数数量和运算成本比较低 常规卷积操作 卷积层共4个Filter,每个Filter包含了3个Kernel,每个Kernel的大小为3×3。因此卷积层的参数数量可以用如下公式来计算: N_std = 4 × 3 × 3 × 3 = 108 深度可分离卷积
N_depthwise = 3 × 3 × 3 = 27
由于采用的是1×1卷积的方式,此步中卷积涉及到的参数个数可以计算为: N_pointwise = 1 × 1 × 3 × 4 = 12 经过Pointwise Convolution之后,同样输出了4张Feature map,与常规卷积的输出维度相同 6. 为什么说Dropout可以解决过拟合?(1)取平均的作用: 先回到标准的模型即没有dropout,我们用相同的训练数据去训练5个不同的神经网络,一般会得到5个不同的结果,此时我们可以采用 “5个结果取均值”或者“多数取胜的投票策略”去决定最终结果。例如3个网络判断结果为数字9,那么很有可能真正的结果就是数字9,其它两个网络给出了错误结果。这种“综合起来取平均”的策略通常可以有效防止过拟合问题。因为不同的网络可能产生不同的过拟合,取平均则有可能让一些“相反的”拟合互相抵消。dropout掉不同的隐藏神经元就类似在训练不同的网络,随机删掉一半隐藏神经元导致网络结构已经不同,整个dropout过程就相当于对很多个不同的神经网络取平均。而不同的网络产生不同的过拟合,一些互为“反向”的拟合相互抵消就可以达到整体上减少过拟合。 7. 知识蒸馏知识蒸馏指的是将复杂模型(teacher)中的dark knowledge迁移到简单模型(student)中去,一般来说,teacher模型具有强大的能力和表现,而student模型则体量很小。通过知识蒸馏,希望student模型能尽可能逼近亦或是超过teacher模型,从而用更少的复杂度来获得类似的预测效果,实现模型的压缩和量化。 总结来说,知识蒸馏,可以将一个网络的知识转移到另一个网络。做法是先训练一个teacher网络,然后使用这个teacher网络的输出和数据的真实标签去训练student网络。知识蒸馏,可以用来将网络从大网络转化成一个小网络,并保留接近于大网络的性能;也可以将多个网络的学到的知识转移到一个网络中,使得单个网络的性能接近emsemble的结果。 8. 1x1卷积核作用
9. add_with_concat联系
区别
结论 因此,像是需要将 A A A与 B B B的 T e n s o r Tensor Tensor进行融合,如果它们语义不同,则我们可以使用 C o n c a t Concat Concat的形式,如 U N e t UNet UNet, S e g N e t SegNet SegNet这种编码与解码的结构,主要还是使用 C o n c a t Concat Concat。 而如果 A A A与 B B B是相同语义,如 A A A与 B B B是不同分辨率的特征,其语义是相同的,我们可以使用 a d d add add来进行融合,如 F P N FPN FPN、 R e s N e t ResNet ResNet等网络的设计。 10. CNNCNN
两者目的都是减少参数。通过局部感受视野,通过卷积操作获取高阶特征,能达到比较好的效果。 池化的意义 1.特征不变形:池化操作是模型更加关注是否存在某些特征而不是特征具体的位置。 2.特征降维:池化相当于在空间范围内做了维度约减,从而使模型可以抽取更加广范围的特征。同时减小了下一层的输入大小,进而减少计算量和参数个数。 3.在一定程度上防止过拟合,更方便优化。 11. 感受野感受野(
R
e
c
e
p
t
i
v
e
Receptive
Receptive
F
i
e
l
d
Field
Field)的定义是卷积神经网络每一层输出的特征图(
f
e
a
t
u
r
e
feature
feature
m
a
p
map
map)上的像素点在原始输入图片上映射的区域大小。再通俗点的解释是,特征图上的一个点对应原始输入图片上的区域,如下图所示。 12. 欠拟合和过拟合解决欠拟合:
解决过拟合:
13. 优化器
14. 神经网络模型不收敛原因
对应的解决办法分别是:
15. 权重初始化方法
16. 网络模型训练技巧17. 时序建模模块18. 激活函数19. AUC和ROC20. L1和L2
21. 标签平滑- l a b e l label label s m o o t h i n g smoothing smoothing标签平滑采用如下思路:在训练时即假设标签可能存在错误,避免“过分”相信训练样本的标签。当目标函数为交叉熵时,这一思想有非常简单的实现,称为标签平滑(
L
a
b
e
l
Label
Label
S
m
o
o
t
h
i
n
g
Smoothing
Smoothing)。 平滑过后的样本交叉熵损失就不仅考虑到了训练样本中正确的标签位置( o n e one one- h o t hot hot 标签为 1 1 1 的位置)的损失,也稍微考虑到其他错误标签位置( o n e one one- h o t hot hot 标签为 0 0 0 的位置)的损失,导致最后的损失增大,导致模型的学习能力提高,即要下降到原来的损失,就得学习的更好,也就是迫使模型往增大正确分类概率并且同时减小错误分类概率的方向前进。 22. BN,LN,IN,GN, SNbatchNorm是在batch上,对NHW做归一化,对小batchsize效果不好; 23. FPN为何能够提升小目标的精度低层的特征语义信息比较少,但是目标位置准确;高层的特征语义信息比较丰富,但是目标位置比较粗略。原来多数的object detection算法都是只采用顶层特征做预测。FPN同时利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征达到预测的效果。并且预测是在每个融合后的特征层上单独进行的。所以可以提升小目标的准确率。 24. Softmax与sigmoid计算公式25. 为什么分类问题的损失函数采用交叉熵而不是均方误差MSE? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 15:31:34- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |