机器学习之拉格朗日乘子法和 KKT

有约束的最优化问题

最优化问题一般是指对于某一个函数而言,求解在其指定作用域上的全局最小值问题,一般分为以下三种情况(备注:以下几种方式求出来的解都有可能是局部极小值,只有当函数是凸函数的时候,才可以得到全局最小值):

1、无约束问题:求解方式一般为梯度下降法、牛顿法、坐标轴下降法等;

                                                                                         \min f(x)

2、等式约束条件:求解方式一般为拉格朗日乘子法

                                                                              \begin{center} \min f(x) \\s.t.\ \ h_k(x)=0 \ \ \ k=1, 2, \dots, p \\F(x, \alpha )=f(x)+\sum_{k=1}^p\alpha_kh_k(x)\end{center}

3、不等式约束条件:求解方式一般为KKT条件

                                                       \begin{center} \min f(x) \\ s.t.\ \ \ \ \ h_k(x)=0 \ \ \ \ \ \ k=1, 2, \dots, p \\\ \ \ \ \ \ \ \ \ g_j(x) \le 0 \ \ \ \ \ \ j=1, 2, \dots, q \\L(x, \alpha, \beta)=f(x)+\sum_{k=1}^p\alpha_kh_k(x)+\sum_{j=1}^q\beta_jg_j(x) \end{center}

拉格朗日乘子法

拉格朗日乘子法就是当我们的优化函数存在等值约束的情况下的一种最优化求解方式;

其中参数α被称为拉格朗日乘子,要求α不等于0

\begin{center} \min f(x) \\s.t.\ \ h_k(x)=0, \ \ \ k=1, 2, \dots, p \\F(x, \alpha )=f(x)+\sum_{k=1}^{p}\alpha_kh_k(x),\ \ \ \alpha_k \neq 0\end{center}

假设现在有一个二维的优化问题

画出图像加深理解

数学证明可参考链接:https://wenku.baidu.com/view/ac56710e2e3f5727a5e962a7.html

对偶问题

\underset{\beta }{min}\ \underset{x}{min}\ L(x,\beta)=\underset{x}{min}\ \underset{\beta }{max}\ L(x,\beta)

在优化问题中,目标函数f(x)存在多种形式,如果目标函数和约束条件都为变量x的线性函数,则称问题为线性规划;如果目标函数为二次函数,则称最优化问题为二次规划;如果目标函数或者约束条件为非线性函数,则称最优化问题为非线性优化。每个线性规划问题都有一个对应的对偶问题。对偶问题具有以下几个特性:

  1. 对偶问题的对偶是原问题;
  2. 无论原始问题是否是凸的,对偶问题都是凸优化问题;
  3. 对偶问题可以给出原始问题的一个下界;
  4. 当满足一定条件的时候,原始问题和对偶问题的解是完美等价的。

KKT条件

KKT条件是泛拉格朗日乘子法的一种形式;主要应用在当我们的优化函数存在不等值约束的情况下的一种最优化求解方式;KKT条件即满足不等式约束情况下的条件。

\begin{center} \min f(x) \\ s.t.\ \ \ \ \ h_k(x)=0 \ \ \ \ \ \ k=1, 2, \dots, p \\\ \ \ \ \ \ \ \ \ g_j(x) \le 0 \ \ \ \ \ \ j=1, 2, \dots, q \\L(x, \alpha, \beta)=f(x)+\sum_{k=1}^p\alpha_kh_k(x)+\sum_{j=1}^q\beta_j g_j(x) ,\ a_k\neq 0,\beta_j \geq 0\end{center}

可行解必须在约束区域g(x)之内,由图可知可行解x只能在g(x)<0和g(x)=0的区域取得;

 

当可行解x在g(x)<0的区域中的时候,此时直接极小化f(x)即可得到;

当可行解x在g(x)=0的区域中的时候,此时直接等价于等式约束问题的求解。

 

KKT条件理解

当可行解在约束内部区域的时候,令β=0即可消去约束。

对于参数β的取值而言,在等值约束中,约束函数和目标函数的梯度只要满足平行即可,而在不等式约束中,若β≠0,则说明可行解在约束区域的边界上,这个时候可行解应该尽可能的靠近无约束情况下的解,所以在约束边界上,目标函数的负梯度方向应该远离约束区域朝无约束区域时的解,此时约束函数的梯度方向与目标函数的负梯度方向应相同;从而可以得出β>0。

 

 

对偶问题的直观理解:最小的里面的那个最大的要比最大的那个里面的最小的大;从而就可以为原问题引入一个下界。

KKT 案例

 

这里利用该KKT条件满足对偶条件:

对偶问题的直观理解:最小的里面的那个最大的要比最大的那个里面的最小的大;从而就可以为原问题引入一个下界

KKT条件总结

KKT条件为下列五个

  1. 拉格朗日取得可行解的充要条件;
  2. 将不等式约束转换后的一个约束,称为松弛互补条件;
  3. 初始的约束条件;
  4. 初始的约束条件;
  5. 不等式约束需要满足的条件。

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

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

相关文章

pmp思维导图 第六版_PMP考试技巧攻略(上)

PMP考试需要有保证足够的时间投入&#xff1a;获得PMP 考试并拿到5A 成绩&#xff0c;并且还需要理解性记忆&#xff1a;PMP 指定教材PMBOK第六版&#xff08;教材为必看三遍以上&#xff09;&#xff0c;学习起来是有趣的&#xff0c;同时也是痛苦的。因为看书时字面的字我们认…

浅谈MVC MVP MVVM

复杂的软件必须有清晰合理的架构&#xff0c;否则无法开发和维护。 MVC&#xff08;Model-View-Controller&#xff09;是最常见的软件架构之一&#xff0c;业界有着广泛应用。 它本身很容易理解&#xff0c;但是要讲清楚&#xff0c;它与衍生的 MVP 和 MVVM 架构的区别就不容易…

商务搜索引擎_外贸研修 | 世界各国常用搜索引擎,开发客户必备!

我们平时生活中也好&#xff0c;开发客户也好&#xff0c;搜索引擎是我们离不开的工具。最佳没有之一的当属谷歌了。谷歌网址&#xff1a;www.google.com谷歌高级搜索&#xff1a;https://www.google.com/advanced_search (通过设置/排除一些字词缩小精确搜索范围)作为普通使用…

HaProxy+Keepalived+Mycat高可用群集配置

概述 本章节主要介绍配置HaProxyKeepalived高可用群集&#xff0c;Mycat的配置就不在这里做介绍&#xff0c;可以参考我前面写的几篇关于Mycat的文章。 部署图&#xff1a; 配置 HaProxy安装 181和179两台服务器安装haproxy的步骤一致 --创建haproxy用户 useradd haproxy--…

奇怪的bug,不懂Atom在添加markdown-themeable-pdf,在配置好phantomjs的情况下报错

本来打算用一下atom但是导出pdf报错&#xff0c;可是在预览的情况下就没有问题&#xff0c;顺便吐槽一下谷歌浏览器自己的markdown在线预览插件无法适配&#xff0c;用搜狗搭载谷歌的插件才能导出pdf&#xff0c;一下感觉逼格少了很多&#xff0c;等忙完这阵再来看一下。先贴出…

Python 面试题

Python面试315道题第一部 Python面试题基础篇&#xff08;80道&#xff09;1、为什么学习Python&#xff1f;2、通过什么途径学习的Python&#xff1f;3、Python和Java、PHP、C、C#、C等其他语言的对比&#xff1f;PHPjavacc#c4、简述解释型和编译型编程语言&#xff1f;编译型…

bzoj1038500AC!

序列dp 先开始想了一个类似区间dp的东西...少了一维 然后发现似乎不太对&#xff0c;因为女生的最大差和男生的最大差并不相等 dp[i][j][x][y]表示当前有i个人&#xff0c;j个男生&#xff0c;男生和女生的后缀最大差是x&#xff0c;女生和男生最大差是y&#xff0c;x,y>0,转…

android生命周期_Android开发 View的生命周期结合代码详解

咱们以TextView控件为例&#xff1a;/*** Created by SunshineBoy on 2020/9/23.*/public class TestTextView extends android.support.v7.widget.AppCompatTextView {public TestTextView(Context context) {super(context);Log.e("TestTextView","TestTextVi…

机器学习算法之支持向量机 SVM

距离知识 点到直线/平面的距离公式&#xff1a; 1、假定点p(x0,y0)&#xff0c;平面方程为f(x,y)AxByC&#xff0c;那么点p到平面f(x)的距离为&#xff1a; 2、从三维空间扩展到多维空间中&#xff0c;如果存在一个超平面f(X)θXb; 那么某一个点X0到这个超平面的距离为: 参考…

VMware Horizon虚拟桌面工具箱2.0-审计,远程协助,控制台,电源

各位朋友,大家好,VMware Horizon 虚拟桌面工具箱2.0版本,已经面世啦!在2.0 版本中我们添加了vSphere虚拟机控制台访问、开机策略和图形化安装这三个新功能&#xff0c;并改进了部分老的功能。老版本即1.5版本的相关知识可以参考我的博文VMware Horizon虚拟桌面工具箱之审计与远…

python词云改颜色_一种用Python生成词云

一种用Python生成词云 我们在阅读一篇很长的文章时&#xff0c;总先看看文章的关键词来获知文章的大概内容。今天我们就来制作一个词云程序&#xff0c;将文章中出现次数较多的词语提取出来&#xff0c;生成一张词云图。词云图的生成原理&#xff1a; 程序会将这篇文章中的所有…

机器学习之 朴素贝叶斯、贝叶斯网络

目录 贝叶斯定理 朴素贝叶斯算法 高斯朴素贝叶斯 伯努利朴素贝叶斯 多项式朴素贝叶斯 贝叶斯网络 最简单的贝叶斯网络 全连接贝叶斯网络 一般化的贝叶斯网络 引子 参赛者会看见三扇关闭了的门&#xff0c;其中一扇的后面有一辆汽车&#xff0c;选中后面有车的那扇门可…

attention机制_简析Attention机制—优缺点,实现,应用

什么是Attention机制&#xff1f;Attention机制的本质来自于人类视觉注意力机制。人们在看东西的时候一般不会从到头看到尾全部都看&#xff0c;往往只会根据需求观察注意特定的一部分。简单来说&#xff0c;就是一种权重参数的分配机制&#xff0c;目标是协助模型捕捉重要信息…

pycharm Debug问题

pycharm Debug问题 参考链接:https://blog.csdn.net/weixin_43472408/article/details/85072640 Debug的调试方式如下所示&#xff1a; 1.show execution point (F10) 显示当前所有断点 2.step over(F8) 单步调试。 若函数A内存在子函数a时&#xff0c;不会进入子函数a内执…

php执行npm命令_npm系列之命令执行

当我想使用vue的脚手架来创建一个项目的时候&#xff0c;我应该怎么做&#xff1f;执行命令 npm install -g vue/cli 全局安装&#xff0c;之后就可以在控制台中使用vue create programName 来创建一个项目。为什么可以直接使用vue命令&#xff1f;这类支持命令的依赖会在项目中…

模拟产品展示 Flash无法展示的追踪过程

鼠标滑过小图时&#xff0c;左侧前四张大图可以&#xff0c;但是最后那张大图无法展示&#xff1a; falsh产品展示需要通过参数传递&#xff0c;把关联产品id的图片get出来&#xff0c;如&#xff1a; http://192.168.8.166:90/category/prod_img.aspx?prodid101 结果&#xf…

c语言贪吃蛇最简单代码_C语言指针,这可能是史上最干最全的讲解啦(附代码)!!!...

点击上方“大鱼机器人”&#xff0c;选择“置顶/星标公众号”福利干货&#xff0c;第一时间送达&#xff01;指针对于C来说太重要。然而&#xff0c;想要全面理解指针&#xff0c;除了要对C语言有熟练的掌握外&#xff0c;还要有计算机硬件以及操作系统等方方面面的基本知识。所…

SpringSecurity深度解析与实践(3)

这里写自定义目录标题 引言SpringSecurity之授权授权介绍java权限集成 登录失败三次用户上锁 引言 SpringSecurity深度解析与实践&#xff08;2&#xff09;的网址 SpringSecurity之授权 授权介绍 Spring Security 中的授权分为两种类型&#xff1a; 基于角色的授权&#…

机器学习之单标签多分类及多标签多分类

单标签二分类算法 Logistic算法 单标签多分类算法 Softmax算法 One-Versus-One&#xff08;ovo&#xff09;&#xff1a;一对一 One-Versus-All / One-Versus-the-Rest&#xff08;ova/ovr&#xff09;&#xff1a; 一对多 ovo和ovr的区别 Error Correcting Output code…

cas单点登录-jdbc认证(三)

前言 本节的内容为JDBC认证&#xff0c;查找数据库进行验证&#xff0c;其中包括&#xff1a; 密码加密策略&#xff08;无密码&#xff0c;简单加密&#xff0c;加盐处理&#xff09;认证策略&#xff08;jdbc&#xff09;一、业务需求 不同的公司&#xff0c;需求业务需求或者…