凸优化及拉格朗日对偶问题

2023-10-30

只记录机器学习方法中需要用到的最优化知识,不做系统总结,持续更新ing。

1 凸优化

1、凸集

      一个点集或者区域,如果连接任何两点X1.X2之间的线段可以全部被包含在该集合里面,就称该点集为凸集,否则为非凸集。

在这里插入图片描述

2、凸性条件

  • 1 根据一阶导数(函数的梯度)来判断凸性
    设f(x)为定义在凸集R上,且具有连续的一阶导数的函数,则f(x)在R上为凸函数的充要条件是对凸集R内任意不同两点x1,x2,有不等式恒成立:
    在这里插入图片描述

  • 2 根据二阶导数(Hesse矩阵)来判断凸性
    设f(x)为定义在凸集R上且具有连续二阶导数的函数,则f(x)在R上为凸函数的充要条件:
    Hesse矩阵在R上处处半正定

3、凸规划

      对于约束问题:
在这里插入图片描述
在这里插入图片描述

4、凸规划性质

  • 若给定一点x0,则集合R={x|f(x)<=f(x0)}为凸集
  • 可行域R={x|g(x)<=0,j=1,2…}为凸集
  • 凸规划的任何局部最优解就是全局最优解

5、凸优化问题

      凸优化问题是指约束最优化问题:
在这里插入图片描述
      其中,目标函数f(w) 和约束函数gi(w)都是Rn上连续可微的凸函数,约束函数hj(w)是Rn上的仿射函数。当目标函数为二次函数,g函数为仿射函数时,为凸二次规划问题。

2 拉格朗日函数及其对偶问题

1、拉格朗日函数(含KKT条件)

      最优化问题根据约束条件分为三类(无约束、等式约束、不等式约束)

1)对于"无约束"优化问题:
       比较简单,令偏导数=0,联立方程组得到的点就可能是极值点(只是必要条件),在具体带入函数判断即可。对于有约束问题都是通过构造拉格朗日函数来进行求解。

2)对于等式约束问题:
在这里插入图片描述
构造拉格朗日函数:
在这里插入图片描述
      其中,每个约束条件都对应着一个拉格朗日乘子。
拉格朗日函数对x求偏导即得到:
在这里插入图片描述
3)对于“等式约束”+“不等式约束”优化问题

在这里插入图片描述
最终要转换为无约束的简单问题,分为两步:
- 1.把不等式约束转换为等式约束:引入松弛变量(KKT算子)
- 2.把等式约束转换为无约束的优化条件:引入拉格朗日乘子
构造出拉格朗日函数为:
在这里插入图片描述

      其中,阿尔法和贝塔就是引入的KKT算子和拉格朗日乘子。
接下来就是对无约束优化问题求偏导来找极值点,即得到KKT条件(必要条件)
      KKT条件:
在这里插入图片描述KKT条件详解

2、拉格朗日对偶问题

      已知构造的拉格朗日函数为:

在这里插入图片描述
      显然其中:
在这里插入图片描述
      考虑极小问题:
在这里插入图片描述
这就是原问题的拉格朗日函数极小极大问题。

      引入KKT乘子和拉格朗日算子当作参数,关于x取最小值为:
在这里插入图片描述

      则有:
在这里插入图片描述
      这就是拉格朗日函数的极大极小问题,也是原问题的对偶问题。显然可以推导出:对偶问题的最优解是原问题的一个下界。

在这里插入图片描述

  1. 当满足KKT条件时,原始问题和对偶问题的可行解X星和a,b是两个问题的解,通过列出KKT条件的方程,即可得到原始问题的解。
  2. 当:
    在这里插入图片描述
    原始问题和对偶问题的可行解X星和a,b是两个问题的最优解。
  3. 强对偶和弱对偶
    在这里插入图片描述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

凸优化及拉格朗日对偶问题 的相关文章

  • Mac Os下安装Myeclipse提示insufficient memory

    如图所示 搞了两天终于解决来 发现网上对此问题的解决办法也是说的不清不楚对 总的来说有三种方法 当然我只用了其中都一种 方法一 Mac OS中用虚拟内存来提高性能 可是我用的macbook 有8g内存 要用上虚拟内存还是比较少的 所以你可以
  • 【hive】分组求排名

    分组求排名 相信好多使用Mysql的用户一定对分组求排名的需求感到发怵 但是在hive或者oracle来说就能简单实现 采用窗口函数 rank over row number over dense rank over 函数就能轻松完成 窗口

随机推荐

  • SSL certificate problem: unable to get local issuer certificate 错误解决

    今天公司换服务器域名 用了一个本地的服务器 然后我切换远程仓库拉代码的时候 终端报了如下错误git SSL certificate problem unable to get local issuer certificate 这个问题是由于
  • 大数据毕设 opencv python 深度学习垃圾图像分类系统

    文章目录 0 前言 课题简介 一 识别效果 二 实现 1 数据集 2 实现原理和方法 3 网络结构 0 前言 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的毕设题目缺少创新和亮点 往往达不到毕业答辩的要求 这两年不断有学弟学妹告诉
  • python星座分析

    python数据分析 python数据分析是一个非常好用的 虽然python数据分析只是刚刚起步 有些功能还未开发完成 但是用来做数据分析是绰绰有余了 本人也是专门研究和学习python数据分析的 星座数据爬虫 作为一个学习数据分析的人 爬
  • 在Apifox中,使用后置脚本显示响应结果reponse中的base64图片

    背景 在使用Apifox去请求有图片的接口时 我想要请求成功的同时 可以显示出来图片 这个时候就开始百度找官方文档 最终发现可以使用后置脚本显示reponse中的图片 方案 如下图所示 接口请求成功后 返回的json结构为 images p
  • 简单了解Linux图形界面

    之前曾经发生过启动虚拟机进入不了图形界面的情况 关于RedHat开启失败的解决方法 m0 48788975的博客 CSDN博客 在我看书的过程中总算搞清楚这是怎么一回事了 下面就和大家唠两句Linux视图 一 Linux操作界面主要分为传统
  • 机器学习_数据处理及模型评估相关资料

    基于sklearn 的auc 计算方法 训练模型填充空值 fill null 的几种方法 在Pandas中像写SQL一样做数据分析
  • Java通过freemarker实现导出PDF

    制作模板 引入依赖 引入所需字体文件 工具类的编写 业务实现 一 模板制作 1 编写html代码 需要替换的值与内容预留出来 用 name 代替 需循环处 表格前加上 lt list listKey as t gt t name 2 将写好
  • 浅谈React浏览器渲染流程

    当浏览器发送一个请求 会得到对应的响应 浏览器会通过HTML解析器去解析HTML会构建DOM树 会通过CSS解析器去解析CSS生成CSS规则树 如果页面中拥有一些JS逻辑 那么往往会通过JS将CSS HTML进行修改的操作 往往造成重排重绘
  • SPADE: Semantic Image Synthesis with Spatially-Adaptive Normalization

    目录 介绍 相关工作 1 Unconditional normalization layers 2 Conditional normalization layers 这一部分挺重要的 方法 3 1 Spatially adaptive de
  • 编译实验(三)目标代码生成

    通过词法分析 语法分析 语义分析 最后产生了四元式 而代码生成则是通过四元式来完成 我们先从简单开始做起 编译实验项目下载链接 http download csdn net download supersmart dong 10224159
  • 源码安装LAMP环境+yii2框架

    当有些新增的软件版本出现 而你想要进行尝试使用 但是在本地用yum安装却不能满足你的需求时 那么朋友 你需要和我一样用源码安装的形式来达成你的目的 因为开发的同事想要一个Apache 2 4 25 Mysql 5 7 17 php7 1 5
  • 设计模式之工厂方法模式

    定义 定义一个用于创建对象的接口 让子类决定实例化哪个类 使用场景 在任何需要生成复杂对象的地方 都可以使用工厂方法模式 复杂对象适合使用工厂模式 public interface Car public void make public v
  • db2实现两个数相减_DB2中求两个日期之间相差多少个月?

    DB2中怎么来求两个日期之间相差多少个月呢 今天在工作中遇到一个问题 就是怎么在DB2中怎么来求两个日期之间相差多少个月呢 结果找到一个方法如下 在DB2中两个日期之间相减会等到一个整数总共有六种情况分别是 select date 2010
  • HTML登录页面

    第一步 构建HTML框架 简介 本文用最通俗的语言 一步步教会大家CSS构建登录页面 首先构建HTML框架 包含用户名 密码 记住密码 注册这几个功能 如果大家HTML不牢固 请看我的这篇博客 https blog csdn net qq
  • nginx系列(十七)nginx下的gzip与vary、预压缩、缓存、反向代理的结合

    size xx large 前言 size 在http的协议里 为了减少网络传输 允许将报文进行gzip压缩以后再传输 虽然网络传输体积减小了 但是服务器压缩和浏览器的解压缩消耗了CPU的计算 后来出现了预压缩技术 就是提前把静态文件进行g
  • Coordinate Attention 论文阅读

    Coordinate Attention 论文阅读 背景 研究表明通道注意力可以显著提升了模型性能 但是在以往的工作中通常忽略了位置信息 而位置信息对于生成空间注意力非常重要 为了利用位置信息 Coordinate Attention 将位
  • 关于示波器引入50HZ工频干扰的解释

    前几天 小白在实验室工作时 听到同事抱怨示波器有问题 上前查看 才知道 小白的那位同事在测量信号波形时 实际与理想相差甚远 在探头什么也不接的情况下 发现示波器本身也存在波形信号 于是乎 便有了前述说的抱怨 由于没有保存当时的波形 事后小白
  • 浏览器输入url后经历的过程(详细)

    页面加载流程 DNS查询 TCP连接 发送HTTP请求 服务器处理HTTP请求并返回HTTP报文 浏览器解析并render页面 HTTP连接断开 1 DNS查询 浏览器查看浏览器缓存 gt 系统缓存 gt 查找本地host文件 gt 本地D
  • vue 中 ref 、$refs 的用法

    ref 的三种用法 1 ref 加在普通的元素上 用this ref name 获取到的是dom元素 2 ref 加在子组件上 用this ref name 获取到的是组件实例 可以使用组件的所有方法 3 如何利用 v for 和 ref
  • 凸优化及拉格朗日对偶问题

    只记录机器学习方法中需要用到的最优化知识 不做系统总结 持续更新ing 文章目录 1 凸优化 1 凸集 2 凸性条件 3 凸规划 4 凸规划性质 5 凸优化问题 2 拉格朗日函数及其对偶问题 1 拉格朗日函数 含KKT条件 2 拉格朗日对偶