凌云时刻 · 技术
导读:核函数是机器学习算法中一个重要的概念。简单来讲,核函数就是样本数据点的转换函数。这一节我们来看看应用非常广泛的一个核函数,高斯核函数。
作者 | 计缘
来源 | 凌云时刻(微信号:linuxpk)
高斯核函数
高斯核函数的名称比较多,以下名称指的都是高斯核函数:
高斯核函数。
RBF(Radial Basis Function Kernel)。
径向基函数。
对于多项式核函数而言,它的核心思想是将样本数据进行升维,从而使得原本线性不可分的数据线性可分。那么高斯核函数的核心思想是将每一个样本点映射到一个无穷维的特征空间,从而使得原本线性不可分的数据线性可分。
我们先来回顾一下多项式特征,如下图所示,有一组一维数据,两个类别,明显是线性不可分的情况:
然后通过多项式将样本数据再增加一个维度,假设就是 ,样本数据就变成这样了:
此时原本线性不可分的样本数据,通过增加一个维度后就变成线性可分的状态。这就是多项式升维的意义。
下面我们先来认识一下高斯核函数的公式:
上面公式中的 就是高斯核函数的超参数。然后我们再来看看高斯核函数使线性不可分的数据线性可分的原理。
为了方便可视化,我们将高斯核函数中的 取两个定值 核 ,这类点称为地标(Land Mark)。那么高斯核函数升维过程就是假如有两个地标点,那么就将样本数据转换为二维,也就是将原本的每个 值通过高斯核函数和地标,将其转换为2个值,既:
下面我们用程序来实践一下这个过程:
import numpy as np
import matplotlib.pyplot as plt
# 构建样本数据,x值从-4到5,每个数间隔为1
x = np.arange(-4, 5, 1)
x
# 结果
array([-4, -3, -2, -1, 0, 1, 2, 3, 4])
# y构建为0,1向量,且是线性不可分的
y = np.array((x >= -2) & (x
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?


微信扫码登录