APP下载

机器学习系列18:核函式

消息来源:baojiabao.com 作者: 发布时间:2024-05-27

报价宝综合消息机器学习系列18:核函式

机器学习系列18:核函式

让我们来考虑这样一个问题,现在给定一个数据集,让你划分出决策边界,该怎么办呢?资料集中正样本为“叉”,负样本为“圈”,如下图:

第一反应就是用一个高阶多项式去构造一个假设函式,当假设函式大于等于零时,我们就可以认为它为正样本,否则为负样本,类似下面这种形式:

但是有一个问题出现了,我们不能确定构造的假设函式就是最符合这个例子的高阶多项式,可能还有其他的高阶多项式能够更好地符合这个例子。

为了解决这样一个问题,我们首先来引入新的符号,用 f 替换原来多项式中的 x,假设函式就变成了如下这种型别:

现在问题就转化成如何选择特征 f?我们可以通过核函式(Kernels)改造支援向量机让它来学习复杂的非线性假设函式。

对于特征 x_1 和 x_2,我们首先手动的选取几个点 l^(1), l^(2), l^(3), 这些点被称作标志(landmark), 然后令:

其中:

这里的 similarity( ) 是相似度函式,被称为核函式(Kernels),也叫做高斯核函式(Gaussian Kernel)。虽然这个函式跟正态分布函式长得很像,但其实比没有什么关系。

现在我们来分析一下这个函式,当 x 与 l 几乎相等时,这一项:

就等于 0,那么 f =1。当 x 与 l 差距很大时,f = 0。

让我们用影象去直观地感受一下:

影象中高度为 f 的值,x 越接近 l ,f 就越处在“山丘”的顶部。山丘的形状还与 σ^2 有关。

σ^2 越小,“山丘”越“瘦高”,σ^2 越大,“山丘”越“胖矮”。

在下面这张图中,假设我们已经手动寻找了标志且构造了一个假设函式:

引数也知道了:

现在观察粉红色的点,它离 l^(1) 近,f1 = 1,离 l^(2) , l^(3) 远,f2 和 f3 都为 0,此时假设函式大于 0,我们就可以预测这是一个正样本。

再来观察浅蓝色的点:

离 l^(1) , l^(2) , l^(3) 都远,f1,f2,f3 都为 0,假设函式就小于 0,我们就可以认为这是一个负样本。通过这样的判断,我们就可以画出一个决策边界:

如何选择标记点呢?我们可以将训练集所在的位置直接当做样本点来处理。

2019-12-24 19:51:00

相关文章