zoukankan      html  css  js  c++  java
  • 正则化(regularizaiton)

    1. 正则化定义

    修改学习算法,使其降低泛化误差(generalization error)而非训练误差。最新定义:旨在更好实现模型泛化的补充技术,即在测试集上得到更好的表现。(Kukacka et al,2017)

    2. 正则化用途

    正则化是为了防止过拟合, 进而增强模型的泛化能力。

    3. 正则化方法

    • 经验正则化:通过工程上的技巧来实现更低的泛化误差方法,比如:提前终止法(earlystopping)、模型集成、Dropout等;
    • 参数正则化:直接提供正则化约束,比如:L1/L2正则化法等;
    • 隐式正则化:不直接提供约束,比如:数据有关的操作,包括归一化、数据增强等。

    下面对常用的正则化方法进行介绍:

    3.1 提前终止法(earlystopping)

    提前终止法适用于模型表达能力很强的时候。此时模型的训练误差会随着训练次数的增多而逐渐下降,但是训练误差却会随着训练次数的增加呈现先下降再上升的趋势(模型可能开始过拟合),提前终止法就是在训练误差最低的时候终止训练。比如,模型训练次数从100次逐渐增加到200次,期间误差是不断减小的,但是测试误差可能是训练次数是100到150次时不断下降,从150次到200次又开始上升,这时候我们就要在训练次数为150次的时候终止训练,即训练次数取150。

    3.2 模型集成(ensemble)

    常用的模型集成方法有:bagging、boosting、stacking。

    3.3 dropout

    dropoutd的基本步骤是在每一次的迭代中,随机删除一部分节点,只训练剩下的节点。每次迭代都会随机删除,每次迭代删除的节点也都不一样,相当于每次迭代训练的都是不一样的网络,通过这样的方式降低节点之间的关联性以及模型的复杂度,从而达到正则化的效果。dropout的缺点在于,需要将训练集分为不同子集输入每一次的迭代,这就需要较大的训练集,所以在训练集较小的情况下,dropout的效果可能并不好。

    3.4 L1/L2正则化

    L1正则化会让特征变得稀疏,起到特征选择的作用;L2正则化会让模型变得更简单,防止过拟合,而不会起到特征选择的作用。具体分析如下:
    对L1正则化:

    3.5 归一化

    规范化、归一化、标准化、中心化、正则化

    3.6 数据增强

    扩大数据集的一种方法。在训练样本不足无法获取或者获取成本高昂时,对已有的样本数据进行变换得到新的样本的一种方法。对图像而言包括旋转、裁剪、扭曲、放大等操作来获得新的图片的方法。

  • 相关阅读:
    centos7安装ImageMagick
    php安装imagemagick扩展
    php编译安装redis扩展
    springboot和springsecurity使用JWT令牌
    springboot和springsecurity整合OAuth2
    SpringSecurity 整合SpringBoot结合jwt与rsa实现分布式认证授权
    【名额有限】云开发AI拓展能力等你来体验!
    干货:如何借助小程序云开发实现小程序支付功能(含源码)
    云开发数据库又增新技能!
    聚焦“云开发圆桌论坛”,大前端Serverless大佬们释放了这些讯号!
  • 原文地址:https://www.cnblogs.com/lzping/p/12554703.html
Copyright © 2011-2022 走看看