拉格朗日对偶问题的一些介绍

news2024/11/18 11:49:52

文章目录

  • 参考
  • 前言
  • 拉格朗日函数
    • 例1
    • 例2
  • 拉格朗日函数的对偶问题

参考

“拉格朗日对偶问题”如何直观理解?“KKT条件” “Slater条件” “凸优化”打包理解
感觉有时间看视频的还是看视频比较好,本文只是记录一下以防以后忘记。

前言

还记得SVM里用到拉格朗日对偶,将有约束条件转换成无约束条件问题进行最优值求解,其实也只是会用这个方法而已,至于为啥能这么用,还是不知道的,接下来深入理解一下吧,也为了之后学习正则化做铺垫。

拉格朗日函数

在这里插入图片描述
其中f0(x)是我们的目标函数。
fi(x)则是需要考虑的约束条件。

那么根据这种转换我们可以看一下几个简答的例子:

例1

在这里插入图片描述
可以看出在相切的点就是极值了,因为梯度是个向量,只有目标函数的梯度和约束条件的梯度方向一致,相加才可能为0,才能够满足约束条件的情况下取到极值,梯度方向一致可以通过调整λ大小来使得二者梯度能够大小相等,方向相反,相加就为0了。

例2

在这里插入图片描述
假设现在有5个约束条件,分别在图中画出。
可以看到生成与目标函数相反方向的梯度,只有两个约束条件的梯度能做出这样的贡献
在这里插入图片描述
他们那个点的梯度和是目标函数的相反的梯度。
对于没有用到的约束条件,则他们的梯度应当为0,如果不为0就不会满足约束条件和目标函数梯度的和为0这个条件了。
在这里插入图片描述
从下图中我们可以看出,箭头的方向都是直线上的点对应得梯度的方向

在这里插入图片描述
如果λ允许取负数,那么其实别的约束条件梯度的组合也可能满足与目标函数的大小相同,方向相反,因此我们需要规定λ>=0.

在这里插入图片描述
松弛说明约束条件并没有起到约束的作用,缺少了结果也不会受到影响。
紧致说明约束条件起导论约束的作用,如果缺少这个条件,结果会发生改变。
在这里插入图片描述
例如这种情况下,对于求最小值来说,所有约束条件都是松弛的。

拉格朗日函数的对偶问题

首先给出一个等价的问题表达:

在这里插入图片描述
因为λ和μ是可以任意取的,因此当不满足约束条件的时候,L(x,,λ,μ )都是能取到无穷大的,不过外面还有个取最小值,因此不符合约束条件的都会被舍弃,那么剩下的就是符合约束条件的,最后的结果也就是需要求的最小值了。

如果将上面的问题看作原问题那么对偶问题就如下:
在这里插入图片描述
需要引入一个对偶函数,相当于将计算最大最小的顺序反一下。
对偶问题还能够等价写成:
在这里插入图片描述
假设我们已经找到了解,对偶函数的特征如下:
在这里插入图片描述
变量都是一阶线性的关系,因为线性函数一定是个凸函数或者凹函数,因为这里是要求对偶函数的最大值,我们就能将他看成一个凹函数了。(凹函数加个-号就是凸函数了)

因此,不论原问题的约束条件目标函数是什么,当其能转换为对偶问题时,那么他一定是个凸优化问题。求解就比较方便了。

虽然转换成对偶问题容易,但是对偶问题的解和原问题的解相等,是需要条件的。
在这里插入图片描述
通过推导可知,原问题的解一定是>=对偶问题的解的。

当满足Slater条件,说明原问题和对偶问题有强对偶性。
但是在机器学习SVM中我们经常遇到的KKT条件
在这里插入图片描述
一般来说,大多数问题对偶问题满足KKT条件应该就是原问题的强对偶问题了,但是理论上KKT条件只是一个必要条件,就是说如果满足强对偶问题,那么一定满足KKT条件,但是反过来就不一定了,但是由于大多数情况下反过来也是,那么就这么用问题也不大。

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

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

相关文章

Python代码的编写运行方式简介

Python代码的编写运行方式简介 Python编写方式 Python 是一种解释型的脚本编程语言,支持两种代码编写方式:交互命令行方式和运行.py代码文件方式。 Python的交互命令行方式和直接运行.py代码文件方式有什么区别呢? 交互模式,相当…

Python爬虫|采集开源众包的悬赏任务,自动翻页

前言 现在互联网,有很多网站提供一些接单外派的形式,提供给有能力的人或者团队去接单。比如说,很多人熟悉的猪八戒,程序员客栈,CODING 码市,开源众包等等平台,相信很多同学也都知道。 如果要第一时间了解某个接单平台发布的第一手悬赏任务,选择爬虫也是非常不错的选择…

websocket接口自动化集成pytest测试框架

01、websocket协议 1、介绍 WebSocket是一种在单个TCP通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向…

【2020-10-26】JS逆向之同盾滑块

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言总结前言 用官网的做个例子吧:https://sec.xiaodun.com/onlineExperience/slidingPuzzle?Rbdjj?sourcetongdun&keywordtongdun 简单分析下这个…

项目整体管理

项目整体管理 1.1 项目整体管理概述 1.项目整体管理知识领域包括识别、确定、结合、统一与协调各项目管理过程组内不同过程与项目管理活动所需进行的各种过程和活动。 2.“整体管理”的基本任务就是为了按照实施组织确定的程序实现项目目标,将项目管理过程组中需要…

CalBioreagents 艾美捷芽孢杆菌多克隆抗体说明书

艾美捷CalBioreagents 芽孢杆菌多克隆抗体英文说明: CATALOG NUMBER: P043 PRODUCT DESCRIPTION: Rabbit anti-Bacillus polyclonal antibody. IMMUNOGEN: Immunogen was prepared from a pool of purified spores from Bacillus subtilis and Bacillus cereus.…

一句话需求,让你去抄人家产品,你遇到了咋办

打工者联盟为了抵抗996、拖欠工资、黑心老板、恶心公司,让我们组成打工者联盟。客观评价自己任职过的公司情况,为其他求职者竖起一座引路的明灯。https://book.employleague.cn/话说:工地有个包工头,找来两个瓦匠要承包工程。 瓦…

ZooKeeper基础

一、概念 架构: Client/ServerEnsemble(集群,ZK服务器组),最小节点数为3ZK LeaderaZK Follower ZooKeeper数据模型 znode:用于存储数据,分为持久的(default)、临时的…

一次服务器非法重启后导致的故障排查记录

作者:JackTian 来源:公众号「杰哥的IT之旅」 ID:Jake_Internet 转载请联系授权(微信ID:Hc220088) 原文地址:一次服务器非法重启后导致的故障排查记录 大家好,我是杰哥。 前段时间遇…

贪婪算法(Huffman编码)

如果一个算法分阶段的工作,并且在每一个阶段都认为所做的决定是最好的,而不考虑将来的后果,这样的算法就叫做贪婪算法。贪婪算法只考虑当前局部的最优解,而不去考虑全局的情况,如果最终得到的结果是全局最优的&#xf…

麻雀优化CNN超参数用于回归MATLAB

在CNN模型的构建中,涉及到特别多的超参数,比如:学习率、训练次数、batchsize、各个卷积层的卷积核大小与卷积核数量(feature map数),全连接层的节点数等。直接选择的话,很难选到一组满意的参数&…

如何理解关系型数据库的常见设计范式?

目录理清基础概念实体属性元组分组函数依赖完全函数依赖部分函数依赖传递函数依赖码全码理解六范式第一范式(1NF)第二范式(2NF)第三范式(3NF)巴斯-科德范式(BCNF,Boyce-Codd Normal …

基于STM32的智能家居系统设计

目录 第1章 前言 1 1.1 课题研究的背景和实际意义 1 1.1.1课题背景 1 1.1.2实际意义 1 1.2国内外发展现状、存在问题以及前景 2 1.2.1发展现状 2 1.2.2存在问题 2 1.2.3发展前景 2 1.3 主要工作、内容安排及预期成果 3 1.3.1主要研究工作 3 1.3.2预期成果 3 第2章 总体设计方案…

安卓4.X版本ssl: sslv3 alert handshake failure 握手失败

低版本https握手失败错误查看接口的协议改写代码(网络访问采用原生的HttpsURLConnection)参考博文:https://www.cnblogs.com/lwbqqyumidi/p/12063489.htmlhttps://blog.csdn.net/qq_16117167/article/details/52621112错误 如图所示&#xf…

linux进程概念

目录 1、进程的基本概念 2、进程控制块 - PCB task_struct内容分类 3、查看进程 通过ps命令查看进程 通过proc查看进程 4、通过系统调用获取进程标示符 5、通过系统调用创建进程-fork初识 6、进程状态 操作系统进程状态 linux进程状态 僵尸进程 孤儿进程 僵尸进…

计算机网络-谢希仁-第7版 第1章 概述

计算机网络-谢希仁-第7版 第1章 概述1.011.021.031.071.081.091.101.111.121.131.141.161.171.181.191.201.211.221.241.251.26计算机网络谢希仁版(第七版)答案 1.01 计算机网络可以向用户提供哪些服务? 计算机网络使用户在计算机之间传送数…

【Linux】Linux下的编译器——gcc/g++

💬推荐一款模拟面试、刷题神器 、从基础到大厂面试题:👉点击跳转刷题网站进行注册学习 目录 一、编译的过程 1、预处理阶段 1.1预处理的工作——头文件展开、去注释、宏替换、条件编译 1.2外部定义宏(-D选项) 1.…

会话跟踪技术(Cookie、Session)

目录一、CookieCookie的基本使用发送Cookie获取CookieCookie原理Cookie使用细节二、SessionSession基本使用Session原理Session使用细节三、小结四、登录注册案例会话:用户打开浏览器,访问Web服务器的资源,会话建立,直到有一方断开…

数据结构之堆的应用

系列文章目录 数据结构之堆_crazy_xieyi的博客-CSDN博客 文章目录 前言一、Top-k问题 1.前K个最小数(第k个最小数) 2.前K个最大数(第K个最大数)二、堆排序 1.从小到大排序(建大根堆)2.从大到…

【2022研电赛】安谋科技企业命题一等奖:基于EAIDK-610的中国象棋机器人对弈系统

本文为2022年第十七届中国研究生电子设计竞赛安谋科技企业命题一等奖作品分享,参加极术社区的【有奖活动】分享2022研电赛作品扩大影响力,更有丰富电子礼品等你来领! 基于EAIDK-610的中国象棋机器人对弈系统 参赛单位:西安邮电大学…