核函数核技巧(Kernel Trick)白话简介

iefreer 发表于 2019-03-28 13:04:43

标签: 机器学习, kernel trick, kernel function

- +

核函数是为了解决分类问题而引入的方法。

有些数据并不是那么容易线性分割,比如我们很容易用一根线条(红色)来分割下图中的黑白点:

image.png

但是无法用直线来分割下图中的蓝红数据点:

image.png

为了能用简单的直线(或者多维空间的超平面)来分割如上图中的数据集,我们需要“升维”来观察和思考问题。

比如通过一定的映射,把数据映射成如下三维空间这样的分布:

image.png

那么显然在新的维度空间中,蓝红色点可以被一个线性平面来分割。

核方法的主要思想是基于这样一个假设:

在低维空间中不能线性分割的点集,通过转化为高维空间中的点集时,很有可能变为线性可分的”。

然而,如果直接把低维度的数据转化到高维度的空间中,然后再去寻找线性分割平面,会导致计算复杂化。

怎么解决这些问题?答案是通过核技巧(Kernel Trick)。比如原始二维空间两个点P1_ori(x1,y1)和P2_ori(x2,y2),经过映射后变为了三维空间两个点P1(x1,y1,z1)和P2(x2,y2,z1),接下来需要进行相似度计算(也就是计算内积<P1,P2>,内积的几何意义是一个矢量在另外一个矢量上的投影,越相近取值越大),来进一步进行分类任务。为了偷懒(避免高维度空间的内积(点积)计算),我们投机取巧的寻找出一个核函数(Kernel Function)用来简便的计算映射到高维空间之后的内积,这就是所谓的核技巧。

最后放一个人话版在线视频,帮助理解核方法的基本思想。


possitive(1) negative(0) views254 comments0
私信 收藏 分享
分享到

发送私信

最新评论

请先 登录 再评论.
相关文章
  • 2019年NodeJS框架Koa和Express选型比较

    Koa和Express都是NodeJS的主流应用开发框架。
    Express是一个完整的nodejs应用框架。Koa是由Express团队开发的,但是它有不同的关注点。Koa致力于核心中间件...

  • 踏得网精选2016年度10大最佳HTML5动画

    踏得网精选2016年度最酷最新的HTML5动画集,评选标准为:创意新颖度+实现技术难度+趣味程度。使用一些在线H5生成工具的作品,因其主要使用图片和CSS3套路动画,...

  • JavaScript语言多编程范式简介

    和C++等语言类似,JS支持多范式(paradigms)编程。我们常常混合这些范式来完成一些大型Web项目。JS支持3种编程范式:命令式、面向对象和函数式。命令式(Imperative JavaScript)命令式就是简单的从上而下完成任务,流水账过程式编码风格:function

  • JavaScript事件模型图解

    在JavaScript中用户交互的核心部分就是事件处理。本文为对事件模型和处理机制的总体性描述。Event是什么?
    event是用户操作网页时发生的交互动作,比如clic...

  • 常见面试题JS语言中四种函数调用方式实例讲解

    JS的语言世界中函数(function)是一等公民,函数的调用有多种方法。普通调用这个是最常见和直接的方式:function

  • CSS3弹性布局内容对齐(justify-content)属性使用详解

    内容对齐(justify-content)属性应用在弹性容器上,把弹性项沿着弹性容器的主轴线(main axis)对齐。该操作发生在弹性长度以及自动边距被确定后。 它用来在存...

  • 深入理解CSS3滤镜(filter)功能和实例详解

    CSS3滤镜功能源自SVG滤镜规范,SVG滤镜最早用来给矢量图添加类似PS中像素图的一些特效。
    把这个滤镜功能引入到普通HTML元素中可以带来很有趣的效果(模糊、...

  • 三维向量的简单运算和实用意义

    在WebGL的实际应用中我们广泛使用向量的几何运算来计算角度、距离,判断点线、点面之间的关系,比如物体之间的碰撞检测。本文简要介绍三维计算机图形学中常用的...

  • div 、section 、article的区别和使用场景

    div 、section 、article的区别和使用场景
    主要区别,以及适用场合如下:
    1、div在html早期版本就支持了,section和article是html5提出的两个雨衣话标...

  • 更多...