十大机器学习算法之支持向量机(一)

机器学习——十大算法 线性回归是机器学习中最基础也是应用最广泛的算法之一。它主要用于预测一个或多个自变量(输入特征)与一个因变量(输出标签)之间的线性关系。线性回归模型试图找到一条直线(在二维空间中)或一个超平面(在更高维空间中),使得所有数据点到这条直线或超平面的垂直距离之和最小,这样的直线或超平面称为最佳拟合线或最佳拟合超平面。线性回归模型通常表示为:其中:*y 是因变量,即我们想要预测的输出。*x 是自变量,即输入特征。*w 是权重,表示每个特征对输出影响的程度。 阅读详情

1、随便说点

这个系列就是想要记述一下自己学习机器学习算法的一个心路历程的对算法的认识,如果有帮助到更多人(还是小开心的~~~~),如果有错误的话欢迎各路大神积极的跟我联系修正错误,免的误导大家。

2、正题

2.1、课前知识
SVM是一种监督式学习方法。对于线性不可分的情况,支持向量机通过使用非线性映射把向量映射到一个更高维的空间里,基于机构风险最小化理论,在这个空间里建立有一个分割超平面,使得学习期得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界。在分开数据的超平面两边建有两个相互平行的超平面。分割超平面使得两个平行的超平面的距离最大化。这个距离越大,分类器的总体误差就会越小,分类效果越好。
2.2、带领大家再看一遍logistic回归
Logistic回归的目的是从特征学习出一个0/1分类模型,而这个模型是将特征的线性组合作为自变量,由于自变量的取值是负无穷到正无穷。因此,使用logistic函数将自变量映射到(0,1)上,映射后的值被认为是属于y=1的概率。
形式化表示:
假设函数:
这里写图片描述
其中x是n维的特征向量,函数g就是logistic函数。
函数g(x)的图像是:
这里写图片描述
可以看到,无穷被映射到了(0,1)上。而假设函数就是特征属于y=1的概率。
这里写图片描述
这里写图片描述
当新来一个特征时候,我们只需要求出这里写图片描述如果大于0.5,则特征就是属于y=1的类,反之,则是属于y=0的类。
回过头来再看一遍,我们会发现,这里写图片描述只与这里写图片描述有关,这里写图片描述>0,那么这里写图片描述>0.5,g(z)只不过是用来映射的函数,真正的决定特征是属于哪一个类别的还是这里写图片描述。可以看出当这里写图片描述趋近于正无穷的时候,特征值是接近于1的,反之则是接近于-1。我们训练模型的目的就是希望训练数据中y=1的特征这里写图片描述>>0,而y=0的特征远远小于0。Logistic回归的目的就是要学习得到这个θ,使得正例的特征远远大于0,负例的特征远远小于0,而且是要在所有的实例上达到这个训练目的。
2.3形式化表示
在SVM中使用的标签是-1和1,替换的是logistic回归中的0和1 (其实标签数据都是无所谓多少的,只是为了更好的区分而已)。θ替换成了w和b。以前这里写图片描述,其中这里写图片描述=1的。我们现在把这里写图片描述替换为b,其他的θ替换为w,替换后为:这里写图片描述可以进一步简化为这里写图片描述,同时这里写图片描述。也就是说最终y由y=0和y=1变为y=-1和y=1,只是这些标记数据变化之外。其他都没有什么区别。现在的假设函数为:这里写图片描述。上一小节我们说过只需要考虑这里写图片描述的正负问题,不用关心函数g(z)的大小变化,因此这里我们将g(z)做一个简化处理,把他简单的映射到-1和1上。映射关系如下所示:
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
2.4函数间隔和几何间隔
我跟你们分享一下我理解的函数间隔和几何间隔。函数间隔顾名思义由函数出发计算出来的间隔,就是我们数学上学习到的计算点到平面的距离;几何间隔就是计算的点到平面的距离除以系数。接下来听我慢慢道来。
函数间隔
概念:点到超平面的距离。给定一个训练样本这里写图片描述,x是特征,y是标签,i标示第i个样本。
定义函数间隔如下:
这里写图片描述
超平面(w,b)关于训练样本集中所有样本点这里写图片描述的函数间隔的最小值就是超平面关于训练样本集的函数间隔:
这里写图片描述
我们能够想象的到。当这里写图片描述=1的时候,在我们的g(z)中,这里写图片描述是大于等于0的,此时的函数间隔实际上就是这里写图片描述。为了使函数间隔最大(也就是确定样本是正例还是反例的确信度最大化),当这里写图片描述=1时,这里写图片描述应该是一个极大数(是一个绝对值极大的数)。因此,函数间隔代表了我们认为特征是正例还是反例的置信度。
但是,这样定义的函数间隔是有问题的,我们为了使这里写图片描述最大化,我们可以试着同时按照比例增大w和b的值(比如2w,2b)则这个时候的函数间隔变为原来的2倍,但是超平面并没有发生变化,所以,这个函数间隔是由BUG存在的,只是使用这一个来定义远远不够,这个时候就要我们的几何间隔出面了。
几何间隔
先看一张图
这里写图片描述
对于图中A这里写图片描述点,其垂直投影到超平面的对应点为B,w是垂直于超平面的一个向量,r为样本点A到超平面的距离,此时有单位向量为这里写图片描述,所以B点的坐标为这里写图片描述(利用几何知识计算),带入到超平面这里写图片描述=0得到:
这里写图片描述
进一步得到:
这里写图片描述
r就是点到超平面的距离。为了求得r的绝对值,令r乘上对应的类别y,即可得出几何间隔。R=yr
由此可以看出,及时同时增大w和b的倍数,几何间隔的大小是不会改变的。当||w||=1时,几何间隔即为函数间隔。
从上面的定义中我们可以看出来,几何间隔和函数间隔之间的区别就在于||w||,几何间隔就等于函数间隔除以||w||。函数间隔这里写图片描述实际上就是f(x),只是认为定义的间隔度量,而几何间隔f(x)/||w||才是直观上的点到超平面的距离。
2.5最优间隔分类器
在前面我们说过,我们的目标就是寻找到一个超平面,这个超平面使得离这个超平面的距离是越大越好,达到最大就是我们想要的效果。(就是我们所说的使得所有的点都必须远离超平面,如果最近的都远离了,那么其他的点肯定也都是远离的),我们现在所关心的就是要尽量使得离得最近的点到超平面的距离最大。画个图比较明了************************(好丑的图,不忍直视)
这里写图片描述就是图中A点和B点离超平面的距离最大化。
形式化表示为:
这里写图片描述
这里||w||=1规约w,使得求得的是几何间隔而不是函数间隔。
到现在为止,我们已经把模型定义出来了,如果我们已经求得w和b,那么对于新到来的一个x,我们只需要代入到公式当中,就可以对他进行分类,这个就成为最优间隔分类器。我们现在的问题就是怎么去把w和b求出来。
由于||w||=1不是凸函数,我们把这个进行处理,考虑到我们前面2.4节中讲到的几何间隔和函数间隔的关系,这里写图片描述,我们把上面等式重新换个方式写出来:
这里写图片描述
这个时候其实我们求得的最大值还是几何间隔,只不过此时的w不需要再受到||w||=1的约束。但是这个时候目标函数并不是凸函数,没有现成的算法求最优,所以我们还是要修改,前面说到,同时扩大w和b的倍数,对结果并没有什么影响,但是我们还是要求出一组w和b的值,因此,我们需要对函数间隔做一些限制,以保证我们的解是唯一的。我们为了简单,取函数间隔为1,也即是距离超平面最近的点的距离定义为:1/||w||。由于求1/||w||的最大值,就相当于求这里写图片描述的最小值,因此,改写之后的结果为:
这里写图片描述
这个就比较让我们满意了,只有线性约束,而且这还是一个典型的二次规划问题(目标函数是自变量的二次函数)。代入现有的优化软件求解即可。
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
总算把前面一些知识算是说完了,有啥新增的我会在更新,下面一篇就要好好的步入正题中的正题,我们的核心————SVM。

数据挖掘领域十大经典算法之—SVM算法(超详细附代码) 相关文章: 数据挖掘领域十大经典算法之—C4.5算法(超详细附代码) 数据挖掘领域十大经典算法之—K-Means算法(超详细附代码) 数据挖掘领域十大经典算法之—Apriori算法 数据挖掘领域十大经典算法之—EM算法 数据挖掘领域十大经典算法之—PageRank算法 数据挖掘领域十大经典算法之—AdaBoost算法(超详细附代码) 数据挖掘领域十大经... 阅读详情

相关推荐

白话机器学习算法理论+实战之支持向量机(SVM)

1. 写在前面 如果想从事数据挖掘和数据分析的工作,掌握常用的机器学习算法是非常有必要的,比如我之前写过的一篇十大机器学习算法的小总结,在这简单的先捋一捋, 常见的机器学习算法: 监督学习算法:逻辑回归,线性回归,决策树,朴素贝叶斯,K近邻,支持向量机,集成算法Adaboost等 无监督算法:聚类,降维,关联规则, PageRank等 为了详细的理解这些,曾经看过西瓜书,统计学习方法,机器学习...

Miracle8070 5947

机器学习:支持向量机(SVM)简介与其大间距分类性的推导

支持向量机(SVM)简介与其大间距分类性的推导,比吴恩达的讲解更具有一般性。

ShadyPi的IT笔记 1210

DEXPI与Proteus XML:解锁过程工业P&ID数据互操作性的技术核心

本文深入探讨了DEXPI与Proteus XML在过程工业P&ID数据互操作性中的核心技术。通过解析DEXPI标准的开源特性和Proteus XML的架构设计,揭示了其在跨平台数据交换中的关键作用,并结合CADMATIC和西门子COMOS的实战案例,展示了如何实现高效的数据集成与转换。

weixin_29195615的博客 384

机器学习算法系列(五)-- 支持向量机(SVM)

我们希望寻找到这样的直线,使得距离这条直线最近的点到这条直线的距离最短。我们从如下右图直观来解释这一句话就是要求的两条外面的线之间的间隔最大。这是可以理解的,因为假如数据样本是随机出现的,那么这样分割之后数据点落入到其类别一侧的概率越高那么最终预测的准确率也会越高。在高维空间中这样的直线称之为超平面,因为当维数大于三的时候我们已经无法想象出这个平面的具体样子。那些距离这个超平面最近的点就是所谓支持向量,实际上如果确定了支持向量也就确定了这个超平面,找到这些支持向量之后其他样本就不会起作用了。

三明治的博客 7237

三极管吸潮失效分析案例

案例背景三极管也称为晶体三极管,它被视为电子电路中最重要的器件之一。三极管顾名思义具有三个电极,它最主要的功能是电流放大和开关作用。本次失效案例中的三极管在仓库存放一段时间后,在PCBA测试过程中集中发生不良。分析过程1.外观检测对失效样品进行外观检测,未发现明显破损、裂纹等不良。2.X-ray检测对失效样品进行X-ray检测,金线、绑定点未发现异常。3.开封检测对失效样品进行开封检测,发现存在键合点脱落的现象,键合点附近的晶圆破损。4.SEM检测对失效样品进行SEM检测,发现晶圆键合点位置有裂纹和破损,金

sy220504的博客 1043

鱼眼双目测距实战:从OpenCV标定到SGBM匹配的完整流程解析

本文详细解析了鱼眼双目测距的完整流程,从OpenCV标定到SGBM匹配,涵盖标定、校正、匹配和测距四个关键阶段。通过实战经验分享,帮助开发者解决鱼眼镜头强畸变带来的测距挑战,提升测距精度至5%以内。特别适合机器人导航、自动驾驶和VR领域的开发者参考。

weixin_27298377的博客 124

机器学习:支持向量机

支持向量机(Support Vector Machine)是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的广义线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。假设两类数据可以被H=x:wTx+b≥cH = {x:w^Tx + b \ge c}H=x:wTx+b≥c分离,垂直于法向量www,移动HHH直到碰到某个训练点,可以得到两个超平面H1H_1H1​和H2H_2H2​,两个平面称为支撑超平面,题目分别支撑两类数据。而位于H1H_1H1​和H2H_2H2​正中间的超平面

田乐蒙的博客 2862

AD9914数字斜坡模式使用

类似的,如果DRG输出处于负斜率斜坡中间,DRCTL引脚由逻辑0变为逻辑1,那么DRG会立即切换成正斜率参数,恢复在两个限值之间振荡输出。当两个非驻留位同时设置时,每次DRG输出达到编程设定的上限值或下限值后(假定DRG过输出使能位(0x01[13])已设置),DROVER信号会产生一个正脉冲(两个DDS时钟周期)。不过,在非驻留操作中,DRG输出不一定保持在上下限值。例如,设置数字斜坡非驻留高位,则当达到上限值时,DRG会自动(立即)跳到下限值(这一过程并非以斜坡方式返回下限值,而是直接跳至下限值)。

wangjie36的博客 3864

机器学习——支持向量机(SVM)

SVM 核心:最大化间隔的超平面,支持核方法处理非线性。关键参数:正则化参数 C。核函数类型(RBF/线性/多项式)。RBF 核的 γ。适用场景:中小规模高维数据(如文本分类、图像识别)。需强泛化能力的分类任务。

oioooooi的博客 1173

FastAPI 高级特性:同异步路由函数、依赖注入与后台任务

在现代 Web 开发中,高效的性能和简洁的代码结构是至关重要的。FastAPI 作为一个现代、快速(高性能)的 Web 框架,凭借其对异步编程的原生支持和直观的依赖注入系统,迅速成为开发者的热门选择。在本文中,将深入探讨 `FastAPI` 中的几个核心概念:同异步函数的区别、`Depends` 依赖以及后台任务。

qq_43629857的博客 203

万字长文:YOLOv5+RK3588 NPU多线程加速全攻略——从理论到部署的终极优化

RK3588 NPU多线程加速优化教程摘要 本教程深入讲解了如何利用线程池技术优化RK3588 NPU上的YOLO目标检测模型推理性能。RK3588内置3个NPU核心,理论算力达6TOPS,为多线程优化提供了硬件基础。教程详细解析了线程池的核心组件(任务队列、工作线程、同步机制)和实现架构,包括类设计、初始化流程、工作线程逻辑(任务获取、NPU推理、结果存储三个阶段)以及任务提交/获取机制。通过预分配模型实例、线程绑定、流量控制等优化手段,实现了从单线程28FPS到多线程120FPS的显著性能提升,为边缘A

LXY_LOVE36的博客 1101

机器学习3—分类算法之支持向量机(Support Vector Machine,SVM)算法

SVM算法分析的六个步骤第一步,加载数据集。采用loadtxt()函数加 - 载酒类数据集,采用逗号(,)分割。第二步,划分数据集。将Wine数据集划分为训练集和预测集,仅提取酒类13个特种中的两列特征进行数据分析。第三步,SVM训练。导入Sklearn机器学习包中svm.SVC()函数分析,调用fit()函数训练模型,predict(test_data)函数预测分类结果。第四步,评价算法。...

ex_6450的博客 3944

ROS机器人未知环境自主探索功能包explore_lite最全源码详细解析(二)

本系列文章主要针对ROS机器人常使用的未知环境自主探索功能包explore_lite展开全源码的详细解析,并进行概括总结。 本系列文章共包含六篇文章,前五篇文章主要介绍explore_lite功能包中 explore.cpp、costmap_tools.h、frontier_search.cpp、costmap_client.cpp等源码实现文件中全部函数的详细介绍,第六篇文章进行概括总结,包含自主探索功能包explore_lite的简介,实现未知环境自主探索功能的原理及流程总结,效果演示,使用功能包exp

慕羽★的博客 1648

数据挖掘十大经典算法(包括各自优缺点 / 适用数据场景)

本文主要分析皆来自其他资料,借用较为权威的总结来对我已经学习的这些经典算法做一个极为精简的概述(根据自身经验有一定修改),另外同时附上机器学习实战中作者对各种算法的评价。另外机器学习实战这本书是本人看了这么多书籍或者资料中唯一一本坚持从头看到尾,看完了的书籍,包括其中的代码皆实践运行过,收获颇多,个人认为虽然这本书时间上已经算是老资料了,但其中作者的各种总结和代码的演练都由浅入深(前提还是要有一点...

昆兰.沃斯 的博客 16万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

【1】机器学习实战peter Harrington——学习笔记

机器学习实战——学习记录

guansheng123的博客 2548

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

数据挖掘十大经典算法

转载自:https://blog.youkuaiyun.com/qq_36523839/article/details/82383597 本文主要分析皆来自其他资料,借用较为权威的总结来对我已经学习的这些经典算法做一个极为精简的概述(根据自身经验有一定修改),另外同时附上机器学习实战中作者对各种算法的评价。另外机器学习实战这本书是本人看了这么多书籍或者资料中唯一一本坚持从头看到尾,看完了的书籍,包括其中的代...

床前明月光 211

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

lasso最小角_机器学习十大算法系列,梯度下降(Gradient Descent)小结,最小二乘法小结,Lasso回归算法: 坐标轴下降法与最小角回归法小结,支持向量机原理(一) 线性支持向量机 -...

1.线性回归 (Linear Regression)2.逻辑回归 (Logistic Regression)3.决策树 (Decision Tree)4.支持向量机(SVM)5.朴素贝叶斯 (Naive Bayes)6.K邻近算法(KNN)7.K-均值算法(K-means)8.随机森林 (Random Forest)9.降低维度算法(Dimensionality Reduction Algorit...

weixin_39866963的博客 283

【机器学习】十大算法之一 “SVM”

支持向量机(Support Vector Machine,SVM)是机器学习十大算法之一,是一种二分类模型。SVM将实例空间映射到一个高维空间,将空间进行线性划分,同时使得分类面到两端最近的数据点的距离(margin)最大化,因此SVM也被称为最大间隔分类器(Maximal Margin Classifier)。SVM是由Vapnik和Cortes于1995年提出的,是一种广泛应用的机器学习算法,具有很好的泛化能力和鲁棒性。SVM是一种非常有用的算法,它在分类和回归问题中都表现出色。

Code_and516的博客 5033

十大机器学习算法

初学者应该知道的十大机器学习算法 来源:https://builtin.com/data-science/tour-top-10-algorithms-machine-learning-newbies 机器学习算法被描述为学习一个目标函数 (f),它最好地将输入变量 (X) 映射到输出变量 (Y):Y = f(X) 最常见的机器学习类型是学习映射 Y = f(X) 以针对新 X 预测 Y。这称为预测建模或预测分析,目标就是要做出最准确的预测。 机器学习算法线性回归逻辑回归线性判别分析分类和回归树朴素贝叶

qq_39783601的博客 3万+

【Machine Learning系列】带你快速学习十大机器学习算法

机器学习算法的学习是一个长期的过程,需要不断地练习和实践才能够掌握。通过坚持不懈地学习和实践,你将能够快速掌握机器学习算法并应用于实际问题中。

陈橘又青的博客 1万+

机器学习十大经典算法

机器学习算法是计算机科学和人工智能领域的关键组成部分,它们用于从数据中学习模式并作出预测或做出决策。本文将为大家介绍十大经典机器学习算法,其中包括了线性回归、逻辑回归、支持向量机、朴素贝叶斯、决策树等算法,每种算法都在特定的领域发挥着巨大的价值。

十年以上架构设计经验,专注于软件架构和人工智能领域,对机器视觉、NLP、音视频等领域都有涉猎 1万+

机器学习十大算法实现python代码汇总

机器学习十大算法实现python代码汇总

qq_43115961的博客 1万+

【机器学习】12.十大算法之一支持向量机(SVM - Support Vector Machine)算法原理讲解

支持向量机(SVM)是一种高效的监督学习算法,广泛应用于分类和回归问题。它通过在特征空间中寻找一个最优的超平面来区分不同类别的数据点,目标是最大化两类数据点之间的间隔,从而提高模型的泛化能力。SVM的关键概念包括超平面、间隔、支持向量以及核函数,其中核函数允许SVM处理非线性问题,通过将数据映射到更高维的空间来寻找线性可分的超平面。此外,软间隔和正则化技术用于处理数据的非完全线性可分性,同时控制模型复杂度,防止过拟合。

weixin_50804299的博客 3544
上一篇: Correlation Filter Object Tracking入门简介
下一篇: 十大机器学习算法之支持向量机(二)
小小菜鸟一只
博客等级 码龄14年 610粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值