1 与原点的最短距离

假如有方程:

图像是这个样子滴:

现在我们想求其上的点与原点的最短距离:

这里介绍一种解题思路。首先,与原点距离为 的点全部在半径为 的圆上:

那么,我们逐渐扩大圆的半径:

显然,第一次与 相交的点就是距离原点最近的点:

此时,圆和曲线相切,也就是在该点切线相同:

至此,我们分析出了:

2 等高线

为了继续解题,需要引入等高线。这些同心圆:

可以看作函数 的等高线:

根据梯度的性质(关于梯度可以查看如何通俗地理解梯度?),梯度向量:

是等高线的法线:

另外一个函数 的等高线为:

之前的曲线 就是其中值为3的等高线:

,因此,梯度向量:

也垂直于等高线 :

梯度向量是等高线的法线,更准确地表述是:

3 拉格朗日乘子法

3.1 求解

根据之前的两个分析:

综合可知,在相切点,圆的梯度向量和曲线的梯度向量平行:

也就是梯度向量平行,用数学符号表示为:

还必须引入 这个条件,否则这么多等高线,不知道指的是哪一根:

因此联立方程:

求一下试试:

这就是拉格朗日乘子法。

3.2 定义

要求函数 在 约束下的极值这种问题可以表示为:

 意思是subject to,服从于,约束于的意思。

可以列出方程组进行求解:

用这个定义来翻译下刚才的例子,要求:

令:

求:

联立方程进行求解:

3.3 变形

这个定义还有种变形也比较常见,要求:

定义:

求解下面方程组即可得到答案:

把等式左边的偏导算出来就和上面的定义是一样的了。

3.4 多个约束条件

如果增加一个约束条件呢?比如说:

求:

从图上看约束条件是这样的:

很显然所求的距离是这样的:

那这三者的法线又有什么关系呢? 的法线是 和 的法线的线性组合:

假设:

那么线性组合就表示为:

联立方程:

即可求解。

往更高纬度走的话,多约束条件的情况下,问题变为了 围成的曲线 和 相切,直观上看 必然在 张成的空间中:

这点的严格性这里就不证明了。

文章最新版本在(有可能会有后续更新):如何通俗地理解拉格朗日乘子法?

如何理解拉格朗日乘子法?相关推荐

  1. 转 机器学习系列 08:深入理解拉格朗日乘子法、KKT 条件和拉格朗日对偶性

    深度理解拉格朗日乘子法.KKT条件与线性规划对偶理论的微妙关系 https://blog.csdn.net/benzhujie1245com/article/details/85270058?utm_ ...

  2. 深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件

    在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和KKT(Karush Kuhn Tucker)条件是两种最常用的方法.在有等式约束时使用拉格朗日乘子法,在有不等约束时使用 ...

  3. 深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件(转)

    关于鞍点的定义可以参考论文 <鞍点定理在Lagrange乘数法上的应用> 下面这篇文章的重点是是提到了鞍点 在学习之前,先说一些题外话,由于博主学习模式识别没多久,所以可能对许多问题还没有 ...

  4. 【数学】拉格朗日乘子法(Lagrange Multiplier) 和KKT条件理解

    转载 目录 动机 简介 一. 拉格朗日乘子法(Lagrange Multiplier) 和KKT条件 (a) 拉格朗日乘子法(Lagrange Multiplier) (b) KKT条件 二. 为什么 ...

  5. 【数学基础】拉格朗日乘子法

    概述 在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和KKT(Karush Kuhn Tucker)条件是两种最常用的方法.在有等式约束时使用拉格朗日乘子法,在有不等约束 ...

  6. 【java机器学习】支持向量机之拉格朗日乘子法解释

    什么是拉格朗日乘子法 按照维基百科的定义,拉格朗日乘数法是一种寻找多元函数在其变量受到一个或多个条件的约束时的极值的方法.用数学式子表达为: 简单理解就是,我们要在满足 这个等式的前提下,求 函数的最 ...

  7. 非线性规划的拉格朗日乘子法python编程python包编程

    非线性规划的拉格朗日乘子法&python编程&python包编程 一.拉格朗日乘子法 1.1 拉格朗日乘子法定义 1.2 KKT条件定义 1.3 拉格朗日乘子法手工推导例题 二.Pyt ...

  8. 求解最优化问题的方法:拉格朗日乘子法(Lagrange Multiplier) 和KKT条件

    在求解最优化问题中,拉格朗日乘子法(Lagrange Multiplier)和KKT(Karush Kuhn Tucker)条件是两种最常用的方法.在有等式约束时使用拉格朗日乘子法,在有不等约束时使用 ...

  9. 拉格朗日乘子法:写得很通俗的文章

    拉格朗日乘子法            最近在学习 SVM 的过程中,遇到关于优化理论中拉格朗日乘子法的知识,本文是根据几篇文章总结得来的笔记.由于是刚刚接触,难免存在错误,还望指出?.另外,本文不会聊 ...

最新文章

  1. WildFly 报错 java.lang.NoClassDefFoundError
  2. MyBatisPlus插件扩展_PaginationInterceptor分页插件的使用
  3. find server/ -type d|xargs -I {} echo mkdir /root/{}
  4. 递归与分治——斐波那契数列非递归,递归,与优化后的递归算法
  5. POJ-3281 Dining 网络流最大流
  6. 查询2021高考成绩位次,云南一分一段表查询2021-云南高考位次查询(文科、理科)...
  7. java json 工具类_Java中JSON处理工具类使用详解
  8. ZooKeeper在分布式应用中的作用
  9. Http请求中Content-Type
  10. BZOJ 1030 [JSOI2007]文本生成器(ac自动机+dp)
  11. XRD结果如何做定量相分析
  12. MySQL密码正确却无法登录
  13. Component template should contain exactly one root element. If you are using v-if on multiple eleme
  14. 大数据课程作业(一)
  15. OpenCV-Python无法直接读取gif格式的图片,可用PIL读取
  16. 提升方法(Boosting)
  17. Win10使用FTP实现手机访问电脑FTP服务
  18. 根据简化真值表绘制电路
  19. window操作系统下的句柄机制说明
  20. 职业学校计算机专业总结,职业学校期末总结范文

热门文章

  1. jsp java局部刷新_jsp怎么实现局部刷新
  2. 20年+资深审稿人:什么情况下建议文章大小修、拒稿或接收?
  3. 分布式网络爬虫实例——获取静态数据和动态数据
  4. 滴滴顺风车如上线,现有顺风车企业压力山大
  5. Week8 作业——B - 猫猫向前冲
  6. 利用栈的基本操作,将一个十进制数转换成8进制数
  7. python基础篇大合集,进程、装饰器、列表详解篇
  8. c# 蓝牙虚拟串口_C# 虚拟串口通信
  9. 关于tcc、tlink的编译链接机制的研究
  10. 迭代器模式-前端设计模式