我正在阅读支持向量机的理论。在核技巧中,我所理解的是,如果我们有一个在原始维数n中不可线性可分的数据,我们使用核将数据映射到一个更高的空间,使之线性可分(我们必须根据数据集选择正确的核,等等)。然而,当我看这个核支持向量机的视频,我所理解的是,我们可以把原始数据映射到一个更小的空间,这让我很困惑!?任何解释。
您能解释一下RBF内核是如何工作的,如何将每个原始数据样本x1(x11,x12,x13,....,x1n)映射到一个更高的空间(维数为m)为X1(X11,X12,X13,...,X1m),并给出一个具体的例子。另外,我理解的是内核计算转换数据的内积(因此在RBF之前还有另一个转换,这意味着RBF隐式地将数据转换到更高的空间,但如何实现?)
另一件事:内核是一个函数k(x,x1):(R^n)^2->R =g(x).g(x1),与g是一个转换函数,在核函数的情况下如何定义g?
假设我们在测试集中,我所了解的是x是要分类的样本,x1是支持向量(因为只使用支持向量来计算超平面)。在径向基函数k(x,x1)=exp(-(x-x1)^2/2sigma)的情况下,转换在哪里?
最后一个问题:承认径向基函数做了高维m的映射,是否可以显示这个m?我想看看理论上的现实。
我想用RBF核实现支持向量机。这里的m是什么?如何选择它?如何在实践中实现内核技巧?
发布于 2016-02-20 21:13:38
请您解释一下RBF内核如何将每个原始数据样本x1(x11、x12、x13、.、x1n)映射到一个更高的空间(维数为m),即X1(X11、X12、X13、.、X1m),并给出了具体的例子。另外,我理解的是内核计算转换数据的内积(因此在RBF之前还有另一个转换,这意味着RBF隐式地将数据转换到更高的空间,但如何实现?)
正如您所说-内核是投影空间的内积,而不是投影本身。整个技巧是,您永远不会转换数据,因为在计算上,太昂贵了,无法这样做。
另一件事:核是函数k(x,x1):(R^n)^2->R =g(x).g(x1),g是一个变换函数,在核函数中如何定义g?
对于径向基函数核,g实际上是从R^n到连续函数(L2)空间的映射,每个点被映射为均值x和方差σ^2的非归一化高斯分布。
g(x) = N(x, sigma^2)[z] / A # notice this is not a number but a function of z!现在函数空间中的内积是产品在整个领域中的整体。
K(x, y) = <g(x), g(y)>
= INT_{R^n} N(x, sigma^2)[z] N(y, sigma^2)[z] / A^2 dz
= B exp(-||x-y||^2 / (2*sigma^2)) 其中B是一些常数因子(归一化),完全依赖于sigma^2,因此,为了简化计算,我们可以删除它(因为标度在这里并不重要)。
假设我们在测试集中,我所了解的是x是要分类的样本,x1是支持向量(因为只使用支持向量来计算超平面)。在径向基函数k(x,x1)=exp(-(x-x1)^2/2西格玛)的情况下,转换在哪里?
正如前面说过的,从来没有显式使用过转换,您只需证明具有转换点的超平面的内积可以再次表示为具有支持向量的内积,因此您不需要转换任何东西,只需使用内核即可。
<w, g(x)> = < SUM_{i=1}^N alpha_i y_i g(sv_i), g(x)>
= SUM_{i=1}^N alpha_i y_i <g(sv_i), g(x)>
= SUM_{i=1}^N alpha_i y_i K(sv_i, x)其中sv_i是I‘’th支持向量,alpha_i是优化过程中发现的样本权重(Lagrange乘子),y_i是I‘’th支持向量的标号。
最后一个问题:承认径向基函数做了高维m的映射,是否可以显示这个m?我想看看理论上的现实。
在这种情况下,m是无穷大的,因为您的新空间是R^n -> R域中的连续函数空间,因此单个向量(函数)被定义为一个连续统(实数集合的大小)值--每一个可能的输入值来自R^n (这是一个简单的集合论结果,任何正n的R^n都是大小连续体)。因此,在纯数学,m = |R|,和使用集合论,这就是所谓的Beth_1 (数)。
我想用RBF核实现支持向量机。这里是什么?怎么选择?如何在实践中实现内核技巧?
您不选择m,它是由内核本身定义的。在实践中实现内核技巧需要在表单中表示所有优化例程,其中训练点仅在内部产品的上下文中使用,而代之以内核调用。这太复杂了,无法用这样的形式来描述。
https://stackoverflow.com/questions/35447613
复制相似问题