统计学习方法——拉格朗日对偶性

摘自——李航老师《统计学习方法》附录

在学习SVM时,感觉对偶性有点难以理解,在看了《统计学习方法》和一些博客后,写了这篇笔记。主要是对于含有不等式约束的情况下,可以应用KKT(库恩-塔克)条件的内容。
以下附上一些博客链接:
https://blog.csdn.net/xianlingmao/article/details/7919597
https://www.cnblogs.com/xxrxxr/p/7536131.html
https://blog.csdn.net/wangkr111/article/details/21170809?utm_source=app

作用

利用拉格朗日对偶性可以将原始问题转化为对偶问题,先求得对偶问题的解,进而得到原始问题的解。

原始问题

对于含有不等式约束的优化问题,原始最优化问题如下:
在这里插入图片描述
对此,常用的方法是KKT条件,即,把所有的不等式约束、等式约束和目标函数写为广义拉格朗日函数
在这里插入图片描述
其中,x=(x¹,x²,…,xⁿ)T∈Rⁿ,αi,βj是拉格朗日乘子,αi≥0,
在这里插入图片描述
对上式的理解:
在这里插入图片描述
所以当αi*ci=0时, L(x,α,β)最大,且值为f(x),此时,广义拉格朗日函数等价于原始问题,即
在这里插入图片描述
所以原始问题为:
在这里插入图片描述
所以,原始最优化问题等价于:
在这里插入图片描述
上述等价问题称为广义拉格朗日函数的极小极大问题,所以,我们把原始最优化问题表示为广义拉格朗日函数的极小极大问题。

为了后续讨论方便,定义原始问题的最优值
在这里插入图片描述

对偶问题

定义原始问题的对偶问题:
在这里插入图片描述
上式称为广义拉格朗日函数的极大极小问题

再定义对偶问题的最优值:
在这里插入图片描述

原始问题和对偶问题的关系

定理1:若原始问题和对偶问题都有最优值,则

在这里插入图片描述
证明:
易知, 对于任意的α,β和x,有下面的条件成立:
在这里插入图片描述
又因为原始问题和对偶问题都有最优值,所以:
在这里插入图片描述
即,
在这里插入图片描述

定理2:附上《统计学习方法》截图:

在这里插入图片描述

定理3:附上《统计学习方法》截图:

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
拉格朗日对偶法是一种优化算法,用于求解带有约束条件的优化问题。它通过构建拉格朗日函数,并通过对偶问题的求解来近似原始问题的最优解。 在Matlab中,可以使用优化工具箱中的函数来实现拉格朗日对偶法。具体步骤如下: 1. 定义原始问题的目标函数和约束条件。 2. 构建拉格朗日函数,将约束条件引入目标函数中,并引入拉格朗日乘子。 3. 求解拉格朗日函数的最小值,得到对偶问题。 4. 求解对偶问题,得到对偶变量的最优解。 5. 根据对偶变量的最优解,计算原始问题的最优解。 以下是一个简单的示例代码,演示了如何使用Matlab实现拉格朗日对偶法: ```matlab % 定义原始问题的目标函数和约束条件 f = @(x) x(1)^2 + x(2)^2; % 目标函数 g1 = @(x) x(1) + x(2) - 1; % 约束条件1 g2 = @(x) x(1) - x(2) - 1; % 约束条件2 % 构建拉格朗日函数 syms lambda1 lambda2; L = f([x1; x2]) + lambda1 * g1([x1; x2]) + lambda2 * g2([x1; x2]); % 求解拉格朗日函数的最小值,得到对偶问题 dual_problem = min(L, [lambda1, lambda2]); % 求解对偶问题,得到对偶变量的最优解 dual_solution = solve(dual_problem); % 根据对偶变量的最优解,计算原始问题的最优解 x_optimal = [x1; x2]; x_optimal = subs(x_optimal, [lambda1, lambda2], [dual_solution.lambda1, dual_solution.lambda2]); optimal_value = f(x_optimal); % 输出结果 disp("原始问题的最优解:"); disp(x_optimal); disp("原始问题的最优值:"); disp(optimal_value); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值