• 从有约束条件下的凸优化角度思考神经网络训练过程中的L2正则化


    从有约束条件下的凸优化角度思考神经网络训练过程中的L2正则化

    神经网络在训练过程中,为应对过拟合问题,可以采用正则化方法(regularization),一种常用的正则化方法是L2正则化.

    1. 神经网络中L2正则化的定义形式如下:

    [J(W,b)=frac{1}{m}sum_{i=1}^{m}l(y^{(i)},hat y^{(i)})+frac{lambda}{2m}sum_{i=1}^{m}||W^{(i)}||_F^2 ]

    其中,J(W,b)为正则化下的cost function,等式右边第一项为未使用正则化的损失函数,第二项为正则化项,因为应用的是矩阵的F范数,所以称为L2 regularization.
    2. 下面从有约束条件下的凸优化角度进行分析
    上面的等式可以等价为凸优化问题:(c(W,b)=frac{1}{m}sum_{i=1}^{m}l(y^{(i)},hat y^{(i)})),约束条件为(sum_{i=1}^{m}||W^{(i)}||_F^2leq R),构造如下拉格朗日函数:

    [L(W,b,lambda)=c(W,b)+frac{lambda}{2m}(sum_{i=1}^{m}||W^{(i)}||_F^2-R) ]

    之所以拉格朗日因子(lambda)除以2m是为了求导结果与前一项W,b的求导结果形式一致,并无影响.
    根据KKT条件,最优的(W^*,lambda^*)需满足:( abla_WL(W^*,lambda^*)=0,lambda^*geq0,sum_{i=1}^{m}||W^{*(i)}||_F^2 = R)
    由第一个等式求解的(W^*)带有参数(lambda),而(lambda)的值是由第三个等式决定的.也就是说R与(lambda)有确定的对应关系,或者(lambda)的值有R决定.简单分析可以发现,R与(lambda)成反比例关系,因为(lambda)越大,在cost function中W的惩罚系数越大((||W||_F^2)的系数越大),因此(lambda)能够抑制W的大小,与R约束W的范数作用类似.
    回到神经网络训练中的L2正则化上来,一般情况下,我们直接制定(lambda)的大小,其实与之对应的R也就确定了(意味着上面三个条件中第三个等式已经求解出了(lambda)),此时只剩下第一和第二个条件.第一个条件R是常数,对W求导为0,因此简化为( abla_WJ(W,b)=0),也就是正则化条件下的梯度下降法.

  • 相关阅读:
    在 Eclipse 中使用 JUnit4 进行单元测试
    版本控制之道使用Git
    程序员成熟的标志
    Java 编程需要注意的细节
    【netty】netty的websocketframe
    求一个数内含1个次数
    apache bench的使用
    更改centos epel源
    [linux]centos7下解决yum install mysqlserver没有可用包
    cacti的安装与配置
  • 原文地址:https://www.cnblogs.com/hello-ai/p/10951900.html
Copyright © 2020-2023  润新知