林轩田之机器学习课程笔记( how can machines learn之nonlinear transformation)(32之12)

本文探讨了在机器学习中如何通过非线性转换解决线性不可分问题,介绍了二次式假设空间的概念,并讨论了非线性转换带来的代价及如何平衡Ein和Eout之间的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

欢迎转载,可以关注博客:http://blog.youkuaiyun.com/cqy_chen

概要

上节讲到了逻辑回归问题用于二分类,而且将二分类问题拓展到了多分类的问题。但是这些假设空间都是线性的,本节将线性的空间映射到非线性上。

二次式假设空间

在线性的假设空间中,复杂度是受到控制的。但是如果数据是线性不可分的呢?
如下图:
这里写图片描述
如何来进行分类呢?
我们可以采用一个圆圈作为边界进行分类:
这里写图片描述
那么我们也可以将 x21x22 看做一个整体:

h(x)=sign(0.61+(1)x21+(1)x22)

如下图所示:
这里写图片描述
所以这里就像是将原来的点映射到另外的一个空间中,然后采用线性分类器进行分类。
那么如果数据可以在投影后的空间中线性可分,那么是不是一定可以找到相对应该的曲线在原始的空间中进行切分呢?
这里写图片描述
那么我们进行替换就得如上面的式子。当W取不同的值,就会在原始空间中得到不同的曲线。
比如:圆圈、椭圆、双曲线等,任意的二次曲线,如果投影到二次式有如下的项:
这里写图片描述

相当于将原来的二维空间投影到了一个六维空间中。
同时呢,投影后的六维空间是包含原先的二维空间的,这样就导致了假设空间的变大,我们就可以找到假设使得 Ein 变得更小。这就是为什么要做变换。
或者可以理解为,同样是在原来的空间中寻找假设空间,原来的方式是寻找直线,现在的方式寻找二次的曲线。二次的曲线是覆盖直线的,所以假设空间增大。

非线性转换

那么如何在映射后的空间中找到假设呢?
1)首先将数据映射到高维空间
2)在高维空间中进行线性分类
3)将高维空间的分类器映射到低维空间。
这里写图片描述
这里只需要确定如何进行映射方法,以及线性的分类器的选择。
这样就相当于产出了二次的PLA,二次的逻辑回归等等。

做非线性的变换其实就是进行了特征的组合,这里要说一下特征的组合:
比如图形图像处理的CNN,而在实际工作中,会经常使用特征组合,一般情况采用GBDT或者FM,FFM进行特征的组合。
可以参考sklearn的链接:
http://scikit-learn.org/stable/auto_examples/ensemble/plot_feature_transformation.html#example-ensemble-plot-feature-transformation-py
或者参考一个实际的kaggle案例:
https://github.com/guestwalk/kaggle-2014-criteo

特征映射会增加我们的维度,导致自由度增强,资料量不变的情况下,根据vc维的结论,会导致 Eout 增大。这样就会使得 Ein Eout 差异变大了。

非线性转换的代价

虽然我们经过了非线性转换之后,假设空间增大了,但是也要付出相应的代价,如下图,经过q次式:
这里写图片描述
我们差不多要将二维到 O(qd) 维度。
在计算或者存储上都要花费跟多的代价,同时vc维差不多也是 O(qd) ,模型的复杂度增加。就会会导致 Eout 增大。这样就会使得 Ein Eout 差异变大了。
如下图,分别是1次式和4次式:
这里写代码片
所以我们应该怎么选择映射使得 Ein 变小的同时, Eout
也相差不大呢?通过图形化的操作是不可能的,就像下面的
这里写图片描述

这里顺便说一下:这里就是相当于在SVM里面的超参数,进行kernel映射的时候,应该是选择二次式还是高斯还是其他的方式进行映射,一般是采用网格搜索或者验证曲线进行判断
验证曲线筛选超参数,学习曲线判断当前模型状态。
http://scikit-learn.org/stable/modules/learning_curve.html

当映射的维度增大,同时如果要使得 Eout 减小也可以通过数据量的增大。

结构化的假设空间集合

我们知道在多项式的转换过程中:
这里写图片描述
假设空间是不断扩大的,高维度依次包含低维度,所以我们的 Ein 会不断的减小,vc维不断增大。
这里写图片描述
根据vc维的理论: EoutEin+......
可以参考http://blog.youkuaiyun.com/cqy_chen/article/details/78888890
这样就会导致 Eout 增大,如下图:
这里写图片描述
这里顺便引入下节课,这就是所谓的过拟合。
所以在使用机器学习的时候,从简单的模型开始使用,不要从复杂的模型开始

欢迎转载,可以关注博客:http://blog.youkuaiyun.com/cqy_chen

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值