数据挖掘---分类算法之支持向量机SVM

         上篇已经简单的说了下支持向量机的理论,里面有不少公式,需要肯学习的你一步步的推导试一试,说实在的还是挺能考验数学能力的,当年俺老孙就是一步步的推导过。只有这样你才能对这个过程有清晰的认识,才能对这个算法有所体会。

     下面来举个例子,说说用支持向量机解决异或问题。这个例子是在一个书上看到的,摘录下面希望能够加深对支持向量机的理解。(部分公式不好编辑,所以直接截图,为了和截图的字体大小差不多,这里设置了大号字体!)
      为了阐述支持向量机的设计过程,这里以XOR异或问题为例进行说明。下面是输入数据。

输入数据 期望输出
(-1,-1)  (-1)
(-1,1) (+1)
(1,-1)   (+1)
(1,1)   (-1)

        该问题在二维输入空间不是线性可分的,为此利用核映射方法映射到高维空间来解决。

        令
          K(x,xi)=(1+xTxi)2
        并且x=[x1,x2]T,xi=[xi1,xi2]T
        把内积核K(x,xi)表示为单项式的不同阶数的展开式如下      K(x,xi)=1+x12xi12+2x1x2xi1xi2+x22xi22+2x1xi1+2x2xi2

        因此,可以推断出在特征空间中由输入向量x产生的映射为

数据挖掘---分类算法之支持向量机SVM_第1张图片

          9 1 1 1 

K= {  1 9 1 1   }

          1 1 9 1

          1 1 1 9

             因此对偶问题的目标函数为:

数据挖掘---分类算法之支持向量机SVM_第2张图片

数据挖掘---分类算法之支持向量机SVM_第3张图片

      可以推导出:

                       -x1x2=0    即为分类面方程。该分类面在特征空间中是一个超平面。

        关于这个例子的更多细节,我这里有PDF文件,可惜这里不能传附件。




你可能感兴趣的:(数据挖掘)