深度学习基础面试知识

Posted myriads_changes_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深度学习基础面试知识相关的知识,希望对你有一定的参考价值。

Batch Normalization(BN)

BN是训练神经网络的一种方法
目标:将特征(每层激活函数后的输出)归一化均值为0,标准差为1
作用

  • 可以使用更大的学习率,加快模型的收敛。(BN将不稳定的数据归一化为合理稳定的数据【数据起伏大】)
  • BN可以有助于权重值的学习。(可以避免X值经过直线的非线性激活函数后过饱和的线性情况)
  • 可以有效的减少(抑制)过拟合现象

Bias和Variance(偏差和方差)

bias 是当前模型的平均预测与我们需要预测的实际结果之间的差异。一个bias高的模型,简单、欠拟合

Variance为模型输出在一个数据点上的分布,Variance越大,模型在训练集上面的表现越好,但是在测试集上面很差,过拟合

模型评估指标

  1. AP(平均精度)
  2. mAP(各类平均精度)
  3. Acc(精准率)
  4. Recacc(召回率)
  5. Precision(精准率)
  6. F1-score
  7. ROC曲线

前向过程

前向过程是一个帮助模型计算每一层权重的过程,其中结果计算将产生一个结果,此时计算损失值,显示模型的好坏

反向求导

反向求导,为了降低损失函数的值,需要进行求导。反向求导可以帮助我们计算模型的每一层大导数,再更具每一层的优化器,更新神经网络的权重值

反复迭代

反复迭代就是通过前向计算、反向求导、反向传播的反复迭代,降低模型损失,从而达到收敛效果。

激活函数

目前主流的卷积神经网络框架都会遵循类似卷积—>>池化—>>卷积—>>池化…—>>全连接—>>softmax 这样的网络结构,其中在卷积层后都会有跟随着一层激活层
.
作用激活函数是用来加入非线性因素的,因为线性模型的表达能力不够

Sigmoid

Sigmoid又叫作 Logistic 激活函数,它将实数值压缩进 0 到 1 的区间内,还可以在预测概率的输出层中使用。该函数将大的负数转换成 0,将大的正数转换成 1。

Sigmoid缺陷:
- 梯度消失: 注意:Sigmoid 函数趋近 0 和 1 的时候变化率会变得平坦,也就是说,Sigmoid 的梯度趋近于 0。神经网络使用
Sigmoid 激活函数进行反向传播时,输出接近 0 或 1 的神经元其梯度趋近于
0。这些神经元叫作饱和神经元。因此,这些神经元的权重不会更新。此外,与此类神经元相连的神经元的权重也更新得很慢。该问题叫作梯度消失。因此,想象一下,如果一个大型神经网络包含
Sigmoid 神经元,而其中很多个都处于饱和状态,那么该网络无法执行反向传播。

  • 不以零为中心: Sigmoid 输出不以零为中心的。
  • 计算成本高: exp() 函数与其他非线性激活函数相比,计算成本高

Tanh

Tanh 激活函数又叫作双曲正切激活函数(hyperbolic tangent activation function)。与 Sigmoid 函数类似,Tanh 函数也使用真值,但 Tanh 函数将其压缩至-1 到 1 的区间内。与 Sigmoid 不同,Tanh 函数的输出以零为中心,因为区间在-1 到 1 之间。你可以将 Tanh 函数想象成两个 Sigmoid 函数放在一起。在实践中,Tanh 函数的使用优先性高于 Sigmoid 函数。负数输入被当作负值,零输入值的映射接近零,正数输入被当作正值

Tanh 函数也会有梯度消失的问题

ReLU


当输入 x<0 时,输出为 0,当 x> 0 时,输出为 x。该激活函数使网络更快速地收敛。它不会饱和,即它可以对抗梯度消失问题,至少在正区域(x> 0 时)可以这样,因此神经元至少在一半区域中不会把所有零进行反向传播。由于使用了简单的阈值化(thresholding),ReLU 计算效率很高。
ReLU缺陷

  • 不以零为中心:和 Sigmoid 激活函数类似,ReLU 函数的输出不以零为中心。
  • 前向传导(forward pass)过程中,如果 x < 0,则神经元保持非激活状态,且在后向传导(backward
    pass)中「杀死」梯度。这样权重无法得到更新,网络无法学习。当 x = 0
    时,该点的梯度未定义,但是这个问题在实现中得到了解决,通过采用左侧或右侧的梯度的方式。

参考:常见的激活函数总结

希望对你有用!
谢谢点赞评论!

以上是关于深度学习基础面试知识的主要内容,如果未能解决你的问题,请参考以下文章

Java 面试知识点解析——基础知识篇

Java 面试知识点解析——基础知识篇

深度学习相关面试知识点

Java 面试知识点解析——高并发编程篇

计算机视觉面试知识点总结

2021年校招/春招/秋招/自然语言处理/深度学习/机器学习知识要点及面试笔记