zoukankan      html  css  js  c++  java
  • L2 约束的最小二乘学习法

    [egin{align*} J_{LS}{( heta)} = frac { 1 }{ 2 } { left| Phi heta - y ight| }^{ 2 } \ min(J_{LS}{( heta)}) quad ext{约束条件 }| heta |^2 < R\ end{align*} ]

    拉格朗日对偶问题

    假设 (f(x)), (c_i(x)), (h_j(x)) 是定义在 (R^n) 上的连续可微函数, 考虑约束最优化问题

    [egin{align} min_{xin R^n} f(x) quad quad quadquadquadquadquadquadquadquad\ s.t. space c_i(x) le 0, quad i=1,2,3, cdots,kquadquad \ quad quad h_j(x) = 0, quad quad quad i=1,2,3, cdots,l end{align} ]

    称此最优化问题为原始最优化问题或原始问题

    首先引入广义拉格朗日函数

    [egin{align} L(x, alpha, eta) = f(x) + sum_i^kalpha_i c_i(x) + sum_j^leta_j h_j(x) quad alpha_i ge 0 end{align} ]

    由于, 若 (c_i(x) le 0, quad h_j(x) = 0), 则

    [ heta_p(x) = max_{alpha_i, eta_j, alpha_i ge 0}L(x, alpha, eta) =f(x) ]

    (color{red}{则原始最优化问题等价于})

    [egin{align} min_x max_{alpha_i, eta_j, alpha_i ge 0} L(x, alpha, eta) quadquadquadquadquad\ s.t. space c_i(x) le 0, quad quadquad i=1,2,3, cdots,k \ quad quad h_j(x) = 0, quad quad quad i=1,2,3, cdots,l end{align} ]

    上述问题称为广义拉格朗日函数的极小极大问题. 该问题和原始最优化问题 (it 式(1), (2), (3)) 等价

    [egin{align} max_{alpha_i, eta_j, alpha_i ge 0} min_x L(x, alpha, eta) end{align} ]

    上述问题称为广义拉格朗日函数的极大极小问题, 是广义拉格朗日函数的极小极大问题的对偶问题

    如果(alpha_i), (eta_j), (x) 满足 (Karush-Kuhn_Tucker(KKT)) 条件, 则

    [对偶问题的解 Longleftrightarrow lagrange极小极大问题解 Longleftrightarrow 原始问题解 ]

    L2 约束

    [egin{align*} &J_{LS}{( heta)} = frac { 1 }{ 2 } { left| Phi heta - y ight| }^{ 2 }quad \ &min(J_{LS}{( heta)}) quad ext{约束条件 }| heta |^2 < R\ end{align*} ]

    该原始问题可以转化对偶问题

    [egin{align} max_{lambda} min_ heta left[J_{LS}{( heta)} + fraclambda2 left(| heta |^2 - R ight) ight] quad 约束条件 lambda ge 0 end{align} ]

    lagrange 对偶问题的 拉格朗日乘子 (lambda) 的解由 (R) 决定. 如果不根据 (R) 来决定 (R), 而是直接指定的话, (space l_2) 约束的最小二乘学习法的解 (hat{ heta}) 可以通过下式求得

    [egin{align} hat{ heta} = argmin_{ heta} left[ J_{LS}{ heta)} + fraclambda2 | heta |^2 ight] end{align} ]

    (J_{LS}{ heta)}) 表示的是训练样本的拟合程度, 与 (fraclambda2 | heta |^2)结合求最小值, 来防止训练样本的过拟合. (l_2)正则化的最小二乘学习法也称为岭回归.

    [egin{align*} frac{partial( {J_{LS}{ heta)} + fraclambda2 | heta |^2})}{ partial heta} = Phi^T(Phi heta - y) + heta = 0 \ hat{ heta} = (Phi^TPhi + lambda I)^{-1}Phi^Ty end{align*} ]

    奇异值分解

    考虑矩阵 (Phi) 的奇异值分解

    [Phi = USigma V^T = sum_{k=1}^{min(n,b)} u_ksigma_kv_k^T,\ Phi^TPhi = V Sigma^2V^T = sum_{k=1}^{min(n,b)} v_ksigma_k^2v_k^T \ Phi ^T = VSigma U^T = sum_{k=1}^{min(n,b)} v_ksigma_ku_k^T\ ]

    其中(quad Sigma) 为对角矩阵

    (space l_2) 约束的最小二乘学习法的解 (hat{ heta})如下式表示

    [hat{ heta} = sum_{k=1}^{min(n,b)} frac{sigma_k}{sigma_k^2 + lambda}u_k^Tyv_k ]

    通过在分母中加入正常数 (lambda) 使得 (frac{sigma_k}{sigma_k^2 + lambda}) 避免变得过大, 进而达到防治过拟合的目的.

    Q: 不清楚为什么 (hat{ heta}) 变小了就能防治过拟合 ?

    我是这样理解的, 就拿房价的曲线拟合来说吧. 如果基函数 (Phi(x)) , 比如

    [(1, sin{x/2}, cos{x/2}, cdots, sin15x/2, cos15x/2) ]

    是给定的. 那么, 减小系数向量 (hat{ heta}) 可以减小函数变化的幅度, 不会让模型因为和训练样本过于相似, 而失去了泛化能力.

  • 相关阅读:
    SlidingMenu官方实例分析8——CustomAnimation
    SlidingMenu官方实例分析7——SlidingContent和SlidingTitleBar区别
    SlidingMenu官方实例分析5——FragmentChangeActivity
    SlidingMenu官方实例分析4——AttachExample
    云虚拟主机和云服务器的区别
    SAP MM常用表
    dedecms 模板文件不存在,无法解析文档"的终极各种解决办法
    js代码如何测试代码运行时间
    java 连接msql数据库
    Java 创建xml文件和操作xml数据
  • 原文地址:https://www.cnblogs.com/nowgood/p/lagrangemultipy1.html
Copyright © 2011-2022 走看看