热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

线性SVM,线性可分SVM与核函数

SVM即支持向量机(supportvectormachine),是一种分类算法。SVM适合中小型数据样本、非线性、高维的分类问题。它将实例

SVM即支持向量机(support vector machine),是一种分类算法。SVM 适合中小型数据样本、非线性、高维的分类问题它将实例的特征向量映射为空间中的一些点。如:

而SVM要做的事情就是找到那么一条线, “最好地” 区分这两类点,以后有了新的点,这条线也能做出很好的分类。划分的线是可以有无数条的。

那么哪一条线是最好的呢。SVM 将会寻找可以区分两个类别并且能使间隔(margin or gap)最大的划分超平面。比较好的划分超平面,样本局部扰动时对它的影响最小、产生的分类结果最鲁棒、对未见示例的泛化能力最强。

对于任意一个超平面,其两侧数据点都距离它有一个最小距离(垂直距离),这两个最小距离的和就是间隔。比如下图中两条虚线构成的带状区域就是 gap,虚线是由距离中央实线最近的两个点所确定出来的(也就是由支持向量决定)。

从上图可以看出,虚线上的点到划分超平面的距离都是一样的,实际上只有这几个点共同确定了超平面的位置,因此被称作 “支持向量(support vectors)”,“支持向量机” 也是由此来的。


线性SVM

对于这个划分的超平面,我们可以给一个方程:

\omega ^{T}X+b=0

我们的处理方法是增加松弛因子\varepsilon _{i}

求偏导得

带入式子中得到:

然后求对于α的极大值

构造对偶问题,解约束最优化:

最后得到超平面:

要注意的是:计算b*时,需要使用满足条件0<α

实践中往往取支持向量的所有值取平均作为b* 。

SVM的损失函数为Hinge loss

\left\{\begin{matrix} y=-x+1, x<1 \\ y=0, x\geqslant 1 \end{matrix}\right.

因为最后求超平面的时候我们使用的是两个向量的内积,所以核函数即为定义两个向量的内积。常用的核函数有

多项式核函数:\kappa (x_{1},x_{2})=(x_{1}\cdot x_{2}+c)^{d}

高斯核函数:\kappa (x_{1},x_{2})=exp(-\gamma \left \| x_{1}- x_{2} \right \|^{2})

Sigmod核函数:\kappa (x_{1},x_{2})=tanh(x_{1}\cdot x_{2}+c)


推荐阅读
  • 支持向量机(SVM)算法综述
    支持向量机(Support Vector Machine, SVM)是由Cortes和Vapnik于1995年首次提出的一种机器学习算法。SVM在处理小样本、非线性及高维模式识别问题上表现出显著的优势,并广泛应用于函数拟合等其他机器学习任务中。 ... [详细]
  • 机器学习算法:SVM(支持向量机)
    SVM算法(SupportVectorMachine,支持向量机)的核心思想有2点:1、如果数据线性可分,那么基于最大间隔的方式来确定超平面,以确保全局最优, ... [详细]
  • 本文介绍如何使用OpenCV和线性支持向量机(SVM)模型来开发一个简单的人脸识别系统,特别关注在只有一个用户数据集时的处理方法。 ... [详细]
  • 分隔超平面:将数据集分割开来的直线叫做分隔超平面。超平面:如果数据集是N维的,那么就需要N-1维的某对象来对数据进行分割。该对象叫做超平面,也就是分类的决策边界。间隔:一个点 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • 支持向量机(SVM)是一种基于统计学习理论的模型,主要在VC维和结构风险最小化的理论基础上发展而来。本文将探讨几种不同的SVM方法及其优化策略,旨在提高模型的效率和适用性。 ... [详细]
  • 大数据时代的机器学习:人工特征工程与线性模型的局限
    本文探讨了在大数据背景下,人工特征工程与线性模型的应用及其局限性。随着数据量的激增和技术的进步,传统的特征工程方法面临挑战,文章提出了未来发展的可能方向。 ... [详细]
  • AI炼金术:KNN分类器的构建与应用
    本文介绍了如何使用Python及其相关库(如NumPy、scikit-learn和matplotlib)构建KNN分类器模型。通过详细的数据准备、模型训练及新样本预测的过程,展示KNN算法的实际操作步骤。 ... [详细]
  •     目标检测是计算机视觉一个非常重要的子任务。目标检测需要发现并准确定位自然图片中的物体。在2012年之前,目标检测主要基于手工设计的特征以及传统分类器。2012年以后,出现了 ... [详细]
  • 深度学习: 目标函数
    Introduction目标函数是深度学习之心,是模型训练的发动机。目标函数(objectfunction)损失函数(lossfunction)代价函数(costfunction) ... [详细]
  • NLP篇【01】tfidf与bm25介绍与对比
    上一篇:自然语言处理【NLP】遇上电商——专栏导读下一篇:NLP篇【02】白话Word2vec原理以及层softmax、负采样的实现一、tfidf介 ... [详细]
  • 这是我在复习时整理的笔记,过一遍就稳了,建议还是把PPT过一遍,老师考的都是基础题,大部分都在PPT上,特别是 ... [详细]
  • 概述SVM(支持向量机)是一个二分类的模型,它的主要思想就是间隔最大化,那么问题来了,什么是间隔最大化&#x ... [详细]
author-avatar
NOYOKI要跑偏
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有