1 L2惩罚项
1.1 惩罚项
1.2 L2惩罚项与过拟合
1.3 多目标值线性模型
2 特征值分解
3 奇异值分解
4 总结
5 参考资料html
为了防止世界被破坏,为了维护世界的和平……很差意思,这篇一开头就荒腔走板!某些线性模型的代价函数包括惩罚项,咱们从书本或者经验之谈中学习到惩罚项主要有两个做用:为了防止模型过拟合,为了维护模型的简洁性。常见的惩罚项有L0、L1和L2惩罚项,其中L0惩罚项为权值向量W中不为0的份量个数,L1惩罚项为权值向量W各份量的绝对值之和,这两个惩罚项皆能够很好地维持权值W的稀疏性。单目标值时,L2惩罚项为权值向量W的模,多目标值时,L2惩罚项为权值矩阵W的奇异值的最大值,L2惩罚项能够很好地防止模型过拟合。在《机器学习中的范数规则化之(一)L0、L1与L2范数》中,做者直观地说明了为何L1在维持简洁性上更具优点,而L2在防止过拟合上力压群芳。机器学习
更进一步说,带惩罚项的线性模型的求解过程本质上是解含先验信息的极大似然估计。含有L1惩罚项的线性模型,其假设权值向量W服从双指数分布;含有L2惩罚项的线性模型,其假设权值向量服从高斯分布。在另外的博文中,我将进一步说明其中的奥义。函数
L0惩罚项本就是最原始的模型简洁性的表示,L1以及单目标值L2惩罚项的几何意义都比较显见,咱们也很容易从几何角度上深入地理解其对防止过拟合或者维持简洁性的原理。在本文中,咱们主要关注L2惩罚项。性能
过拟合现象,通俗来讲就是模型过于适合训练数据,而在待预测数据上性能很差的现象。然而,真正发生过拟合,是数据和模型两个方面共同做用形成的:数据在抽样时可能并不能表明总体,甚至与总体有较大的差别,而足够复杂的模型在这样的数据上训练后,将会产生过拟合现象。例如:在总体中,第i个特征与目标值并无很强的相关性(平均状况),可是抽样恰恰把那些有强相关性的个体抽了出来,若在此数据上训练未剪枝的决策树模型,其很难对新的待预测数据作出准确的判断。学习
单目标值L2惩罚项表示为权值向量W的模的大小,当线性模型的代价函数中加入单目标值L2惩罚项后,一方面,为了更好地符合训练数据,学习的本质促使各特征之间的差别性增大,即权值向量W的各份量之间的差别增大;另外一方面,为了知足惩罚项,权值向量W的模必须受限小于必定范围,也就意味着权值向量W的每一个份量都受限小于必定范围,份量之间的差别性就不会过于明显。如此以来,咱们能够用“瞻前顾后”来形容带惩罚项的线性模型的训练过程。spa
然而,多目标值L2惩罚项的意义就不那么好理解了:权值矩阵W的奇异值的最大值是什么鬼?.net
要知道多目标值L2惩罚项的意义,咱们先要知道多目标值的线性模型是什么?简单来讲,多目标值线性模型是多个单目标值线性模型的组合(这不是废话嘛……),也就是权值向量W变成了权值矩阵W,而目标值向量y变成了目标值矩阵Y。样本容量为m,特征个数为n,目标值个数为l的多目标值线性模型表示以下:htm
从上图咱们能够看到,由权值矩阵的第k个行向量和样本的特征矩阵X将生成目标值矩阵的第k个行向量。blog
仍是让咱们简化一下模型:设目标值个数l等于样本容量m。这时,权值矩阵W变成了m阶方阵。get
可能为了学分,为了考研,咱们都学习过如何进行特征值分解,也刷过很多的相关习题。可是,可能有很大一部分不理解为何要特征值分解,其有什么几何意义?首先,让咱们回归本质,从定义中获得特征值和特征向量有以下性质:
特征向量是一组特殊的向量,其经过原矩阵W(在本文中是权值矩阵)进行行变换后,不会改变放心,只会改变大小,而缩放的程度为其对应的特征值大小。另外,咱们老是找到一组m个线性无关的特征向量,因而能够将个体Xj表示成:
在线性模型的定义中,咱们须要将权值矩阵W右乘样本的特征矩阵X,对于个体Xj来讲:
不难发现,通过权值矩阵W右乘后的样本与原始样本相比,其仅仅在各特征向量方向上进行了伸缩,伸缩的程度为对应的特征值大小。从几何的角度来讲,矩阵W右乘向量Xj,本质是在特征向量组成的m维空间里进行缩放。
此时,咱们再看,到底什么决定着个体Xj的目标值呢?若是某个特征值的绝对值过大,个体Xj的目标值就会近似于对应的伸缩后特征向量。如下3阶的例子很好地进行了说明:
有3个特征向量q一、q2和q3,对应特征值为一、5和1。Xj表示为(2,2,2) ,W*Xj等于(2,6,6),该目标值近似于特征向量q2伸长了5倍后的结果。经过该例,咱们得知,当权值矩阵W为方阵时,特征值绝对值的最大值决定了目标值的偏向性(偏向于对应的伸缩后的特征向量),因此,当特征值绝对值的最大值很大时,那么待预测的样本通过权值矩阵W右乘后,都会偏向于对应的伸缩后的特征向量,这样变形成了过拟合的现象:偏向性体现了在训练数据上的尽力符合,可是却和实际状况并不相符。
这样一来,当权值矩阵W为方阵时,选择特征值绝对值的最大值做为多目标值L2惩罚项就不无道理了。
当权值矩阵W不为方阵时,没法进行特征值分解,咱们只能进行奇异值分解了。根据定义,咱们知道有以下性质:
上式中,v为W自乘后(m阶)进行特征值分解的特征向量,lambda为对应的特征值开方(奇异值),u为l维的列向量。与特征值分解不一样的是,特征向量q变成了v向量和u向量。咱们能够理解,经过W右乘后,m维的v向量其在l维空间中的一一对应u向量,不会发生方向上的变化,仅仅进行伸缩。因而,一样咱们能够对样本进行从新表示和计算:
仍是一样的配方,仍是熟悉的味道,咱们能够用奇异值的最大值用来表示任意权值矩阵W的L2惩罚项。
矩阵问题的推导,不少时候都是从方阵开始,而后到任意矩阵。特征值分解和奇异值分解刻画了矩阵对向量(或矩阵)的转换做用,特征值(奇异值)描绘了转换力度,特征向量描绘了转换方向,特征值分解的转换在同一空间中,而奇异值分解的转换在两个不一样空间中进行。