【机器学习笔记】11 支持向量机

支 持 向 量 机 ( Support Vector Machine,SVM )

支 持 向 量 机 是 一 类 按 监 督 学 习 ( supervisedlearning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane) 。与逻辑回归和神经网络相比,支持向量机,在学习复杂的非线性方程时提供了一种更为清晰,更加强大的方式。

  • 算法思想
    找到集合边缘上的若干数据(称为支持向量(Support Vector)),用这些点找出一个平面(称为决策面),使得支持向量到该平面的距离最大。
    在这里插入图片描述
    假如数据是完全的线性可分的,那么学习到的模型可以称为硬间隔支持向量机。换个说法,硬间隔指的就是完全分类准确,不能存在分类错误的情况。软间隔,就是允许一定量的样本分类错误。
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

线性可分支持向量机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

线性支持向量机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

线性不可分支持向量机

核技巧

在低维空间计算获得高维空间的计算结果,满足高维,才能在高维下线性可分。 我们需要引入一个新的概念:核函数。它可以将样本从原始空间映射到一个更高维的特质空间中,使得样本在新的空间中线性可分。这样我们就可以使用原来的推导来进行计算,只是所有的推导是在新的空间,而不是在原来的空间中进行,即用核函数来替换当中的内积。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

SVM的超参数

𝛾越大,支持向量越少,𝛾值越小,支持向量越多。其中 C是惩罚系数,即对误差的宽容度。 C越高,说明越不能容忍出现误差,容易过拟合。C越小,容易欠拟合。
在这里插入图片描述

SVM普遍使用的准则:

𝑛为特征数,𝑚为训练样本数。
(1)如果相较于𝑚而言,𝑛要大许多,即训练集数据量不够支持我们训练一个复杂的非线性模型,我们选用逻辑回归模型或者不带核函数的支持向量机。
(2)如果𝑛较小,而且𝑚大小中等,例如𝑛在 1-1000 之间,而𝑚在10-10000之间,使用高斯核函数的支持向量机。
(3)如果𝑛较小,而𝑚较大,例如𝑛在1-1000之间,而𝑚大于50000,则使用支持向量机会非常慢,解决方案是创造、增加更多的特征,然后使用逻辑回归或不带核函数的支持向量机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#安装CommunityToolkit.Mvvm依赖

这里需要有一定C#基础, 首先找到右边的解决方案,右键依赖项 然后选择nuget管理 这里给大家扩展一下nuget的国内源(https://nuget.cdn.azure.cn/v3/index.json) 然后搜自己想要的依赖性,比如CommunityToolkit.Mvvm 再点…

学习Android的第十四天

目录 Android DatePicker 日期选择器 DatePicker 属性 和 事件 DatePicker 事件 获得 DatePicker 的值 Android TimePicker 时间选择器 TimePicker 属性 TimePicker 事件 获得 TimePicker 的值 Android CalendarView 日历视图 CalendarView 属性 CalendarView 事件 …

Linux超详细笔记

文章目录 Linux学习笔记操作系统Linux初识Linux的诞生Linux内核Linux发行版 虚拟机VMware安装远程连接Linux系统FinalShellFinalShell连接Linux WSL配置UbuntuLinux常用命令1.入门2.ls命令cd命令3.pwd命令4.相对路径和绝对路径5.mkdir命令6.文件操作命令(1&#xff…

vue打包优化,webpack的8大配置方案

vue-cli 生成的项目通常集成Webpack ,在打包的时候,需要webpack来做一些事情。这里我们希望它可以压缩代码体积,提高运行效率。 文章目录 (1)代码压缩:(2)图片压缩:&…

[AIGC] Kafka 消费者的实现原理

在 Kafka 中,消费者通过订阅主题来消费数据。每个消费者都属于一个消费者组,消费者组中的多个消费者可以共同消费一个主题,实现分布式消费。每个消费者都会维护自己的偏移量,用于记录已经读取到的消息位置。消费者可以选择手动提交…

17.3.2.9 像素处理与内存处理之比较

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 通过第17.3.2.1节到第17.3.2.8节,相信读者对通过锁定内存来处理图像有了一定认识。与第17.3.1节相比较,可以…

代码随想录day28 Java版

134. 加油站 使用三个变量total、cur和start来记录总剩余油量、当前剩余油量和起始加油站的索引。在遍历加油站数组的过程中,不断更新cur为当前剩余油量,并根据cur的值判断是否需要更换起始加油站。 如果cur小于0,说明从当前起点到当前加油…

课时34:脚本交互_基础知识_子shell基础

2.1.2 子shell基础 学习目标 这一节,我们从 基础知识、简单实践、小结 三个方面来学习。 基础知识 场景 之前我们对于环境变量在多个shell环境中的应用进行了学习,那种操作量比较大。对于一些临时性的场景,我们在临时性的环境中&#xff…

程序的控制结构详解

程序的控制结构 结构化程序设计方法的基础 在计算机刚出现的早期,它的价格昂贵、内存很小、速度慢。程序员为了在很小的内存中解决大量的科学计算问题,并为了节省昂贵的CPU机时费,不得不使用巧妙的手段和技术,手工编写各种高效的…

目标检测算法之YOLOv5的应用实例(零售业库存管理、无人机航拍分析、工业自动化领域应用的详解)

1.YOLOv5在"零售业库存管理"领域的应用 在零售业库存管理中,YOLOv5可以帮助自动化商品识别和库存盘点过程。通过使用深度学习模型来实时识别货架上的商品,零售商可以更高效地管理库存,减少人工盘点的时间和成本。以下是一个使用YOLOv5进行商品识别的Python脚本示…

[office] Excel中函数进行计算两个日期参数差值的方法 #职场发展#学习方法#媒体

Excel中函数进行计算两个日期参数差值的方法 在excel使用中,如果想计算两个日期参数的差值,该用什么函数和如何使用呢?今天,小编就教大家在Excel中函数进行计算两个日期参数差值的方法。 Excel中函数进行计算两个日期参数差值的步骤 在excel…

javascript中的prototype;javascript中的原型链

文章目录 深入理解JavaScript原型链1. 什么是原型链?2. 原型链的结构3. 如何访问原型链?4. 示例演示原型链5. 原型链与继承6. 实际应用场景 深入理解JavaScript原型链 1. 什么是原型链? 在JavaScript中,每个对象都有一个原型&am…

【python】网络爬虫与信息提取--正则表达式

一、正则表达式 正则表达式是用来简洁表达一组字符串的表达式。是通用的字符串表达框架,简洁表达一组字符串的表达式,针对字符串表达“简洁”和“特征”思想的工具,判断某字符串的特征归属。 用处:表达文本类型的特征;…

永久禁止windows自动更新方法

文章目录 前言一、打开本地组策略编辑器二、禁用windows更新总结 前言 每次打开电脑,右下角就会弹出设备更新提示,看着令人烦恼,并且更新可能导致电脑设置发生改变甚至是卡顿,所以为了自己方便于是出了禁用电脑更新的办法&#x…

对账中心系统架构设计与实现的实践总结

随着数字化时代的到来,越来越多的企业开始使用对账中心系统来管理其财务交易。对于一个成功的对账中心系统,其架构设计和实现非常关键。本文将探讨对账中心系统架构设计与实现的重要性、关键原则和实施过程中需要考虑的要点,帮助企业构建强大…

Rust枚举类型详解

Rust是一门强类型的系统级编程语言,其枚举类型(enum)是一种强大的数据结构,用于表示一组可能的值。在本文中,我们将深入探讨Rust中枚举类型的使用,并以IpAddr和IpAddr1为例进行介绍。 IpAddr枚举 首先&am…

第13章 网络 Page747~749 asio核心类 ip::tcp::resolver

3, ip::tcp::resolver 如果新浪的IP地址变了,该怎么办呢? ip::tcp::resolver 可以帮我们用上www.sina.com.cn,因为它负责将人类可读的多种网址信息,一步 到位地解析成ip::tcp::socket建立连接所需要的ip::tcp::endpoint结构&…

C语言—函数

1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字29. /*1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字 */#include <stdio.h>//函数定义,返回类型为int int char_num(char c) {if(c > 0 && c < 9) //检查…

SQL32 截取出年龄(substring_index函数的用法)

代码 select substring_index(substring_index(profile,,,3),,,-1) as age ,count(device_id) from user_submit group by age知识点 substring_index(FIELD, sep, n)可以将字段FIELD按照sep分隔&#xff1a; (1).当n大于0时取第n个分隔符(n从1开始)之前的全部内容&#xff1…

关于umi ui图标未显示问题

使用ant design pro 时&#xff0c;安装了umi ui &#xff0c;安装命令&#xff1a; yarn add umijs/preset-ui -D但是启动项目后&#xff0c;发现没有显示umi ui的图标 找了许多解决方案&#xff0c;发现 umi的版本问题&#xff0c;由于我使用的ant design pro官网最新版本&a…