《机器学习基石》第12节课学习笔记

第12节课  Nonlinear Transformation

  • 这节课主要介绍了非线性分类模型,通过非线性变换,将非线性模型映射到另一个空间,转换为线性模型,再来进行线性分类。本节课完整学习了非线性变换的整体流程,以及非线性变换可能会带来的一些问题:时间复杂度和空间复杂度的增加。最后介绍了在要付出代价的情况下,使用非线性变换的最安全的做法,尽可能使用简单的模型,而不是模型越复杂越好。总之,本节课的学习主要围绕非线性分类模型,个人来说是个难点,一定要多下功夫!

(一)引入非线性分类

1.之前介绍的线性模型,在2D平面上是一条直线,在3D空间中是一个平面。数学上,我们用线性得分函数s来表示:

其中,x为特征值向量,w为权重,s是线性的。

线性模型的优点就是,它的VC维比较小,保证了Ein≈Eout。但是缺点也很明显,对某些非线性问题,分类效果不佳。

2.然而,面对线性不可分的数据时(实际中也有许多这样的例子),线性方法不那么有效(引入了二次曲线假设):

基于这种非线性思想,我们之前讨论的PLA、Regression问题都可以有非线性的形式进行求解。

可以看出,二次曲线(比如圆)可以解决这个问题。

接下来就分析如何通过二次曲线假设解决线性方法无法处理的问题,进而推广到多次假设。

对于上面的例子,我们可以假设分类器是一个圆心在原点的正圆,圆内的点被分为+1,圆外的被分为-1,于是有:

在上面的式子中,将(0.6, -1, -1) 看做向量w,将(1, x1^2, x2^2) 看做向量z,这个形式和传统的线性假设很像。可以这样理解,原来的x 变量都映射到了z-空间,这样,在x-空间中线性不可分的数据,在z-空间中变得线性可分;然后,我们在新的z-空间中进行线性假设。

在数学上,通过参数w 的取值不同,上面的假设可以得到正圆、椭圆、双曲线、常数分类器,它们的中心都必须在原点。如果想要得到跟一般的二次曲线,如圆心不在原点的圆、斜的椭圆、抛物线等,则需要更一般的二次假设。

注:从二次假设推广到多次假设有点难理解

(二)非线性转换

1.设计一个好的二次分类的目标就是在z域中设计一个最佳的分类线。

2.进行非线性转换的具体过程如下:

 

整个过程就是通过映射关系,换个空间去做线性分类,重点包括两个:

①特征转换

②训练线性模型

3.特征变换:比如数字识别问题。(理解)

(三)非线性转换的代价

1.所谓”有得必有失“,将特征转换到高次空间,我们需要付出学习代价(更高的模型复杂度)。

x-空间的数据转换到z-空间之后,新的假设中的参数数量也比传统线性假设多了许多:

2.下面通过一个例子来解释为什么VC Dimension过大,会造成不好的分类效果:

结论:根据之前分析过的,VC 维约等于自由变量(参数)的数量,所以新假设的dVC 急速变大,也就是模型复杂大大大增加。

回顾机器学习前几讲的内容,我们可以有效学习的条件是:(1)Ein(g) 约等于 Eout(g);(2)Ein(g) 足够小。

当模型很简单时(dVC 很小),我们更容易满足(1)而不容易满足(2);反之,模型很复杂时(dVC很大),更容易满足(2)而不容易满足(1)。

(四)假设集(参考了网上的资料)

下面,我们讨论一下从x域到z域的多项式变换。首先,如果特征维度只有1维的话,那么变换多项式只有常数项:

如果特征维度是两维的,变换多项式包含了一维的Φ0(x):

 

如果特征维度是三维的,变换多项式包含了二维的Φ1(x):

 

以此类推,如果特征维度是Q次,那么它的变换多项式为:

 

那么对于不同阶次构成的hypothesis有如下关系:

 

我们把这种结构叫做Structured Hypothesis Sets:

 

那么对于这种Structured Hypothesis Sets,它们的VC Dimension满足下列关系:

它的Ein满足下列关系:

结论:从上图中也可以看到,随着变换多项式的阶数增大,虽然Ein逐渐减小,但是model复杂度会逐渐增大,造成Eout很大,所以阶数不能太高。

那么,如果选择的阶数很大,确实能使Ein接近于0,但是泛化能力通常很差,我们把这种情况叫做tempting sin。所以,一般最合适的做法是先从低阶开始,如先选择一阶hypothesis,看看Ein是否很小,如果Ein足够小的话就选择一阶,如果Ein大的话,再逐渐增加阶数,直到满足要求为止。

也就是说,尽量选择低阶的hypothes,这样才能得到较强的泛化能力。

转载于:https://www.cnblogs.com/lxx0/p/lxx_learning-notes-12.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值