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*}
\]
拉格朗日对偶问题
假设 \(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 约束的最小二乘学习法的更多相关文章
- 基于孪生卷积网络(Siamese CNN)和短时约束度量联合学习的tracklet association方法
基于孪生卷积网络(Siamese CNN)和短时约束度量联合学习的tracklet association方法 Siamese CNN Temporally Constrained Metrics T ...
- 别出心裁的Linux命令学习法
别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...
- JS面向对象逆向学习法,让难理解的统统一边去(1)~
对于面向对象我只能说呵呵了,为什么呢,因为没对象--- 既然你看到了这里,说明你有一定的基础,虽然本系列文章并不会过多的讲述基础部分,请做好心理准备. 本篇比较简单,这篇文章的意义是让你明白学习面向对 ...
- 别出心裁的Linux系统调用学习法
别出心裁的Linux系统调用学习法 操作系统与系统调用 操作系统(Operating System,简称OS)是计算机中最重要的系统软件,是这样的一组系统程序的集成:这些系统程序在用户对计算机的使用中 ...
- 软技能:十步学习法 (zhuan)
http://www.gyzhao.me/2016/11/07/Ten-Step-Learning-Method/ ****************************************** ...
- 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 ...
- 统计学习:《贝叶斯思维统计建模的Python学习法》中文PDF+英文PDF+代码
用数学工具解决实际问题仅有的要求可能就是懂一点概率知识和程序设计.而贝叶斯方法是一种常见的利用概率学知识去解决不确定性问题的数学方法,对于一个计算机专业的人士,应当熟悉其应用在诸如机器翻译,语音识别, ...
- Xdite:永葆热情的上瘾式学习法(套路王:每天总结自己,反省自己的作息规律,找到自己的幸运时间、幸运方法,倒霉时间、倒霉方法。幸运是与注意力挂钩的。重复才能让自己登峰造极,主动去掉运气部分来训练自己。游戏吸引自己的几个原因非常适合训练自己)good
版权声明 本文首发自微信公共帐号: 学习学习再学习(xiaolai-xuexi) 无需授权即可转载, 甚至无需保留以上版权声明: 转载时请务必注明作者. 以下是<共同成长社区>第 58 次 ...
- JAVA学习方法之——费曼学习法
理查德·费曼 费曼简介 理查德·菲利普斯·费曼(Richard Phillips Feynman),出生于1918年5月11日,是美籍犹太裔物理学家,曾在1965年获得诺贝尔物理学奖,也被认为是继爱因 ...
随机推荐
- FFT\NTT总结
学了好久,终于基本弄明白了 推荐两个博客: 戳我 戳我 再推荐几本书: <ACM/ICPC算法基础训练教程> <组合数学>(清华大学出版社) <高中数学选修> 预备 ...
- Zabbix JMX监控之ActiveMQ
监控原理: ActiveMQ作为依赖java环境的中间件,同样可以像tomcat一样用JMX(java扩展程序)监控.并且与tomcat不同的是,ActiveMQ自带了JMX,只需在配置文件中开启即可 ...
- java微信公众号开发token验证失败的问题及解决办法
本文引自http://m.blog.csdn.net/qq_32331997/article/details/72885424 微信公众平台服务器配置时,需要引入token,但是提交的时候总是提示to ...
- unity集成openinstall流程
目的 1.Unity集成openinstall sdk? 最近在使用一个叫openinstall的SDK,通过它实现免填邀请码的功能,集成到unity游戏开发中.对App安装流程的优化,尤其是免填写邀 ...
- vue-cli工具搭建vue-webpack项目
1.安装node环境 下载地址 https://nodejs.org/en/download/ node -v 安装成功后在命令行查看node版本 npm-v 安装成功后在命令行查看npm版本 ...
- iOS加密算法总结
常用加密算法: DES:Data Encryption Standard,即数据加密算法,它是IBM公司于1975年研究成功并公开发表的. DES(数据加密标准)原理: DES是一个分组加密算法,它以 ...
- IE 兼容 getElementsByClassName
getElementsByClassName 通过class获取节点,是很多新人练习原生JS都用到的,项目中也会写,当项目进行到一定程度时,测试IE低版本,忽然发现不支持的时候,瞬间感觉整个人都不好了 ...
- Web开发中Listener、Filter、Servlet的初始化及调用
我们在使用Spring+SpringMVC开发项目中,web.xml中一般的配置如下: <?xml version="1.0" encoding="UTF-8&qu ...
- Django+xadmin打造在线教育平台(三)
五.完成注册.找回密码和激活验证码功能 5.1.用户注册 register.html拷贝到templates目录 (1)users/views.py class RegisterView(View): ...
- 走近webpack(3)--图片的处理
上一章,咱们学了如何用webpack来打包css,压缩js等.这一篇文章咱们来学习一下如何用webpack来处理图片.废话不多说,咱们开始吧. 首先,咱们随便找一张你喜欢的图片放到src/images ...