面试+机器学习题目

xiaoxiao2021-02-28  6

一、CNN

层级结构:输入层->卷积层->激活层->卷积层->激活层····

数据输入层(数据预处理):三种方法:去均值(即0均值化,CNN常用,训练集所有像素值减去均值,把输入数据各个维度中心化到0,测试集也减相同的均值);归一化(幅度归一化到同样的范围);PCA/白化(降维,白化是对数据每个特征轴上的幅度归一化)。

去均值的目的:(1)数据有过大的均值可能导致参数的梯度过大,在梯度回传时会有一些影响;(2)如果有后续的处理,可能要求数据0均值,比如PCA。

归一化的目的:为了让不同维度的数据具有相同的分布规模,方便操作,图像一般不需要。

白化的目的:相当于在零均值化和归一化操作之间插入一个旋转操作,将数据投影在主轴上。图像一般不需要,因为图像的信息本来就是依靠像素之间的相对差异来体现的。

参数初始化:随机初始化,给每个参数随机赋予一个接近0的值(不可0初始化)。

卷积计算层/CONV layer:参数共享机制。(跟过滤好像);作用:提取特征,通过BP误差的传播,可以得到对于这个任务最好的卷积核。

激活层(把卷积层输出结果做非线性映射):

Sigmoid,tanh,ReLU

Leaky ReLU:f(x)=max(0.01x,x),Maxout。

池化层/Pooling layer:夹在连续的卷积层中间。作用:1.具有压缩数据和参数的量,减小过拟合的作用。包括Max pooling 和average pooling;2.引入不变性,包括平移、旋转、尺度不变性。

全连接层/FC layer:通常在卷积神经网络尾部

训练算法:

(1)     先定义Loss function,衡量和实际结果之间的差距;交叉熵

(2)     找到最小化损失函数的w和b,CNN中用的算法是随机梯度下降SGD;

(3)     BP算法利用链式求导法则,逐级相乘直到求解出dW和db.

为什么用SGD:(1)数据量庞大,直接梯度很慢;(2)代价函数非凸,容易陷入局部极值。

CNN为什么这么好用?局部连接获得局部信息,权值共享减少了参数,保证高效。

与DNN的区别?全连接DNN上下层神经元都形成链接,带来参数数量的膨胀,而卷积核在所有图像是共享的。

RNN的特点?DNN无法对时间序列上的变化进行建模,RNN中,神经元的输出可以在下一个时间戳直接作用到自身。

RNN的梯度消失?原理和DNN一样,采用长短时记忆单元LSTM,通过门的开关实现时间上的几亿功能,门关闭,当前信息不需要,只有历史依赖;门打开,历史和当前加权平均。

二、调参优化方法

1.训练数据预处理:移除不良数据(噪声,空值等),去均值等。自动编码器要对数据进行归一化,因为激活函数如果sigmoid的话要用输出0~1与输出比较;

2.权值初始化(很重要,初始化好的话可以不需要调参):多次随机生成初始化,但不能全为0,根据目前最新的实验结果,权重的均匀初始化是一个不错的选择。高斯分布。

3.学习率的选取:一般从0.1开始,逐渐减小,如果在验证集上性能不再增加就让学习率除以2或者5,然后继续。所以要使用验证集,可以知道什么时候开始降低学习率,什么时候停止训练。

4.网络结构的构建(逐层训练):a.尽量选择更多的隐层单元和隐层数量,因为可以通过正则化的方法避免过拟合;b.合适的激活函数;c.正则优化:正则项L1,L2,Dropout,初始默认的是0.5,如果模型不是很复杂,可以设置为0.2.

5.Batchnormalization:大大加快训练速度和模型性能。本质原理就是在网络的每一层输入的时候,又插入了一个可学习,有参数的归一化层,并且为每一层的神经元引入了变换重构,可以恢复出原始网络所学习的特征分布。在神经网络训练时遇到收敛速度慢或爆炸时可以尝试BN解决。

6.优化方法:不仅有BP,还有adagrad优化方法,Bp学习速率都一样,但是同一个更新速率并不一定适合所有参数,因此ada就是对于每个参数分配不同的学习率,但是随着更新距离的增多,学习速率也会变慢。

三、神经网络归一化的目的

神经网络学习过程的本质就是为了学习数据分布,一旦训练数据与测试数据的分布不同,那么网络的泛化能力也大大降低;另一方面,一旦每批训练数据的分布各不相同,那么网络就要在每次迭代都去学习适应不同的分布,这样会大大降低网络的训练速度。

四、深度学习如何过拟合?

三种方法:

数据集扩充:在源数据上做些改动,比如说图片数据集,可以将原始图片旋转一个小角度、添加随机噪声、加入一些有弹性的畸变、截取原始图片的一小部分等;

Dropout:相当于训练了很多个只有半数隐层单元的神经网络,每一个这样的半数网络都可以给出一个分类结果,这些结果有的是正确的,有的是错误的,随着训练的进行,大部分网络都可以给出正确的分类结果,少数的错误不会造成太大影响。

正则化!!

转载请注明原文地址: https://www.6miu.com/read-2250106.html

最新回复(0)