卷积
降低宽高,增加通道的一种特征处理方式
通常进行“下采样”
“一核一通道”:一组卷积核,只卷积一组数据,只得到单通道的卷积结果
感受野
卷积结果每像素在原图上对应的大小,常为3*3
同时,两个33叠加使用,可实现55的感受野,而减少权重数量
过拟合原因
参数过多,参数数量大于数据的信息量
解决办法:减少参数,增加效率
过拟合其实就是为了得到一致假设而使得假设过于地严格。使得其在训练集上的表现非常地完美,但是在训练集以外的数据集却表现不好。
解决办法:
1、样本方面
1)增加样本量
2)样本筛选(特征降维、特征选择)【?】
3)归一化数据样本(BN)
2、模型方法
1)正则化——使模型简单化、参数稀疏化
正则化其实就是在原来的损失函数后面增加了一项加数,这项加数称之为正则项,其主要是通过正则项来限制权重w参数的值的变化
2)归一化(Normalization)
3)dropout(随机丢弃)——随机删除一些神经元
4)early stopping(早停法)【?】
概念:其实就是在发现验证集的正确率在下降的时候就停止训练,将最后的一组权重作为最终的参数。
交叉熵
用标签和输出的对数相乘,即为交叉熵
将其作为损失函数,即为交叉熵损失函数,一般用于分类问题
DropOut
把失活训练单元扔出网络,即为DropOut(扔出法)
不断重复这一过程:
①恢复失活的神经元;
②重新让所有神经元以一定概率p失活(这次失活的和上次失活的神经元并不一定相同);
③让输入通过部分神经元失活的新网络进行前向传播,然后计算损失并把损失反向传播,新的一批样本执行完这个过程后,根据梯度下降算法更新参数(w,b);残差网络
梯度消失/爆炸
权重中出现“0”,就会链式影响所有参数,导致梯度计算错误
解决办法resnet
BN、Batch Normalization(批归一化)
Batch Normalization(简称BN)就是对每一批数据进行归一化
归一化即把数据范围变到[-1, 1]附近
BN步骤主要分为4步:
1.求每一个训练批次数据的均值
2.求每一个训练批次数据的方差
3.使用求得的均值和方差对该批次的训练数据做归一化,获得(0,1)正态分布。其中ε是为了避免除数为0时所使用的微小正数。
4.尺度变换和偏移:将xi乘以γ调整数值大小,再加上β增加偏移后得到yi,这里的γ是尺度因子,β是平移因子。这一步是BN的精髓,由于归一化后的xi基本会被限制在正态分布下,使得网络的表达能力下降。为解决该问题,我们引入两个新的参数:γ,β。 γ和β是在训练时网络自己学习得到的。
换句话说正态分布式的数据归一化变成了下面的形式来进行数据归一化
resnet(残差网络)
在网络输出中,加入一个原输入,避免权重=0带来的坏影响
为什么叫残差网络: