当前课程知识点:大数据机器学习 > 第十九章 深度学习正则化方法 > 3.深度学习的正则化方法(一) > 3.深度学习的正则化方法(一)
L2范数参数正则化的策略
他是通过向原来没有加入正则化项的目标函数
添加一个正则项
(见上图)
于是参数的梯度
就是代价函数~j 对w的梯度
就等于αw加上没有加入正则化项的
代价函数对w的梯度
参数更新的时候
(见上图)
我们发现上一轮迭代的w前面
加入了一个系数
该系数是小于1的
也就是说
参数更新的时候会先缩小原来的参数
再加上epsilong乘以J函数对w的梯度
我们刚才已经看到了
加入权重衰减以后呢会引起学习规则的修改
也就是在每步执行通常的梯度更新之前
会先收缩权重向量
也就是将权重向量乘以一个常数因子
这是单个步骤发生的变化
那么
在训练的整个过程会发生什么呢
下面我们进一步的去简化分析
我们令w*为不含正则化的目标函数
取得最小训练误差时的权重向量
(见上图)
并在w*的邻域对目标函数做二次近似
如果目标函数确实是二次的
例如以均方误差拟合线性回归模型的情况
则该近似是完美的
近似的Jθ^如下
(见上图)
这里的H就是Hessian矩阵
对该函数因为w 被定义为最优
也就是说梯度为0
所以该二次近似中没有一阶项
同样地 因为w 是J 的一个最优点
我们就可以得出
Hessian矩阵H 是半正定的结论
当^ J 取得最小的时候
他的梯度也就是
(见上图)
为了研究权重正则化带来的影响
我们在式中呢添加权重正则化的梯度α~w
~w 表示此时的最优权值点
(见上图)
我们通过这个式子可以看出
阿尔法的作用在这里很明显
当阿尔法趋向于0 的时候
很明显正则化的解~w 会趋向w
那么
当阿尔法增大的时候情况会怎样呢
因为H 是实对称的
所以 我们可以将其分解为一个对角矩阵 λ
和一组特征向量的标准正交基Q
这样就有H = QλQ转置
将其应用于~w的表达
就可得(见上图)
我们可以看到权重衰减的时候
它的效果是沿着由H 的特征向量
所定义的轴进行缩放w*
具体来说
(见上图)
这个因子进行缩放
这个因子实际上就是H
Hessian矩阵的第i 个特征值
从公式中可以看出
当H的第i个特征值很大的时候
沿着这个相应的特征向量方向
α对正则化的影响就会较小
而当第i个特征值很小的时候
沿着这个方向
阿尔法对正则化的影响就很大
下面呢
我们通过图示来说明一下
L2范数参数正则化的具体过程
L2范数正则化对最佳w 值的影响
如图所示
实线的椭圆呢表示没有正则化的目标的等值线
虚线的圆圈表示L2 正则化项的等值线
在~w点这两个竞争目标达到平衡
目标函数J 的Hessian矩阵 的第一维特征值
也就是wi水平方向的特征值很小
当从w 水平移动的时候呢
目标函数不会增加得太多
根据我们刚才的分析
正则化项对该轴具有强烈的影响
正则化项将w1 拉向零
而目标函数对沿着w2方向
对应的特征值较大
所以呢 高曲率
因此
权重衰减对w2 的位置影响相对就较小
也就是说
只有在显著减小目标函数方向上的参数
会保留得相对完好
在无助于目标函数减小的方向上
也就是对应Hessian 矩阵较小的特征值上
改变参数不会显著增加梯度
这种不重要方向所对应的分量
会在训练过程中因为正则化而衰减掉
这样通过这样的分析
大家对L2正则化的理解会更深入一些
这样呢 我们得出了结论
L2参数正则化主要针对
损失函数特征向量不重要的方向
是指对应的Hessian矩阵较小的特征值
改变参数不会显著的增加梯度
这样 不重要方向所对应的分量
就会在训练过程中因正则而衰减掉
接下来我们介绍L1参数正则化
L2的权重衰减是权重衰减最常用的形式
我们还可以使用其他的方式
来限制模型参数的规模
L2范数的正则化就是其中的一种
形式上呢
对模型参数w 的L1正则化被定义为
(见上图)
也就是各个参数的绝对值之和
接下来我们将讨论L1正则化
对简单的线性回归模型的影响
与分析L2正则化时一样
我们先不考虑正则化参数
然后呢再加入
我们感兴趣的是
看看L1 和L2正则化之间到底有什么差异
与L2权重衰减类似
我们也可以通过
缩放惩罚项Ω 的正的超参数
来控制L1权重衰减的强度
因此 正则化的目标函数
(见上图)
其中符号函数w只是简单地
取w 各个元素的正负号
我们很容易发现
L1 的正则化效果与L2 是大不一样
具体来说
我们看到正则化对梯度的影响
不再是线性地缩放每个wi而是添加了一项
与符号函数wi 同号的常数
使用这种形式的梯度之后呢
就不一定能得到
J xyw 二次近似的直接算术解
而L2正则化是可以直接得到算术解的
那么
如何找到L1正则化目标函数的二次近似分解呢
简单线性模型具有二次代价函数
我们可以通过泰勒级数进行展开
我们还可以设想
这是逼近更复杂模型的代价函数的截断泰勒级数
在这个设定下
梯度就由下式给出
(见上图)
H 是J 在w 处的Hessian矩阵是关于w
由于L1 惩罚项
在满秩的 一般的Hessian矩阵下
无法得到直接清晰的代数表达式
因此呢 我们将进一步简化
我们假设Hessian 是对角的
(见上图)
这个假设是很关键的
如果线性回归问题中的数据
已经是被预处理的
比如说可以使用PCA
去除了输入特征之间的相关性了
那么 这一假设是可以成立的
这样我们就可以将L1
正则化目标函数的二次近似分解
成为关于参数的求和形式
(见上图)
这样就可以得到
(见上图)
根据wi的这个公式
我们分析一下wi*的大小对w的影响
我们先看wi*大于O 的两种情况
当wi*小于等于α除以Hi i大于0的时候
正则化以后目标中的wi 最优值是wi = 0
这是因为在方向I上 J wxy
对^ J wxy 的贡献受到了抑制
L1正则化项将wi 直接推向了0
当 wi*大于α除以Hi i 的情况
在这种情况下
正则化不会将wi 的最优值推向0
而仅仅是往那个方向上移动α除以Hi i 的距离
而Wi*小于0的情况下呢是和它类似的
也就是L1 惩罚项使wi 更接近于0或者就为0
相比L2正则化
L1正则化会产生更稀疏的解
此处稀疏性指的是最优值中的一些参数为0
和L2正则化相比呢
L2正则化的稀疏性具有本质的不同
我们把之前给出的L2正则化的解也就是~w
如果我们使用Hessian 矩阵
H 为对角正定矩阵的假设
与L1正则化分析时一样
我们去重新考虑~w的式子
(见上图)
也就是说如果Wi* 不是零
那么~w也会保持非零
也就是说L2正则化不会使参数变得稀疏
而L1正则化则是有可能通过
足够大的 α 去实现稀疏
由L1正则化导出的稀疏性质
已经被广泛地用于特征选择
特征选择从可用的特征子集当中
选择出有意义的特征
从而能够化简机器学习问题
接下来
我们介绍正则化中作为约束的范数惩罚
如果我们想约束Ωθ小于某个常数k
我们可以构建广义的拉格朗日函数
(见上图)
如果固定α*把这个问题
看成只跟θ有关的函数
(见上图)
这个呢
就和最小化~J 的正则化训练问题是完全一样的
因此呢
我们可以把参数范数惩罚看作对权重的强加的约束
下面介绍正则化和欠约束问题
机器学习中许多线性模型
包括线性回归和PCA都依赖于求逆矩阵X转置X
只要X转置X 是奇异的这些方法就会失效
当数据生成分布在一些方向上
确实没有差异的时候
或者因为样例较少也就是相对输入特征
X 的列来说相对较少
而在一些方向上没有观察到方差
这个矩阵就很有可能是奇异的
在这种情况下
正则化的许多形式对应求逆矩阵
(见上图)
我们可以使用Mp方法来求解欠定的线性方程
我们回想X 伪逆的定义X+ 的定义
(见上图)
我们可以将伪逆解释为
使用正则化来稳定欠定的问题
让机器学习模型泛化取得更好的性能
最好的办法是什么呢
是使用更多的数据进行训练
当然 在实践中
我们拥有的数据量是有限的
所以解决这个问题的一种方法
是创建假数据并添加到数据集中
对于一些机器学习任务
创建新的假数据相当简单
对分类来说这种方法是最简单的
分类器需要一个复杂的高维输入x
并用这个单个类别标识y来概括x
这意味着分类面临的一个主要任务
是对各种各样的变换保持不变
我们可以通过转换训练集中的x
来生成新的xy 数据对
例如
图像翻转 图像平移 图像旋转 输入加噪声等等
当然我们也必须要小心
不能使用会改变类别的转换
我们举个例子
例如
光学的字符识别任务当中需要识别b和d
或者是阿拉伯数字6和9
所以对这些任务来说水平翻转和旋转180°
就不是合适的数据集增强方式
对于某些模型而言
向输入添加方差极小的噪声
就等价于对权重施加范数的惩罚
这是Bishop在1995提出的
在一般情况下
加入噪声远比简单地收缩参数
对模型学习更有效
特别是噪声
被添加到隐藏单元的时候会更加有效
我们将后面介绍的Dropout
就是隐层加噪的形式
另一种正则化模型的噪声使用是将它添加到权重
这项技术呢 主要用于循环神经网络
它可以解释为
关于权重的贝叶斯推断的随机实现
在某些假设下
施加于权重的噪声也可以解释为
与更传统的正则化形式等同
使得要学习的函数保持更加的稳定
假如我们研究回归的情形
也就是训练将一组特征x
映射成一个标量的函数^yx
并使用最小二乘代价函数
来衡量模型的预测值^yx 与真实值y的误差
训练集包含m对标注的样例
现在 我们假定对每个输入的网络权重
添加随机扰动epsilongw为高斯扰动
尽管有噪声注入我们仍然希望
减少网络输出误差的平方作为目标
因此目标函数变为~J
对于小的η
最小化带权重的噪声它的方差为i
(见上图)
这种形式的正则化鼓励参数进入权重小扰动
对输出相对影响较小的参数空间区域
换句话说
它推动模型进入对权重小的
变化相对不敏感的区域
还有一种方法是向输出目标注入噪声
大多数数据集的y标签都是有一定错误的
错误的y肯定不利于最大化log p yx条件概率
避免这种情况的一种方法呢
是显式地对标签上的噪声进行建模
例如 我们可以假设对于一些小常数epsilong
(见上图)
任何其他可能的标签也可能是正确的
这个假设很容易就能解析地与代价函数结合
而不用显式地抽取噪声样本
例如
标签平滑就是通过把确切分类目标
从0 和1 替换成epsilong除以k-1和1-epsilong
正则化具有k个输出的softmax 函数的原型
-1.机器学习定义和典型应用
-2.机器学习和人工智能的关系
-3.深度学习方法和其它人工智能方法的共性和差异
-4.机器学习和数据挖掘的关系
-5.机器学习和统计学习的关系
-6.机器学习的发展历程
-7.大数据机器学习的主要特点
-第一章 概述--7.大数据机器学习的主要特点
-1机器学习的基本术语
-2.监督学习
--2.监督学习
-3.假设空间
--3.假设空间
-4.学习方法三要素
-第二章 机器学习基本概念--4.学习方法三要素
-5.奥卡姆剃刀定理
-6.没有免费的午餐定理
-7.训练误差和测试误差
-8.过拟合与模型选择
-第二章 机器学习基本概念--8.过拟合与模型选择
-9.泛化能力
--9.泛化能力
-10.生成模型和判别模型
-1.留出法
--1.留出法
-2.交叉验证法
--2.交叉验证法
-3.自助法
--3.自助法
-4.性能度量
--4.性能度量
-5.PR曲线
--5.PR曲线
-6.ROC和AUC曲线
-第三章 模型性能评估--6.ROC和AUC曲线
-7.代价敏感错误率
-8.假设检验
--8.假设检验
-9.T检验
--9.T检验
-10.偏差和方差
--10.偏差和方差
-1.感知机模型
--1.感知机模型
-第四章 感知机--1.感知机模型
-2.感知机学习策略
-3.感知机学习算法
-第四章 感知机--3.感知机学习算法
-1.原型聚类描述
--1.原型聚类描述
-第五章 聚类--1.原型聚类描述
-2.性能度量
--2.性能度量
-第五章 聚类--2.性能度量
-3.1原型聚类 k均值算法
-3.2 原型聚类 学习向量算法
-3.3 原型聚类 密度聚类
-第五章 聚类--3.3 原型聚类 密度聚类
-3.4原型聚类 层次聚类
-1.综述
--1.综述
-2.概率图模型
--2.概率图模型
-第六章 贝叶斯分类器及图模型--2.概率图模型
-3.贝叶斯网络
--3.贝叶斯网络
-第六章 贝叶斯分类器及图模型--3.贝叶斯网络
-4.朴素贝叶斯分类器
-第六章 贝叶斯分类器及图模型--4.朴素贝叶斯分类器
-5.半朴素贝叶斯分类器
-第六章 贝叶斯分类器及图模型--5.半朴素贝叶斯分类器
-6.贝叶斯网络结构学习推断
-7.吉布斯采样
--7.吉布斯采样
-第六章 贝叶斯分类器及图模型--7.吉布斯采样
-开头
--开头
-1.决策树模型与学习基本概念
-2.信息量和熵
--2.信息量和熵
-第七章 决策树和随机森林--2.信息量和熵
-3.决策树的生成
--3.决策树的生成
-4.决策树的减枝
--4.决策树的减枝
-5.CART算法
--5.CART算法
-6.随机森林
--6.随机森林
-简介
--简介
-1.逻辑斯谛回归模型
-第八章 逻辑斯谛回归与最大熵模型--1.逻辑斯谛回归模型
-2.最大熵模型
--2.最大熵模型
-3.模型学习的最优化方法
-第八章 逻辑斯谛回归与最大熵模型--3.模型学习的最优化方法
-1.开头
--1.开头
-2.SVM简介
--2.SVM简介
-3.线性可分支持向量机
-第九章 SVM--3.线性可分支持向量机
-4. 凸优化问题的基本概念
-第九章 SVM--4. 凸优化问题的基本概念
-5.支持向量的确切定义
-6.线性支持向量机
-第九章 SVM--6.线性支持向量机
-svm相关拓展资料
-开头
--开头
-第十章 核方法与非线性SVM--开头
-1.泛函基础知识
--1.泛函基础知识
-第十章 核方法与非线性SVM--1.泛函基础知识
-2. 核函数和非线性支持向量机
-第十章 核方法与非线性SVM--2. 核函数和非线性支持向量机
-3. 序列最小最优化算法
-第十章 核方法与非线性SVM--3. 序列最小最优化算法
-开头
--开头
-1. k近邻学习
--1. k近邻学习
-第十一章 降维与度量学习--1. k近邻学习
-2. 降维嵌入
--2.降维嵌入
-第十一章 降维与度量学习--2. 降维嵌入
-3. 主成分分析
--3.主要成分分析
-第十一章 降维与度量学习--3. 主成分分析
-4. 核化线性降维
--4.核化线性降维
-5. 流型学习和度量学习
-1. 提升方法Adaboost算法
-第十二章 提升方法--1. 提升方法Adaboost算法
-2. Adaboost算法的训练误差分析
-3. Adaboost算法的解释
-4. Adaboost的实现
-第十二章 提升方法--4. Adaboost的实现
-adaboost拓展资料
-开头
--开头
-1. 问题提出
--1. 问题提出
-2. EM算法的引入
-3. EM算法的收敛性
-4. EM算法在高斯混合模型学习中的应用
-5. EM算法的推广
-第十三章 EM算法及混合高斯模型--3. EM算法的收敛性
-开头
--开头
-1. 计算学习理论的基础知识
-第十四章 计算学习理论--1. 计算学习理论的基础知识
-2. 概率近似正确学习理论
-3. 有限假设空间
--3.有限假设空间
-4. VC维
--4. VC维
-第十四章 计算学习理论--4. VC维
-5. 学习稳定性
--5. 学习稳定性
-开头
--开头
-1. 隐马尔科夫模型的基本概念
-第十五章 隐马尔可夫模型--1. 隐马尔科夫模型的基本概念
-2. 概率计算算法
-3. 学习算法
--3.学习算法
-第十五章 隐马尔可夫模型--3. 学习算法
-4预测算法
--4. 预测算法
-第十五章 隐马尔可夫模型--4预测算法
-开头
--开头
-1.概率无向图模型
-第十六章 条件随机场--1.概率无向图模型
-2.条件随机场的定义与形式
-第十六章 条件随机场--2.条件随机场的定义与形式
-3.条件随机场的计算问题
-4.条件随机场的学习算法
-5.条件随机场的预测算法
-第十六章 条件随机场--5.条件随机场的预测算法
-开头
--开头
-1.精确推断法:变量消去法和信念传播法
-第十七章 概率图模型的学习与推断--1.精确推断法:变量消去法和信念传播法
-2.近似推断法:MCMC和变分推断
-第十七章 概率图模型的学习与推断--2.近似推断法:MCMC和变分推断
-1.神经网络的发展历程
-2.神经网络的基本概念以及常见的神经网络(一)
-第十八章 神经网络和深度学习--2.神经网络的基本概念以及常见的神经网络(一)
-3.神经网络的基本概念以及常见的神经网络(二)
-4.玻尔兹曼机
--4.玻尔兹曼机
-5.深度学习
--5.深度学习
-第十八章 神经网络和深度学习--5.深度学习
-1. 深度学习简介和架构设计
-2. 计算图形式的反向传播算法
-3.深度学习的正则化方法(一)
-4.深度学习的正则化方法(二)
-1.深度学习的优化问题
-第二十章 深度学习优化方法--1.深度学习的优化问题
-2.神经网络优化的挑战
-3.神经网络的优化算法
-第二十章 深度学习优化方法--3.神经网络的优化算法
-4.相关策略
--4.相关策略
-第二十章 深度学习优化方法--4.相关策略