\[
\begin{align*}
&J_{LS}{(\theta)} = \frac { 1 }{ 2 } { \left\| \Phi \theta - y \right\| }^{ 2 }\quad \\
&\min(J_{LS}{(\theta)}) \quad \text{约束条件 }\| \theta \|^2 < R\\
\end{align*}
\]

拉格朗日对偶问题

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

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

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

首先引入广义拉格朗日函数
\[
\begin{align}
L(x, \alpha, \beta) = f(x) + \sum_i^k\alpha_i c_i(x) + \sum_j^l\beta_j h_j(x) \quad \alpha_i \ge 0
\end{align}
\]

由于, 若 \(c_i(x) \le 0, \quad h_j(x) = 0\), 则
\[\theta_p(x) = \max_{\alpha_i, \beta_j, \alpha_i \ge 0}L(x, \alpha, \beta) =f(x)\]

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

\[
\begin{align}
\min_x \max_{\alpha_i, \beta_j, \alpha_i \ge 0} L(x, \alpha, \beta) \quad\quad\quad\quad\quad\\
s.t. \space c_i(x) \le 0, \quad \quad\quad 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)\) 等价

\[
\begin{align}
\max_{\alpha_i, \beta_j, \alpha_i \ge 0} \min_x L(x, \alpha, \beta)
\end{align}
\]

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

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

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

L2 约束

\[
\begin{align*}
&J_{LS}{(\theta)} = \frac { 1 }{ 2 } { \left\| \Phi \theta - y \right\| }^{ 2 }\quad \\
&\min(J_{LS}{(\theta)}) \quad \text{约束条件 }\| \theta \|^2 < R\\
\end{align*}
\]

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

\[
\begin{align}
\max_{\lambda} \min_\theta \left[J_{LS}{(\theta)} + \frac\lambda2 \left(\| \theta \|^2 - R\right)\right] \quad 约束条件 \lambda \ge 0
\end{align}
\]

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

\[
\begin{align}
\hat{\theta} = \arg\min_{\theta} \left[ J_{LS}{\theta)} + \frac\lambda2 \| \theta \|^2 \right]
\end{align}
\]

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

\[
\begin{align}
\frac{\partial( {J_{LS}{\theta)} + \frac\lambda2 \| \theta \|^2})}{ \partial \theta} = \Phi^T(\Phi \theta - y) + \theta = 0 \\
\hat{\theta} = (\Phi^T\Phi + \lambda I)^{-1}\Phi^Ty
\end{align}
\]

奇异值分解

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

\[
\Phi = U\Sigma V^T = \sum_{k=1}^{\min(n,b)} u_k\sigma_kv_k^T,\\
\Phi^T\Phi = V \Sigma^2V^T = \sum_{k=1}^{\min(n,b)} v_k\sigma_k^2v_k^T \\
\Phi ^T = V\Sigma U^T = \sum_{k=1}^{\min(n,b)} v_k\sigma_ku_k^T\\
\]

其中\(\quad \Sigma\) 为对角矩阵

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

\[
\hat{\theta} = \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{\theta}\) 变小了就能防治过拟合 ?

我是这样理解的, 就拿房价的曲线拟合来说吧. 如果基函数 \(\Phi(x)\) , 比如
\[(1, \sin{x/2}, \cos{x/2}, \cdots, sin15x/2, cos15x/2)\]
是给定的. 那么, 减小系数向量 \(\hat{\theta}\) 可以减小函数变化的幅度, 不会让模型因为和训练样本过于相似, 而失去了泛化能力.

L2 约束的最小二乘学习法的更多相关文章

  1. 基于孪生卷积网络(Siamese CNN)和短时约束度量联合学习的tracklet association方法

    基于孪生卷积网络(Siamese CNN)和短时约束度量联合学习的tracklet association方法 Siamese CNN Temporally Constrained Metrics T ...

  2. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  3. JS面向对象逆向学习法,让难理解的统统一边去(1)~

    对于面向对象我只能说呵呵了,为什么呢,因为没对象--- 既然你看到了这里,说明你有一定的基础,虽然本系列文章并不会过多的讲述基础部分,请做好心理准备. 本篇比较简单,这篇文章的意义是让你明白学习面向对 ...

  4. 别出心裁的Linux系统调用学习法

    别出心裁的Linux系统调用学习法 操作系统与系统调用 操作系统(Operating System,简称OS)是计算机中最重要的系统软件,是这样的一组系统程序的集成:这些系统程序在用户对计算机的使用中 ...

  5. 软技能:十步学习法 (zhuan)

    http://www.gyzhao.me/2016/11/07/Ten-Step-Learning-Method/ ****************************************** ...

  6. 12月21日 简单理解Active Recore Callback, destroy_all和delete_all的区别。豆知识(alias),语言学习法(4核心)

    destroy_all and delete_all Destroy the records by instantiating each record and calling its #destroy ...

  7. 统计学习:《贝叶斯思维统计建模的Python学习法》中文PDF+英文PDF+代码

    用数学工具解决实际问题仅有的要求可能就是懂一点概率知识和程序设计.而贝叶斯方法是一种常见的利用概率学知识去解决不确定性问题的数学方法,对于一个计算机专业的人士,应当熟悉其应用在诸如机器翻译,语音识别, ...

  8. Xdite:永葆热情的上瘾式学习法(套路王:每天总结自己,反省自己的作息规律,找到自己的幸运时间、幸运方法,倒霉时间、倒霉方法。幸运是与注意力挂钩的。重复才能让自己登峰造极,主动去掉运气部分来训练自己。游戏吸引自己的几个原因非常适合训练自己)good

    版权声明 本文首发自微信公共帐号: 学习学习再学习(xiaolai-xuexi) 无需授权即可转载, 甚至无需保留以上版权声明: 转载时请务必注明作者. 以下是<共同成长社区>第 58 次 ...

  9. JAVA学习方法之——费曼学习法

    理查德·费曼 费曼简介 理查德·菲利普斯·费曼(Richard Phillips Feynman),出生于1918年5月11日,是美籍犹太裔物理学家,曾在1965年获得诺贝尔物理学奖,也被认为是继爱因 ...

随机推荐

  1. 【洛谷1026】【NOIP2001】统计单词个数

    题面 题目描述 给出一个长度不超过200的由小写英文字母组成的字母串(约定;该字串以每行20个字母的方式输入,且保证每行一定为20个).要求将此字母串分成k份(1<k<=40),且每份中包 ...

  2. kali使用Fluxion钓鱼WiFi

    先介绍一下这个软件 这个软件是一个可以生成一个钓鱼WiFi的软件,可以伪装成一个正常的WiFi,但是是没有密码的,但是其他信息都是一样的,一旦开启这个攻击,正常的那个AP就无法正常连接,只能连到这个伪 ...

  3. 33.Django ModelForm

    ModelForm 1.ModeForm简单验证 from django.db import models # Create your models here. class UserInfo(mode ...

  4. Jmeter 相关资源

    官网:http://jmeter.apache.org/ 插件: https://jmeter-plugins.org

  5. find命令总结

    find命令 2018-2-27日整理完成 1,结合-exec的用法 查当前目录下的所有普通文件,并在 -exec 选项中使用ls -l命令将它们列出# find . -type f -exec ls ...

  6. ASP.NET Core 2.0 : 七.一张图看透启动背后的秘密

    为什么我们可以在Startup这个 “孤零零的” 类中配置依赖注入和管道? 它是什么时候被实例化并且调用的? 参数中的IServiceCollection services是怎么来的? 处理管道是怎么 ...

  7. 你学会UI设计了吗?

    你学会UI设计了吗? UI设计师如何前驱? 关于产品 作为一个UI设计师,我们还在干巴巴的等着产品经理甚至交互提供的需求和原型再开始动手吗?这样被动的工作是永远无法提升自己的,当然你也永远只能拿到几千 ...

  8. sublime安装、注册、插件

    1. sublime下载:http://www.sublimetext.com/3 2. 输入注册码: help->Enter License —– BEGIN LICENSE —– Antho ...

  9. Nginx目录浏览功能

    要给其他人提供一个patch的下载地址,于是想用nginx的目录浏览功能来做,需要让其他人看到指定一个目录下的文件列表,然后让他自己来选择该下载那个文件:效果如图. 实现步骤:在虚拟主机配置文件里面开 ...

  10. Spring Cloud Consul 实现服务注册和发现

    Spring Cloud 是一个基于 Spring Boot 实现的云应用开发工具,它为基于 JVM 的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布 ...