机器学习之非线性分割(机器学习基石)

从线性到非线性

在以前接触过的学习算法中(PLA,LinearRegression,LogisticRegression)它们所做的工作都是对资料做线性的判断。单拿二元分类来说他们无法分割非线性的资料。

如上图所示如果注意到坐标的话这个二元分类的模型表达式如下(假设圆的半径的平方为0.6):

如果面上的点到圆心的距离平方和>0.6的话就判定为x,如果面上的点到圆心的距离平方和<0.6的话就判定为o。可见这笔资料不是线性可分是圆形可分(非线性资料)。

从非线性到线性

我们将上面的式子做以下的转换:

在转换之后上式就变成了一个线性的模型,这样我们好像是在做将X空间中的点转化到Z空间一样,也就是说每一个X空间里的点都会在Z空间找到对应的点。而这个表达式在X空间是非线性的但是在Z空间是线性的,因此我们将这个模型转换(特征转换)为了一个线性的模型。直观的表述如下图所示:

转化不可逆

在特征转化的过程中将X空间里的一个圆转换为Z空间的一个直线,那么Z空间的直线就一定是一个圆么?不是,这个在学习了线性代数的线性变换之后体会更加深刻。把一张图片压缩成一条线,这张图片布满了这条线而且有多个不同的图片都能够压缩成一条相同的线。

如上图(所展示的是一个二维的二次方程),Z空间的权重W的系数多变,一条Z空间的直线有可能是圆,而第三种情况则代表一个椭圆,第四种代表一个双曲线,第五种代表一个常数。

更为复杂的转化

在上面的例子中我们知道了X空间的一些特殊二次曲线在Z空间的表示方式但是要使得任何二次函数都能够转换成Z空间的直线就需要更为复杂的转换。

首先我们要列出一个最普适的二次曲线的方程重点突出的是它的一次项、二次项、常数项都要考虑到:

上图的就是一个案例,在X空间的一个二次模型经过特征转换到Z空间成为一个线性模型。如我们要转换一个倾斜的椭圆,首先将它的各个项按照一定的规则(比如说从低次项到高次项)排列下来,然后算出各个项所对应的系数,再将这些系数会作为我们Z空间的权重值我们就完成了这次转换。当然一些特殊的曲线会是我们普适的曲线的特殊情况令某些项为0就可以得到。

做到最好

在进行特征转换之后我们可以使用Z空间的资料进行模型的选择与资料的分类,这样的话我们就能在Z空间中分类完成的之后的资料中找到X空间所对应的映射。至于分类我们依然是在VC的保证下使用各种分类算法进行。

而特征转换从理论上可以转换任何次方的方程,这样我们就可以通过特征转换找到非常复杂的边界,所以特征转换也成为机器学习中的“源力”。

哲学意义

我们现实生活中看到的东西更加只是一种特定空间下的一种观点。在一个观点看来是非常复杂的事情,在另一个观点看来异常简单。这就给我们一个启示,想要以全新的范式解决一个复杂难题需要更换一个观点。有时候找到这个是运气使然,但在机器学习这里这是一个普遍的方法论。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Elong_Hu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值