台大机器学习笔记(12-16)——Nonlinear Transformation&Tips

来源:互联网 发布:如何规划高中知乎 编辑:程序博客网 时间:2024/05/21 05:43

12 Nonlinear Transformation

12.1 Quadratic Hypothesis

  本节介绍了在线性分类器的基础上构造非线性分类器。方法是将原特征的高次作为新的特征加入特征空间,例如原特征有x1x2两个特征,则可以新加入x21x22以及x1x2作为新特征。以二维平面为例,其原理是在平面上构造一个多项式图形,图形的一边是正例,另一边是负例。

12.2 NonLinear Transform

  以上该方法的本质是构造新的特征空间,以求通过这个特征空间能得到更好的分类效果。

12.3 Price of Nonlinear Transform

  显然,在进行特征空间转换的时候,多项式的转换方式会带来O(Qd)的代价,包括时间以及空间的代价,其中,d是原有的特征维数,Q是多项式次数。

12.4 Structured Hypothesis Sets

  当模型复杂度(VC维)增加时,虽然能带来训练误差的减小,但过高的VC维可能会带来测试集误差的下滑。

13 Hazard of Overfitting

13.1 What is Overfitting

  过拟合就是当VC维增大时Ein在下降过程中Eout反倒上升的过程。与之相对的叫欠拟合。造成过拟合的原因有VC维过大、数据量不够或者数据存在噪声。

13.2 The Role of Noise and Data Size

  当数据量不足的时候,无论目标函数的次数如何,通常来说都会是低VC维的函数拟合效果更好,原因是在目标函数高维度的情况下,即使没有噪声,但其过于复杂的数据产生方式以及不足的数据量依旧使得现有数据产生了类似噪声的效果。

13.3 Deterministic Noise

  当拟合所用的函数和目标函数次数不一致时,一定会有一部分数据无法很好的描述,这部分数据带来的误差就叫deterministic noise。当假设集越大,deterministic noise越小。
  因此造成过拟合的原因有:数据量不足,随机噪声,确定性噪声以及用高维度函数去拟合低纬度目标函数。

13.4 Dealing with Overfitting

  大致上来说,解决过拟合有如下几种方法:
  (1)减少模型复杂度
  (2)清理数据:包括丢弃错误数据以及重新标记。
  (3)增加数据:可以通过旋转、缩放等手段新增新的数据。但需要注意的是新增数据应与原数据保证独立同分布。
  (4)通过验证集进行验证
  (5)正则化

14 Regularization

14.1 Regularized Hypothesis Set

  为了解决过拟合的问题,我们可以缩小假设空间。注意到,高次的假设空间与包含低次的假设空间,并且设置其中一些参数为0就可以将假设空间从高次拉到低次,因此,我们可以设高次假设空间中存在不多于一个阈值的为0的参数,即ni=11[wi=0]<k,k<n,这样就诞生了一个介于高次和低次的假设空间。
  但需要注意到的是,求解这样的参数是个NP难问题,因此可以作一些转化:ni=1w2i<C,这样就将原问题转化为了优化问题。可以知道,后者与前者有一定的重叠。

14.2 Weight Decay Regularization

  续上节,我们现在面对的问题即minEins.t.ni=1w2i<C,也就是说,转化成了一个带限制的优化问题,那么我们可以引入拉格朗日乘子,将问题写为:

minEin+λni=1w2i

  我们将后面的式子称为regularizaiton。同时,拉格朗日乘子的几何意义是,最优解被排除在了限制条件所代表的范围之外,而在限制范围内的最优解即线性最优解wlin与最优解梯度wlin方向相同,即wlinwlin,也即二者呈线性关系:
wlinλwlin=0

  可以将该等式看做是引入了拉格朗日乘子的优化式子的求导。另外,解该等式可以得到引入了正则化的优化问题的解析解。
  但还有一个问题,在高次的假设空间H中,高次的特征可能数值很小,因而天然需要一个较大的w来使其发挥作用,这与正则化的初衷相悖。因此,人们将特征空间进行一些转化,使得特征与特征经过线性组合后形成新的特征,并使其相互垂直,再加以正则化,这种方法叫Legendre Polynomials。

14.3 Regularization and VC Theory

  带正则化的演算法A可以看做是对假设空间H做了一些限制,使得演算法A并没有使用到所有的H,也即没有发挥H的所有power,故而获得了较低的VC维惩罚。

Eout(g)Ein(g)+8Nln(4(2N)dvcδ)

  回忆一下,上式是VC维给泛化能力带来的惩罚,因此,当dvc下降之后,可以使得泛化能力提高。

14.4 General Regularizers

  本节讨论了正则化项的形式。正则化项与损失函数的选择方式是类似的,即根据需求定、根据是否方便优化来定以及根据是否更能符合理论来定。这里重点说明了两种正则化项,一种是二次项,反应在几何上就是假设空间被一个超球所框定,其优点在于方便优化。一种是一次项,即所有参数的绝对值之和,反应到几何上是一个超矩形。可以发现,在超矩形限制下的最优化的解往往在矩形的顶点,故而一次项的正则化项形式往往用来求解稀疏解(即很多参数为0)。

15 Validation

15.1 Model Selection Problem

  由于训练集被污染过,而测试集一般无法拿到,所以我们选择在训练集中取部分数据不用于训练而用于验证,以判定模型的泛化能力。

15.2 Validation

  一般来说,当用验证集选择模型之后,应当合并验证集与训练集再对模型进行训练,这样通过使用更多的数据来得到更好的泛化能力。
  当验证集小的时候,保证了部分数据训练的模型的准确度更接近所有数据训练出的模型,当验证集大的时候,保证了部分数据训练出的模型的泛化能力评价的可信度,因此,应选取适当的验证集大小。一般来说,验证集大小是总数据集大小的五分之一或十分之一。

15.3&15.4 Validation

  本节讲述了交叉验证及交叉验证的极端情况留一法。交叉验证即把数据集划为N份,指定其中一份为验证集,其他为训练集,下一次指定另一份为验证集,其他为训练集,如此循环N次,使每份数据集都充当一次验证集,并平均验证集得到的错误,即为泛化能力。一般来说把数据分为10份是较常见的做法。留一法即每一份数据仅有一个样本,这样得到的泛化能力基本可以代表模型使用N-1个数据集所拥有的泛化能力。

16 Three Learning Principles

16.1 Occam’s Razor

  简单的模型往往是好的,除了数学上的解释(VC维)之外还有一个哲学的解释:一个简单的模型只有很少的可能过拟合,意味着如果这个模型是有效的,那么它很大可能指出了数据的规律性;而一个高复杂度的模型拟合出的结果却不能判定是真的模拟出了规律,还是模拟到了噪声。

16.2 Sampling Bias

  验证集需要契合测试集的分布,否则会出现很大偏差。在很多情况下,验证集(训练集)与测试集是否同分布不是很明显,造成这种情况的原因是在收集数据时就受条件限制隐式地圈定了一个采样范围。例如在电话很贵时通过电话采访(采样范围是富人)、基于用户信息及行为判断是否给一个新用户信用卡(采样范围是已获得信用卡的人)、甚至在时间线上顺序采样与随机采样的不同等。

16.3 Data Snooping

  任何将测试集考虑进建模过程的行为都是污染测试集的行为,包括将数据的统计特征也加以考虑,这些偷窥数据行为都是在增加隐形VC维,会导致测试误差与真实误差的差距增大。
  极端诚实(不对测试集做出任何污染)的行为是,从建模一开始就把测试集锁起来,不进行任何考虑。但是或许更好地平衡偷窥与诚实的行为会在建模过程中获取更好的结果。

0 0
原创粉丝点击