一、AI学习笔记|优化基础

1、数据集配置

有人将数据集划分成训练集、验证集和测试集,也有人只划分成训练集和测试集。

验证集和测试集的数据来源要一致。

尽量保证数据的来源一致。

对于小型数据集的划分一般的分配比例是7/3(训练集和测试集)或者6/2/2(训练集、验证集和测试集)

对于大型数据集的划分一般的分配比例是98/1/1 或者99.5/0.4/0.1

2、欠拟合和过拟合

欠拟合:模型对训练数据的预测准确率较低

过拟合:模型对训练数据集的预测准确率较高,但是对验证数据集的预测准确率很低

欠拟合的解决方法

  • 使用更复杂的网络(网络的层数、神经元的个数)

  • 增加训练次数

  • 使用其他网络架构

  • 尝试寻找优化方法

过拟合的解决方法

  • 增加训练数据

  • 使用正则化(L1、L2等)

  • 使用不同的网络架构

  • Dropout

3、Dropout

也是解决过拟合的常用方法之一

基本原理:随机的删除神经元,将复杂的神经网络变成较简单的的神经网络

缺点:每次训练时神经网络的结构都不相同,成本不会随着训练的次数而递减,所有无法监视其训练过程。通常先把dropout关掉,

然后训练,观察成本是否有下降趋势。是则开启dropout进行训练

4、数据增强

例如图片可以翻转,旋转,截取

5、输入特征归一化

假设每一个样本都有两个特征 x1 和 x2,归一化方法的

第一步就是使数据集的平均值成为 0,我们使每一个样本减去当前平均值来达到这个目的。

第一个求平均值公式,第二个是减去平均值公式。

第二步使数据集的方差变为 1, 使用下面的公式达到方差变为 1 的目的

其中是经过第一步处理后的

注意:

若训练集经过了归一化处理,则测试集和实际应用中的数据也要进行归一化处理,并且归一化处理时,要使用训练集计算出来的μ 和 σ, 只需要将数据直接减去μ 和 σ就可以了

6、梯度消失和梯度爆炸

梯度消失会导致偏导数极端的小,就会导致很多层的学习变得很慢几乎都不学习。成为僵尸层,使深层神经网络编程浅层神经网络。

梯度爆炸就会导致偏导数极端的大,就会导致很多层乱学习,而且数值可能大到超出了合法的范围值,变成了 NaN,从而导致无法再学习。

在实际应用中梯度消失出现的比较多,又是因为梯度是反向传播从后面算起的,所有梯度消失会导致前面的层梯度越来越小,所有经常会出现训练了很久,前面的层的权重还是一样的。

梯度消失和梯度爆炸是反向传播训练算法与生俱来的缺陷。

延缓梯度消失和梯度报站的主要方法有:

L2正则化、relu激活函数、batchnorm、残差结构、LSTM等

7、梯度检验

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值