zoukankan      html  css  js  c++  java
  • 正则化线性模型

    1 Ridge Regression (岭回归,又名 Tikhonov regularization)

    岭回归是线性回归的正则化版本,即在原来的线性回归的 cost function 中添加正则项(regularization term): image-20190404180643584

    以达到在拟合数据的同时,使模型权重尽可能小的目的,岭回归代价函数:

    • α=0:岭回归退化为线性回归

    2 Lasso Regression(Lasso 回归)

    Lasso 回归是线性回归的另一种正则化版本,正则项为权值向量的ℓ1范数。

    Lasso回归的代价函数 :

    【注意 】

    • Lasso Regression 的代价函数在 θi=0处是不可导的.
    • 解决方法:在θi=0处用一个次梯度向量(subgradient vector)代替梯度,如下式
    • Lasso Regression 的次梯度向量

    Lasso Regression 有一个很重要的性质是:倾向于完全消除不重要的权重。

    例如:当α 取值相对较大时,高阶多项式退化为二次甚至是线性:高阶多项式特征的权重被置为0。

    也就是说,Lasso Regression 能够自动进行特征选择,并输出一个稀疏模型(只有少数特征的权重是非零的)。

    3 Elastic Net (弹性网络)

    弹性网络在岭回归和Lasso回归中进行了折中,通过 混合比(mix ratio) r 进行控制:

    • r=0:弹性网络变为岭回归
    • r=1:弹性网络便为Lasso回归

    弹性网络的代价函数 :

    一般来说,我们应避免使用朴素线性回归,而应对模型进行一定的正则化处理,那如何选择正则化方法呢?

    小结:

    • 常用:岭回归

    • 假设只有少部分特征是有用的:

      • 弹性网络
      • Lasso
      • 一般来说,弹性网络的使用更为广泛。因为在特征维度高于训练样本数,或者特征是强相关的情况下,Lasso回归的表现不太稳定。
    • api:

      • from sklearn.linear_model import Ridge, ElasticNet, Lasso
        

    4 Early Stopping [了解]

    Early Stopping 也是正则化迭代学习的方法之一。

    其做法为:在验证错误率达到最小值的时候停止训练。

  • 相关阅读:
    生日快乐 Happy Birthday To Me
    提取与设置函数值
    相当牛的老师
    C#核心概念装箱和拆箱(什么是装箱和拆箱)
    网易云音乐代理,解锁变灰歌曲
    ASP.NET 水晶报表在iis中无法显示的解决办法 Beacher
    android开发 服务端设备类型判断 Beacher
    asp.net之图片验证码生成 Beacher
    c# 委托之异步调用delegate Beacher
    log4net 日志组件使用方法 Beacher
  • 原文地址:https://www.cnblogs.com/deepend/p/14464073.html
Copyright © 2011-2022 走看看