前段时间学了拉格朗日乘子法,学会了构造拉格朗日函数,也就是学会了把带约束(等式或不等式)的优化问题转化为无约束优化问题,私以为这部分就学完了到此为止了,没想到今天推导SVM的数学模型,要推原问题的对偶问题,愣是艰难地卡了大半天,一直没明白对偶问题的含义,原来拉格朗日函数得到以后还要进一步往下推出拉格朗日对偶函数,对偶函数的极值问题就是原问题的对偶问题,本文专门梳理和总结一下,以作学习记录。

本文是此文的续集,需要补充前面的知识可去逛逛,本文有的地方没仔细解释。

对偶理论,1947年提出,最早出现在线性规划中,所以现在的最优化课本里讲对偶问题都是从线性规划开始的,注意初学者看了线性规划里的对偶问题,很容易误以为对偶问题就是原问题的一个等价问题,其实这么想是不正确不严密的,对偶和等价是不同的概念
本文只讨论拉格朗日对偶问题,线性规划的先不考虑。


考虑最优化模型:
min⁡f(x)s.t.hk(x)=0,gj(x)≤0j=1,2…,n;k=1,2…,l\min f(x) \quad s.t.\quad h_k(x)=0\quad,\quad g_j(x)\leq0\quad j=1,2\ldots,n;k=1,2\ldots,lminf(x)s.t.hk​(x)=0,gj​(x)≤0j=1,2…,n;k=1,2…,l

(1)通过下面两步,构造拉格朗日函数为:

  1. 引入 松弛变量 / KKT乘子μj(μj≥0)\mu_j(\mu_j\geq0)μj​(μj​≥0),把不等式约束条件转化为等式约束条件
  2. 引入拉格朗日乘子λk\lambda_kλk​,把等式约束转化为无约束优化问题。

L(x,λ,μ)=f(x)+∑k=1lλkhk(x)+∑j=1nμjgj(x),μj≥0\boldsymbol L(x,\boldsymbol \lambda,\boldsymbol\mu)=f(x)+\sum_{k=1}^l\lambda_kh_k(x)+\sum_{j=1}^n\mu_jg_j(x),\mu_j\geq0L(x,λ,μ)=f(x)+k=1∑l​λk​hk​(x)+j=1∑n​μj​gj​(x),μj​≥0

(2)定义拉格朗日对偶函数为拉格朗日函数把λ,μ\boldsymbol\lambda,\boldsymbol\muλ,μ当作常数,关于xxx取最小值得到的函数:

g(λ,μ)=inf⁡x(L(x,λ,μ))g(\boldsymbol\lambda,\boldsymbol\mu)=\inf_{x}(\boldsymbol L(x,\boldsymbol\lambda,\boldsymbol\mu))g(λ,μ)=xinf​(L(x,λ,μ))
inf 表示下确界,infimum(sup,上确界,supremum)
它只是λ,μ\boldsymbol\lambda,\boldsymbol\muλ,μ的函数,与xxx无关。
它一定是凹函数。这里有证明。

(3)拉格朗日对偶问题

原问题是最小化f(x)f(x)f(x),显然,f(x)≥L(x,λ,μ)f(x)\geq \boldsymbol L(x,\boldsymbol\lambda,\boldsymbol\mu)f(x)≥L(x,λ,μ)
假设f∗f^*f∗是满足原问题约束下的最优解,则
f∗=min⁡f(x)≥min⁡L(x,λ,μ)≥g(λ,μ),μi≥0f^*=\min f(x)\geq\min \boldsymbol L(x,\boldsymbol\lambda,\boldsymbol\mu)\geq g(\boldsymbol\lambda,\boldsymbol\mu) ,\mu_i\geq0f∗=minf(x)≥minL(x,λ,μ)≥g(λ,μ),μi​≥0
所以g(λ,μ)g(\boldsymbol\lambda,\boldsymbol\mu)g(λ,μ)是原问题最优解的下界。

找下界当然是要找最大的下界,所以导出拉格朗日对偶问题
max⁡g(λ,μ),s.t.μi≥0\max g(\boldsymbol\lambda,\boldsymbol\mu), s.t.\quad\mu_i\geq0maxg(λ,μ),s.t.μi​≥0
由于g(λ,μ)g(\boldsymbol\lambda,\boldsymbol\mu)g(λ,μ)一定是凹函数,所以拉格朗日对偶问题一定是凸优化问题。

原问题的关于xxx的最小化转化为了对偶问题关于λ,μ\boldsymbol\lambda,\boldsymbol\muλ,μ的最大化。

(4)strong duality & weak duality

设d∗d^*d∗是拉格朗日对偶问题的最优解,则不管原问题是不是凸优化问题,都一定有
d∗=f∗d^*= f^*d∗=f∗
强对偶成立。这时对偶函数是原问题的紧致下界。

d∗≤f∗d^*\leq f^*d∗≤f∗
弱对偶成立。

能不能取到强对偶条件取决于目标函数和约束条件的性质。如果满足原问题是凸优化问题,并且至少存在一个绝对可行点(Slater’s condition)(一个可以让所有不等式约束都不取等号的可行点),那么就具有强对偶性。

slater条件:存在x,使得所以不等式约束g(x)≤0g(x)\leq0g(x)≤0严格成立(即严格小于)。
slater条件性质: slater条件是原问题P可以等价于对偶问题Q的一个充分条件,该条件确保了鞍点的存在。

拉格朗日对偶函数拉格朗日对偶问题相关推荐

  1. 如何理解拉格朗日对偶函数

    转自:https://www.cnblogs.com/gczr/p/10521551.html 在约束最优化问题中,常常利用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题, ...

  2. 凸优化——详解原函数的对偶函数、对偶问题和共轭函数之间的关系(我尽力了)

    一. 原函数的对偶函数和共轭函数 对偶函数 原函数 ==> 拉格朗日函数 ==> 对偶函数(拉格朗日对偶函数) f0f_0f0​ ==>L(x,λ\lambdaλ,v) ==> ...

  3. 一文理解拉格朗日对偶和KKT条件

    一. 最优化问题求解 1. 等式约束的极值求法 $$ \begin{gather*} \underset{t}{min} f(t) \; s.t.\; h_i(t)=0,i=1,\cdots,p \e ...

  4. 【数学】拉格朗日对偶,从0到完全理解

    1. 从最优化引出的拉格朗日乘数法 1.1 一个最简单的无约束优化问题 在学习与工程之中,我们时常会遇到一些优化的问题,也就是要对某个目标函数求取极值,最简单的形式如下. min⁡x∈Rnf(x)\l ...

  5. 拉格朗日对偶的实例计算

    该书为凸优化教材 一.Lagrange 对偶函数 1.1 拉格朗日函数 1.2 拉格朗日对偶函数 二.标准形式线性规划拉格朗日对偶 minCTxs.t.Ax=bx≥0min C^Tx\\s.t. Ax ...

  6. 变分法求解最大熵时变拉格朗日对偶

    变分法求解最大熵时变拉格朗日对偶 一般拉格朗日对偶 min⁡xf0(x)\min\limits_{x} f_0(x)xmin​f0​(x) s.t.fi(x)⩽0\mathrm{s.t.} ~ f_i ...

  7. 【精简推导】支持向量机(拉格朗日乘子法、对偶函数、KKT条件)

    支持向量机,就是通过找出边际最大的决策边界,来对数据进行分类的分类器.因此,支持向量分类器又叫做最大边际分类器. (疯狂暗示:这是一个最优化问题啊~) 直接上目标求解函数: 这个式子是支持向量机基本形 ...

  8. 凸优化学习-(十八)对偶性Duality 拉格朗日函数与对偶函数

    凸优化学习 对偶性是凸优化学习的核心,重中之重. 学习笔记 一.拉格朗日函数与对偶函数 对于一个普通优化问题: min⁡f0(x)s.t.fi(x)≤0i=1⋯mhi(x)=0i=1⋯p\begin{ ...

  9. 个人总结 :SVM 与 拉格朗日函数、对偶问题 和 KKT条件 以及 SMO算法

    提到SVM,可能首先想到的是令人头大的公式推导,通过确定思想,公式等式转化,拉格朗日函数,求梯度,约束变换,KKT.SMO...最后终于得到我们的最优解.而在这其中,不免作为核心的就是拉格朗日函数以及 ...

最新文章

  1. 工作之余如何提高个人技术水平
  2. 《网站设计 开发 维护 推广 从入门到精通》—— 2.3 页面设计创意思维
  3. win8以上windows系统eclipse环境下图片显示乱码问题解决
  4. 一个栈输入序列为1,2,3,4,5,则下列序列中不可能是栈的输出序列是?
  5. 中的挂起是什么意思_客厅适合挂什么字画 要想有品位就挂这样的
  6. 【Vue】 element ui 引入第三方图标
  7. python怎样打开加密的文件_如何用Python 加密文件
  8. 本机未装Oracle数据库时Navicat for Oracle 报错:Cannot create oci environment 原因分析及解决方案
  9. iOS NSNumber转化NSString之description
  10. git 创建远程仓库
  11. 微信小程序开发基础知识总结
  12. [UnityShader3]去色效果
  13. 将磁盘分区标记为活动分区后取消
  14. 斗鱼直播弹幕python_调用斗鱼API爬取直播间弹幕信息(用户昵称及弹幕内容)
  15. 硬件和软件的32位与64位区别
  16. 额。。万恶之源就是c
  17. 策划好一场活动的要点和方法有哪些?
  18. 时间晶体,一种曾被认为是无法存在的物质,被创造出来了吗?
  19. 基于51单片机定时器计数+74HC595移位寄存器+8位数码管时钟
  20. 拿破仑最欣赏的数学家,师从拉格朗日,撕逼泊松,一生痴迷热学最后却死于热学...

热门文章

  1. SQL Server中事务日志已满的原因以及解决办法
  2. win10如何修改hosts文件?
  3. wind10电脑连接“华为蓝牙耳机”
  4. 相亲与恋爱套路不一样:相亲有哪些需要注意的?
  5. 又有大佬加入! 「3点钟区块链」之大年初五:不眠夜共襄区块链应用落地 ! (附96小时实录)
  6. 蓝桥杯-K好数(详解易懂)java
  7. 想要学习Java,没有英语基础可以学吗?
  8. 关于css中line-height(行高)设置无效的问题
  9. 【离散数学】二元关系
  10. 潜在客户生成,应该如何做?