当前位置: 首页 > article >正文

机器学习笔记【Week7】

一、SVM的动机:大间隔分类器

1、逻辑回归回顾

  • 假设函数为 sigmoid 函数:
    h θ ( x ) = 1 1 + e − θ T x h_\theta(x) = \frac{1}{1 + e^{-\theta^Tx}} hθ(x)=1+eθTx1

  • 分类依据是 h θ ( x ) ≥ 0.5 h_\theta(x) \geq 0.5 hθ(x)0.5 为正类,反之为负类。

2、SVM 的思路

  • SVM 不采用 sigmoid,而是直接构造优化目标:
    • 最大化间隔(margin):希望分类边界离最近的点尽可能远。
  • 构造代价函数时:
    • 对正类样本 y = 1 y=1 y=1,如果 θ T x ≥ 1 \theta^T x \geq 1 θTx1 则无惩罚,否则惩罚。
    • 对负类样本 y = 0 y=0 y=0,如果 θ T x ≤ − 1 \theta^T x \leq -1 θTx1 则无惩罚,否则惩罚。

二、SVM 的代价函数与优化

1、硬间隔 vs 软间隔

  • 硬间隔(hard margin):
    • 不允许分类错误,适合线性可分的情况。
  • 软间隔(soft margin):
    • 允许一定的错误分类,提升鲁棒性。

2、SVM 的标准形式

目标函数如下:
min ⁡ θ 1 2 ∥ θ ∥ 2 + C ∑ i = 1 m cost ( h θ ( x ( i ) ) , y ( i ) ) \min_{\theta} \frac{1}{2} \|\theta\|^2 + C \sum_{i=1}^{m} \text{cost}(h_\theta(x^{(i)}), y^{(i)}) θmin21θ2+Ci=1mcost(hθ(x(i)),y(i))
其中:

  • ∣ ∣ θ ∥ 2 ||\theta\|^2 ∣∣θ2 控制模型复杂度(间隔)。
  • C C C 控制对错误分类的惩罚程度。
  • cost ( ⋅ ) \text{cost}(\cdot) cost() 是 hinge loss。

三、支持向量与最大间隔的直观理解

  • 训练集中距离分类边界最近的点称为支持向量,它们决定了最终的分类超平面。
  • 最大化间隔等价于最小化 ∣ ∣ θ ∥ 2 ||\theta\|^2 ∣∣θ2

四、核函数(Kernel Function)

1、核函数的作用

  • 核函数可将输入数据映射到更高维空间,在高维空间中实现线性可分。
  • 避免显式计算高维特征,用核技巧计算内积。

2、常见核函数

  • 线性核(Linear Kernel):
    K ( x , z ) = x T z K(x, z) = x^T z K(x,z)=xTz

  • 多项式核(Polynomial Kernel):
    K ( x , z ) = ( x T z + c ) d K(x, z) = (x^T z + c)^d K(x,z)=(xTz+c)d

  • 高斯核 / RBF(Radial Basis Function):
    K ( x , z ) = exp ⁡ ( − ∥ x − z ∥ 2 2 σ 2 ) K(x, z) = \exp\left(-\frac{\|x - z\|^2}{2\sigma^2}\right) K(x,z)=exp(2σ2xz2)

3、高斯核的参数选择

  • σ(或 γ)控制分布宽度:
    • σ 小 → 拟合更 “尖锐”,可能过拟合。
    • σ 大 → 拟合更平滑,可能欠拟合。

五、SVM 的使用建议

1、特征缩放

  • 特征归一化非常重要,尤其在使用核函数时,避免某些维度主导距离计算。

2、SVM 的优点

  • 通常表现优于逻辑回归,尤其在特征维度高、样本数较少的场景。
  • 在文本分类、图像识别中表现优异。

3、与其他模型的对比

特点逻辑回归支持向量机
分类边界最大似然最大间隔
可扩展到核函数较难支持各种核函数
参数解释性较强较弱
小样本泛化能力一般

六、SVM 的训练与实现

1、训练库推荐

  • 推荐使用现有库如:
    • LIBSVM:C++ 实现,接口广泛。
    • Scikit-learn 中的 sklearn.svm.SVC
    • MATLAB/Octave 中也有内建支持。

2、超参数调优建议

  • 交叉验证选取最佳的:
    • 惩罚参数 C。
    • 核函数参数(如 σ)。

相关文章:

机器学习笔记【Week7】

一、SVM的动机:大间隔分类器 1、逻辑回归回顾 假设函数为 sigmoid 函数: h θ ( x ) 1 1 e − θ T x h_\theta(x) \frac{1}{1 e^{-\theta^Tx}} hθ​(x)1e−θTx1​ 分类依据是 h θ ( x ) ≥ 0.5 h_\theta(x) \geq 0.5 hθ​(x)≥0.5 为正类&a…...

LSM Tree算法原理

LSM Tree(Log-Structured Merge Tree)是一种针对写密集型场景优化的数据结构,广泛应用于LevelDB、RocksDB等数据库引擎中。其核心原理如下: ‌1. 写入优化:顺序写代替随机写‌ ‌内存缓冲(MemTable)‌:写入操作首先被写入内存中的数据结构(如跳表或平衡树),…...

智能推荐系统:协同过滤与深度学习结合

智能推荐系统:协同过滤与深度学习结合 系统化学习人工智能网站(收藏):https://www.captainbed.cn/flu 文章目录 智能推荐系统:协同过滤与深度学习结合摘要引言技术原理对比1. 协同过滤算法:基于相似性的推…...

文档处理组件Aspose.Words 25.5全新发布 :六大新功能与性能深度优化

在数字化办公日益普及的今天,文档处理的效率与质量直接影响到企业的运营效率。Aspose.Words 作为业界领先的文档处理控件,其最新发布的 25.5 版本带来了六大新功能和多项性能优化,旨在为开发者和企业用户提供更强大、高效的文档处理能力。 六…...

固态继电器与驱动隔离器:电力系统的守护者

在电力系统中, 固态继电器合驱动隔离器像两位“电力守护神”,默默地确保电力设备的安全与稳定运行。它们通过高效、可靠的性能,保障了电力设备在各种环境下的正常工作。 固态继电器是电力控制中的关键组成部分,利用半导体器件来实…...

uni-app 如何实现选择和上传非图像、视频文件?

在 uni-app 中实现选择和上传非图像、视频文件,可根据不同端(App、H5、小程序)的特点,采用以下方法: 一、通用思路(多端适配优先推荐) 借助 uni.chooseFile 选择文件,再用 uni.upl…...

区块链架构深度解析:从 Genesis Block 到 Layer 2

# 区块链架构深度解析:从 Genesis Block 到 Layer 2 目录 一、Genesis Block:区块链的起点 二、Layer 0:区块链的底层网络架构 三、Layer 1:核心协议层 🚀 四、Layer 2:扩展性解决方案 五、未来展望&a…...

【数据分析】基于adonis2与pairwise.adonis2的群组差异分析教程

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理adonis分析pairwise.adonis2分析总结系统信息介绍 本教程主要用于执行和分析基于距离矩阵的多样性和群落结构分析,特别是通过adonis2和pairwi…...

使用pdm+uv替换poetry

用了好几年poetry了,各方面都还挺满意,就是lock实在太慢; 已经试用pdmuv一段时间了,确实是快,也基本能覆盖poetry的功能。 至于为什么用pdmuv,而不是只用uv,原因很多,有兴趣的可以…...

Nginx + Tomcat负载均衡群集

目录 一、案例环境 二、部署 Tomcat(102/103) 1、准备环境 (1)关闭firewalld 防火墙 (2)安装JDK 2、安装配置 Tomcat (1)Tomcat 的安装和配置 (2)移动…...

嵌入式开发之STM32学习笔记day22

STM32F103C8T6 FLASH闪存 1 FLASH简介 STM32F1系列微控制器的FLASH存储器是一种非易失性存储器,它在微控制器中扮演着至关重要的角色。以下是对STM32F1系列FLASH存储器及其相关编程方式的扩展说明: 【FLASH存储器的组成部分】 程序存储器:这…...

分词算法BBPE详解和Qwen的应用

一、TL;DR BPE有什么问题:依旧会遇到OOV问题,并且中文、日文这些大词汇表模型容易出现训练中未出现过的字符Byte-level BPE怎么解决:与BPE一样是高频字节进行合并,但BBPE是以UTF-8编码UTF-8编码字节序列而非字符序列B…...

关于ETL的BackgroundScheduler同步方案和misfire_grace_time

如果做ETL避免脏数据,那么不可以允许同一个job有并行允许的情况,也就是说max_instance参数始终设置成1。 这时候执行ETL任务,会有以下情况。 1 任务不超时。正常执行 2 任务超时。如果下一个时间点上一次任务还没有执行完,那么…...

多线程下使用缓存+锁Lock, 出现“锁失效” + “缓存未命中竞争”的缓存击穿情况,双重检查缓存解决问题

多线程情况下,想通过缓存同步锁的机制去避免多次重复处理逻辑,尤其是I/0操作,但是在实际的操作过程中发现多次访问的日志 2025-06-05 17:30:27.683 [ForkJoinPool.commonPool-worker-3] INFO Rule - [vagueNameMilvusReacll,285] - embeddin…...

Playwright 测试框架 - .NET

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】...

命令行以TLS/SSL显式加密方式访问FTP服务器

昨天留了一个小尾巴~~就是在命令行或者代码调用命令,以TLS/SSL显式加密方式,访问FTP服务器,上传和下载文件。 有小伙伴可能说ftp命令不可以吗?不可以哦~~ ftp 命令本身不支持显式加密。要实现 FTP 的显式加密,可以使…...

Mac 双系统

准备——Windows10 ISO文件下载 下载地址:https://msdn.itellyou.cn 操作系统 Win10-1903镜像 复制链接迅雷下载 第一步——查看系统磁盘剩余空间 打开“启动台”找到“其他”文件夹,打开“磁盘工具”(剩余空间要大于40GB) 第二…...

Linux配置yum 时间同步服务 关闭防火墙 关闭ESlinux

1、配置yum 1.1、Could not resolve host: mirrorlist.centos.org; 未知的错误 https://blog.csdn.net/fansfi/article/details/146369946?fromshareblogdetail&sharetypeblogdetail&sharerId146369946&sharereferPC&sharesourceRockandrollman&sharefr…...

SpringBoot 系列之集成 RabbitMQ 实现高效流量控制

系列博客专栏: JVM系列博客专栏SpringBoot系列博客 Spring Boot 2.2.1 集成 RabbitMQ 实现高效流量控制 在分布式系统中,消息队列是实现异步通信、解耦服务的重要组件。RabbitMQ 作为一款成熟的开源消息队列,广泛应用于各类项目中。本文将…...

LLaMA-Factory和python版本的兼容性问题解决

引言 笔者今天在电脑上安装下LLaMA-Factory做下本地的模型调优。 从github上拉取代码git clone https://github.com/hiyouga/LLaMA-Factory.git. pycharm建立工程,按照官网指导如下: LLaMA-Factory 安装 在安装 LLaMA-Factory 之前,请确保您安装了下列依赖: 运行以…...

掌握子网划分:优化IP分配与管理

子网划分是通过调整子网掩码,将单一IP网络划分为多个逻辑子网的过程,其核心原理是借用主机位作为子网位以优化地址分配和管理。具体方法与原理如下: 一、子网划分基本原理 核心目的: 减少IP浪费:避免大块地址闲置&…...

Linux中shell编程表达式和数组讲解

一、表达式 1.1 测试表达式 样式1: test 条件表达式 样式2: [ 条件表达式 ] 注意:以上两种方法的作用完全一样,后者为常用。但后者需要注意方括号[、]与条件表达式之间至少有一个空格。test跟 [] 的意思一样条件成立,状态返回值是0条件不成…...

每日算法-250605

每日算法 - 20240605 525. 连续数组 题目描述 给定一个二进制数组 nums , 找到含有相同数量的 0 和 1 的最长连续子数组,并返回该子数组的长度。 思路 前缀和 哈希表 解题过程 核心思想是将问题巧妙地转换为寻找和为特定值的子数组问题。 转换问题:我…...

分布式锁-Redisson实现

目录 本地锁的局限性 Redisson解决分布式锁问题 在分布式环境下,分布式锁可以保证在多个节点上的并发操作时数据的一致性和互斥性。分布式锁有多种实现方案,最常用的两种方案是:zookeeper和redis,本文介绍redis实现分布式锁方案…...

HTTP 请求协议简单介绍

目录 常见的 HTTP 响应头字段 Java 示例代码:发送 HTTP 请求并处理响应 代码解释: 运行结果: 文件名: 总结: HTTP(HyperText Transfer Protocol)是用于客户端与服务器之间通信的协议。它定…...

C++学习-入门到精通【14】标准库算法

C学习-入门到精通【14】标准库算法 目录 C学习-入门到精通【14】标准库算法一、对迭代器的最低要求迭代器无效 二、算法1.fill、fill_n、generate和generate_n2.equal、mismatch和lexicographical_compare3.remove、remove_if、remove_copy和remove_copy_if4.replace、replace_…...

银行用户评分规则 深度学习

思考模型的实际应用场景。用户的核心疑问在于:在银行真实的评级系统中,基于规则的评级和基于模型的预测评级哪个更有价值?ta担心自己写的代码只是学术练习而没有实际意义。 从用户提到的银行评级规则来看(AAAA到E的划分&#xff…...

HarmonyOS运动语音开发:如何让运动开始时的语音播报更温暖

##鸿蒙核心技术##运动开发##Core Speech Kit(基础语音服务)# 前言 在运动类应用中,语音播报功能不仅可以提升用户体验,还能让运动过程更加生动有趣。想象一下,当你准备开始运动时,一个温暖的声音提醒你“…...

# 从底层架构到应用实践:为何部分大模型在越狱攻击下失守?

从底层架构到应用实践:为何部分大模型在越狱攻击下失守? 引言 近期,我们对多个主流大语言模型(LLM)进行了安全性测试,使用了极具诱导性的越狱提示词,试图绕过其内容安全机制。测试结果显示&am…...

vscode使用系列之快速生成html模板

一.欢迎来到我的酒馆 vscode,yyds! 目录 一.欢迎来到我的酒馆二.vscode下载安装1.关于vscode你需要知道2.开始下载安装 三.vscode快速创建html模板 二.vscode下载安装 1.关于vscode你需要知道 Q:为什么使用vscode? A:使用vscode写…...