zoukankan      html  css  js  c++  java
  • 核函数

    几个常用的核函数:

    ​ 根据问题和数据的不同,选择不同的参数,实际上就是得到了不同的核函数。

    1.多项式核

    (K(x,z) = (x ullet z + 1)^p),在此情形下,分类决策函数成为:

    (f(x) = mbox{sign}(sum_{i=1}^{N_s}a_i^*y_i(x_iullet x + 1)^p + b^*))

    2.高斯核

    (K(x_1,x_2)=exp{-frac{||x_1-s_2||^2}{2sigma^2}})

    ​ 这个核就会将原始空间映射为无穷维空间。若(sigma)选的很大,高次特征上的权重实际上衰减的非常快,所以实际上相当于一个低维的子空间;若(sigma)选的很小,则可以将任意的数据映射为线性可分,但是可能会导致严重过拟合。

    ​ 总的来说,通过调控参数(sigma),高斯核有相当高的灵活性,也是使用最广泛的核函数之一。

    3.线性核

    (K(x_1,x_2)=langle x_1,x_2 angle),这实际上就是原始空间的内积。这个核存在的主要目的是使得“映射后空间中的问题”和“映射前空间中的问题”两者在形式上统一起来。

    核函数的本质

    1. 实际中,我们会经常遇到线性不可分的样例,此时,我们的常用做法是把样例特征映射到高维空间中去
    2. 但进一步,如果凡是遇到线性不可分的样例,一律映射到高维空间,那么这个维度大小是会高到可怕的(如上文中19维乃至无穷维的例子)。那咋办呢?
    3. 此时,核函数就隆重登场了,核函数的价值在于它虽然也是讲特征进行从低维到高维的转换,但核函数绝就绝在它事先在低维上进行计算,而将实质上的分类效果表现在了高维上,也就如上文所说的避免了直接在高维空间中的复杂计算。

    假设现在你是一个农场主,圈养了一批羊群,但为预防狼群袭击羊群,你需要搭建一个篱笆来把羊群围起来。但是篱笆应该建在哪里呢?你很可能需要依据牛群和狼群的位置建立一个“分类器”,比较下图这几种不同的分类器,我们可以看到SVM完成了一个很完美的解决方案。

  • 相关阅读:
    EasyUI项目驱动学习
    给你一个能生成1到5随机数的函数,用它写一个函数生成1到7的随机数。 (即,使用函数rand5()来实现函数rand7())
    python手记(42)
    Succession
    第一节,学习cocos2d-x的前期准备
    DOM与JavaScript、jQuery之间的关系
    HTML5 精灵8方向移动+背景滚动+音效播放+鼠标事件响应
    Oracle多行记录合并自定义函数
    MSP430F5438 I2C学习笔记——AT24C02
    OPENCV 常用函数
  • 原文地址:https://www.cnblogs.com/jiaxinwei/p/13901837.html
Copyright © 2011-2022 走看看