《近似线性可分支持向量机的原理推导》 拉格朗日函数 公式解析
本文是将文章《近似线性可分支持向量机的原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。
公式 9-41 解释:
L ( w , b , ξ , α , μ ) = 1 2 ∥ w ∥ 2 + C ∑ i = 1 N ξ i − ∑ i = 1 N α i ( y i ( w T x i + b ) − ( 1 − ξ i ) ) − ∑ i = 1 N μ i ξ i L(w, b, \xi, \alpha, \mu) = \frac{1}{2} \|w\|^2 + C \sum_{i=1}^{N} \xi_i - \sum_{i=1}^{N} \alpha_i \left( y_i(w^T x_i + b) - (1 - \xi_i) \right) - \sum_{i=1}^{N} \mu_i \xi_i L(w,b,ξ,α,μ)=21∥w∥2+Ci=1∑Nξi−i=1∑Nαi(yi(wTxi+b)−(1−ξi))−i=1∑Nμiξi
公式 9-41 是 近似线性可分支持向量机(SVM) 的 拉格朗日函数。该公式用于将原始的优化问题(如公式 9-39)转化为一个带有拉格朗日乘子约束的优化问题,从而可以使用对偶问题的方法进行求解。
1. 公式的背景:
在支持向量机的优化过程中,我们通常会遇到约束优化问题。在这种情况下,拉格朗日函数是一种非常有效的工具,它允许我们将约束条件和目标函数结合在一起。通过引入拉格朗日乘子,可以将一个约束优化问题转化为无约束的优化问题,然后可以通过求解这个拉格朗日函数的极值来获得最优解。
2. 公式的组成部分:
公式 9-41 将原始目标函数和约束条件结合起来。它包含以下几项:
(1) 目标函数部分:
1 2 ∥ w ∥ 2 + C ∑ i = 1 N ξ i \frac{1}{2} \|w\|^2 + C \sum_{i=1}^{N} \xi_i 21∥w∥2+Ci=1∑Nξi
这一部分是原始优化问题的目标函数:
- 1 2 ∥ w ∥ 2 \frac{1}{2} \|w\|^2 21∥w∥2:这一项表示支持向量机的最大分类间隔。最小化 ∥ w ∥ 2 \|w\|^2 ∥w∥2 可以找到一个使分类间隔最大化的超平面。
- C ∑ i = 1 N ξ i C \sum_{i=1}^{N} \xi_i C∑i=1Nξi:这一项表示误分类惩罚的总和。通过最小化松弛变量 ξ i \xi_i ξi 的总和,我们可以控制允许的误分类样本数量。参数 C C C 是惩罚系数,它控制模型对误分类的容忍度。
(2) 第一个约束条件部分:
− ∑ i = 1 N α i ( y i ( w T x i + b ) − ( 1 − ξ i ) ) -\sum_{i=1}^{N} \alpha_i \left( y_i(w^T x_i + b) - (1 - \xi_i) \right) −i=1∑Nαi(yi(wTxi+b)−(1−ξi))
这一部分是将第一个约束条件 y i ( w T x i + b ) ≥ 1 − ξ i y_i(w^T x_i + b) \geq 1 - \xi_i yi(wTxi+b)≥1−ξi 融入拉格朗日函数中的表示:
- α i \alpha_i αi:这是拉格朗日乘子,它的作用是将约束条件与目标函数结合起来。对于每个样本 i i i,都有一个对应的 α i \alpha_i αi,它反映了该样本对模型的贡献。若 α i = 0 \alpha_i = 0 αi=0,说明该样本不会影响模型;若 α i > 0 \alpha_i > 0 αi>0,说明该样本是支持向量,影响模型的决策边界。
- y i ( w T x i + b ) y_i(w^T x_i + b) yi(wTxi+b):这是分类函数的输出,表示样本 x i x_i xi 与超平面的距离。
- ( 1 − ξ i ) (1 - \xi_i) (1−ξi):这是原始约束中的右边部分。通过减去 ( 1 − ξ i ) (1 - \xi_i) (1−ξi),我们可以使约束条件成立,即分类结果与软间隔条件匹配。
(3) 第二个约束条件部分:
− ∑ i = 1 N μ i ξ i -\sum_{i=1}^{N} \mu_i \xi_i −i=1∑Nμiξi
这一项是对松弛变量 ξ i ≥ 0 \xi_i \geq 0 ξi≥0 的约束条件引入的拉格朗日乘子表示:
- μ i \mu_i μi:这是另一个拉格朗日乘子,用于确保松弛变量 ξ i \xi_i ξi 大于等于 0(即 ξ i ≥ 0 \xi_i \geq 0 ξi≥0)。每个样本 i i i 都有一个对应的 μ i \mu_i μi,如果 ξ i = 0 \xi_i = 0 ξi=0,则 μ i ≥ 0 \mu_i \geq 0 μi≥0。
3. 拉格朗日函数的直观解释:
拉格朗日函数通过引入拉格朗日乘子( α i \alpha_i αi 和 μ i \mu_i μi),将原始的优化问题及其约束条件结合在一起。通过优化这个拉格朗日函数,我们可以同时考虑:
- 目标函数:最大化分类间隔并最小化误分类数量。
- 约束条件:使每个样本 x i x_i xi 尽量满足 y i ( w T x i + b ) ≥ 1 − ξ i y_i(w^T x_i + b) \geq 1 - \xi_i yi(wTxi+b)≥1−ξi,并且松弛变量 ξ i ≥ 0 \xi_i \geq 0 ξi≥0。
4. 公式中的各部分解释:
(1) 第一部分 1 2 ∥ w ∥ 2 \frac{1}{2} \|w\|^2 21∥w∥2:
这一部分代表支持向量机的目标,即最大化分类间隔。最小化这一项可以使得分类超平面与数据点之间的间隔最大化。
(2) 第二部分 C ∑ i = 1 N ξ i C \sum_{i=1}^{N} \xi_i C∑i=1Nξi:
这一部分代表了对误分类样本的惩罚。通过引入松弛变量 ξ i \xi_i ξi,我们允许某些样本违反分类间隔条件,但我们希望通过最小化这一项来减少这些误分类样本的数量。
(3) 第三部分 ∑ i = 1 N α i ( y i ( w T x i + b ) − ( 1 − ξ i ) ) \sum_{i=1}^{N} \alpha_i \left( y_i(w^T x_i + b) - (1 - \xi_i) \right) ∑i=1Nαi(yi(wTxi+b)−(1−ξi)):
这一部分是将原始的分类约束条件引入拉格朗日函数中。通过引入拉格朗日乘子 α i \alpha_i αi,我们可以确保每个样本的分类结果尽量满足 y i ( w T x i + b ) ≥ 1 − ξ i y_i(w^T x_i + b) \geq 1 - \xi_i yi(wTxi+b)≥1−ξi 的约束。
(4) 第四部分 ∑ i = 1 N μ i ξ i \sum_{i=1}^{N} \mu_i \xi_i ∑i=1Nμiξi:
这一部分引入了松弛变量 ξ i ≥ 0 \xi_i \geq 0 ξi≥0 的约束。通过引入拉格朗日乘子 μ i \mu_i μi,我们可以确保每个松弛变量 ξ i \xi_i ξi 都是非负的。
5. 优化过程:
为了找到最优解,我们需要对拉格朗日函数 L ( w , b , ξ , α , μ ) L(w, b, \xi, \alpha, \mu) L(w,b,ξ,α,μ) 进行求解。具体过程如下:
- 求对 w w w、 b b b、和 ξ i \xi_i ξi 的偏导数:这将帮助我们找到最优的 w w w、 b b b 和 ξ i \xi_i ξi,使得拉格朗日函数对这些变量达到极值。
- 对 α i \alpha_i αi 进行优化:通过优化 α i \alpha_i αi,我们可以找到支持向量机的对偶问题。
- 最终求解对偶问题:通过求解对偶问题,找到最优的支持向量并确定分类超平面的位置和形状。
6. 总结:
公式 9-41 是支持向量机的拉格朗日函数,通过引入拉格朗日乘子 α i \alpha_i αi 和 μ i \mu_i μi,将原始问题的目标函数和约束条件结合在一起。拉格朗日函数的优化过程使得我们能够有效地解决带有约束的优化问题,从而找到最优的分类超平面。
相关文章:
《近似线性可分支持向量机的原理推导》 拉格朗日函数 公式解析
本文是将文章《近似线性可分支持向量机的原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。 公式 9-41 解释: L ( w , b , ξ , α , μ ) 1 2 ∥ w ∥ 2 C ∑ i 1 N ξ i − ∑ i 1 N α i ( y i ( w T x i b ) − ( 1 − ξ …...
9.指针和字符串string类型
指针和字符串string类型 1.指针2.字符串string类型 1.指针 C完全兼容C语言指针,C多出一个this指针 交换两数 #include <iostream>using namespace std;void swap(int *a,int *b){int temp;temp *a;*a *b;*b temp; }int main() {//交换前int a 50;int b …...
八,Linux基础环境搭建(CentOS7)- 安装Mysql和Hive
Linux基础环境搭建(CentOS7)- 安装Mysql和Hive 大家注意以下的环境搭建版本号,如果版本不匹配有可能出现问题! 一、Mysql下载及安装 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Orac…...
海量数据面试题
⭐️前言⭐️ 本篇文章主要针对在面试时可能涉及到的海量数据的面试题,该类型面试题常常考虑通过位图、布隆过滤器或者哈希的方式来解决。 🍉欢迎点赞 👍 收藏 ⭐留言评论 🍉博主将持续更新学习记录收获,友友们有任何…...
基于SSM积分商城管理系统的设计与实现(源码+lw+部署文档+讲解等)
前言 伴随着基础网络设施的不断进步和终端电子设备的高度普及,互联网用户规模越来越大。现在人们越来越离不开计算机网络、互联网所带来的好处了,现如今不同的网站系统遍地都是,现在已经不同于以往的传统的管理方式了,只有跟上时代…...
MLP预售开启,革新去中心化通信生态:智能手机与AI Agent齐上阵
2024年10月22日,Matrix Layer Protocol(MLP)宣布其备受期待的第一期产品正式进入预售阶段。随着Web3世界的不断发展,去中心化技术已经深入到我们日常生活的方方面面。作为Web3世界中炙手可热的创新项目,Matrix Layer P…...
js获取浏览器指纹
Canvas指纹法 来源:https://www.cnblogs.com/leijing0607/p/8044218.html 从根本上来说,每一种浏览器都会使用不同的图像处理引擎,不同的导出选项,不同的压缩等级,所以每一台电脑绘制出的图形都会有些许不同…...
乐尚代驾的项目问题
订单状态如果在流转的过程中卡住了,怎么办? 卡住的原因有可能是: 网络问题 网络不稳定或中断可能导致订单状态更新的请求无法及时发送或接收。例如,司机端在更新代驾车辆信息时,如果网络出现故障,可能无法…...
uniapp app.onshow 和 onMounted一样用吗
在uni-app中,onShow和onMounted并不完全相同,它们分别属于应用生命周期和组件生命周期。 应用生命周期中的onShow 在uni-app中,onShow是应用生命周期的一部分,它会在应用启动或从后台进入前台时触发。这意味着它不仅仅局限于页…...
基于Mysql、JavaScript、PHP、ajax开发的MBTI性格测试网站(前端+后端)
源码地址:https://download.csdn.net/download/2302_79553009/89933699 项目简介 本项目旨在构建一个基于MBTI(迈尔斯-布里格斯性格分类指标)理论的在线平台——“16Personalities”。该平台利用PHP、MySQL、JavaScript等技术栈开发…...
【问题解决】连接mysql时报错caching_sha2_password can not load
一, 问题 在连接Mysql时报错, caching_sha2_password can not load 二,问题原因 报错信息 "caching_sha2_password can not load" 通常出现在尝试连接到使用 MySQL 8.0 或更高版本的数据库时,因为从 MySQL 8.0 开始&a…...
【瑞吉外卖】-day01
目录 前言 第一天项目启动 获取资料 创建项目 编辑 连接本地数据库 连接数据库 修改用户名和密码 编辑创建表 创建启动类来进行测试 导入前端页面 创建项目所需目录 检查登录功能 登录界面 登录成功 登录失败 代码 退出功能 易错点 前言 尝试一下企业级项…...
钉钉与金蝶云星空数据集成:提高企业付款申请单处理效率
钉钉数据集成到金蝶云星空:付款申请单的自动下推生成 在企业日常运营中,如何高效地管理和处理付款申请单是一个关键问题。为了提升这一流程的效率,我们采用了轻易云数据集成平台,将钉钉中的付款申请单数据无缝对接到金蝶云星空系…...
GIT使用list
清空当前commit区 方法 1:软重置到初始状态 如果希望保留文件内容,但清空所有 commit 历史,可以使用以下命令: git reset --soft $(git rev-list --max-parents0 HEAD)解释: --soft 表示重置 commit 历史ÿ…...
JavaSE:数组深入学习与复习
学习参考 1、可变参数传递 数组可以是int等基本数据类型,也可以是String等引用类型 package com.test;public class Main {public static void main(String [] args){int [] a {1,2,3,4,5};test(78,90,12,34,56,78,90,12,34,56,78);}public static void test(i…...
Redis 事务 总结
前言 相关系列 《Redis & 目录》(持续更新)《Redis & 事务 & 源码》(学习过程/多有漏误/仅作参考/不再更新)《Redis & 事务 & 总结》(学习总结/最新最准/持续更新)《Redis & 事务…...
go sdk的安装或者升级
背景 由于 go 语言的官方sdk还在不断的更新迭代中,有的时候相对应的生态相关的依赖包也在不断的升级,如果很长一段时间不升级自己的本地的go sdk 那么就有可能在拉取代码的时候出现错误,因此有的时候可能需要我们适当的升级下自己的sdk&…...
mongo实操笔记
这个链接我用了其在Windows下的下载安装 是可以的 ,不过我太懒了,没有弄成自启动 Windows安装MongoDB_mongodb windows安装-CSDN博客 下面这个链接就更好了,我用了其与springboot整合的测试。可以直接操作mongodb了。 SpringBoot整合Mongo…...
前端算法:树(力扣144、94、145、100、104题)
目录 一、树(Tree) 1.介绍 2.特点 3.基本术语 4.种类 二、树之操作 1.遍历 前序遍历(Pre-order Traversal):访问根节点 -> 遍历左子树 -> 遍历右子树。 中序遍历(In-order Traversal…...
深度学习速通系列:如何使用bert进行超长中文文本命名实体识别
要将超长中文文本按最大 BERT 输入长度进行分割,并使用 bert-chinese-ner 模型进行命名实体识别,可以遵循以下步骤。以下是一个 Python 代码示例,利用 Hugging Face 的 transformers 库来实现: 安装必要的库 如果你还没有安装 Hu…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
