正则化(Regularization)

机器学习中,我们需要通过一些训练数据来学习一个模型运用到测试数据中去,当这个模型的复杂度很高,即参数很多时,往往在训练数据上表现很好,但在测试数据上表现很差,造成测试结果与训练结果差异很大的现象,即过拟合。这就需要我们增加模型的泛化能力,降低模型的复杂度,这就是正则化的作用。

1.L1、L2

比较通用的增加模型泛化能力的方法就是为模型增加一个惩罚项,这个惩罚项一般有L1范数、L2范数以及L1与L2范数耦合。
加了正则化项之后的目标函数为
在这里插入图片描述
在这里插入图片描述

2.dropout

dropout就是在前向网络中,随机置0一些神经元,即让神经元的激活值以一定的概率p停止工作,这样可以使模型泛化性更强,因为它不会太依赖某些局部的特征。
加入dropout后的函数:y=fw(x)——>y=fw(x,z) (z为dropout掩码)
dropout掩码为一个随机值,在测试中平均化这个随机值:
在这里插入图片描述
Δ:可以在测试时乘一个dropout概率p,或者在训练时乘p,测试时不乘(训练时一般使用GPU速度很快,乘以p基本不会增加耗时)。
Δ:加了dropout只在未置0地节点上传递梯度,所以每次只更新一部分小样本,所以训练时间变长。

3.批量归一化 BN

与dropout思想一样,在训练时用随机小样本的状态(均值与标准差)来归一化,测试时用固定的一个状态量(所有状态量的均值)

4.数据增强 Data Augmentation

通过改变数据(翻转、旋转、颜色抖动等)来改变数据。如一只猫的图片翻转过来仍然是一只猫的图片,可用翻转的图片也进行训练。
训练时,在随机裁剪和缩放的图片中采样;
测试时,在固定的裁剪中取均值,通常为4个角、中心位置以及它们的翻转图。

5.Data Connection

与dropout相似,不过随机置0地是权重矩阵中地一些权重值。

6.部分最大池化 Fractional Max Pooling

训练时随机选取最大池化的区域,测试时取某个固定的区域平均的结果

7.随即深度 Stochastic Depth

训练时随即消除一些层,在测试时用全部层来进行测试

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值