0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习笔记之优化-拉格朗日乘子法和对偶分解

jf_78858299 来源:人工智能大讲堂 作者:人工智能大讲堂 2023-05-30 16:47 次阅读

优化是机器学习中的关键步骤。在这个机器学习系列中,我们将简要介绍优化问题,然后探讨两种特定的优化方法,即拉格朗日乘子和对偶分解。这两种方法在机器学习、强化学习和图模型中非常流行。

优化问题

优化问题通常定义为:

图片

优化问题包含一个目标函数和可选的不等式和等式约束。一般的优化问题是NP难问题。但是,很多类别的凸优化问题可以在多项式时间内解决。当我们将f(x₁)和f(x₂)相连形成下方的红线时,如果f是一个凸函数,那么对于它们之间的点,红线总是在f的上方,即 yᵢ ≥ f(xᵢ)。

图片

一个凸优化问题具有凸目标函数和凸可行集的特征。可行集是满足约束条件的x的集合。在凸集中,集合中两个点之间的任何值也必须属于凸集。

图片

从另一个角度来看,在凸优化问题中,f和l是凸函数,

图片

并且等式约束是仿射函数,其一般形式为:

图片

顺带一提,仿射函数是凸函数,这一点我们后面会用到。

在机器学习中,线性回归的目标函数通常表示为最小二乘误差。最小二乘优化问题已经得到广泛研究。有许多数值方法可以对它们进行求解,除非达到了某些可扩展性限制,否则它们可以通过解析方法(正规方程)解决。这在优化问题中是相对容易解决的问题。

图片

否则,如果机器学习问题可以表示为线性规划问题,我们可以应用线性规划。这也已经得到了广泛的研究。线性规划中x的可行集是一个多面体。

图片

在我们上面的例子中,虚线是目标函数的等高线。最优解x*将是其中一个顶点。

一般来说,如果问题是凸优化问题,我们可以通过数值方法来解决。一个函数是凸函数,如果它的二阶导数对于所有x都是正的。

图片

在机器学习中,我们经常将问题转换、近似或放宽为这些更简单的优化模型之一。

拉格朗日乘子

让我们专注于寻找一个一般优化问题的解。考虑代价函数为f=x+y,等式约束为h: x² + y² = 25,如下图所示的红色圆圈。

图片

为了满足约束条件,我们沿着约束面法线的正交方向移动,即垂直于∇x h。为了降低代价,我们选择沿着f的负梯度方向移动。当我们无法进一步移动以降低代价时,就达到了最优点。这发生在∇h与代价函数的梯度对齐时。

图片

i.e.,

图片

h(x) = 0也意味着-h(x) = 0。λ的符号取决于h的定义方式。因此,λ可以是正的、负的或零。

接下来,我们定义拉格朗日函数为:

图片

如果我们分别对拉格朗日函数关于x和λ求导,并将它们设置为零,如下所示,我们就可以强制执行前面描述的最优点以及等式约束。

图片

因此,通过找到关于x和λ的拉格朗日函数的最优点,我们可以确定在强制执行等式约束的情况下的最优解。我们也可以在拉格朗日函数中有多个约束和不等式约束。优化问题的形式将为:

图片

拉格朗日函数的定义如下:

图片

现在不等式约束要求最优点在阴影区域内(包括边界)。当解是最优时,f和l的梯度将具有相同的方向,即αᵢ ≥ 0。

图片

让我们再对不等式约束进行另一个观察。下面的左图表示一个具有最优解为该圆圈中心的代价函数f。

图片

在中间的图中,我们为优化问题添加了一个不等式约束。但是,这个约束是多余的,因为无约束最优点已经满足这个约束条件。因此,αᵢ可以简单地为零,表示它是多余的。

在右边的图中,无约束最优解落在l的外面。我们必须增加代价(红色圆圈)直到它与l相交。对应的最低代价将使得约束l等于0。

因此,αᵢ lⱼ(x) 总是等于0。

图片

例子

让我们最大化f(x, y) = x + y,满足x² + y² = 32。

拉格朗日函数为:

图片

为了解决这个优化问题,我们需要分别对

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 优化
    +关注

    关注

    0

    文章

    220

    浏览量

    23715
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61309
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130564
收藏 人收藏

    评论

    相关推荐

    Matlab采用障碍及原对偶内点法解决不等式约束凸优化程序

    Matlab采用障碍及原对偶内点法解决不等式约束凸优化问题[code]%%%%%%%%%%%%%凸优化 二次规划的障碍 和 原
    发表于 03-06 15:26

    机器学习基础|深入理解拉格朗日乘子

    拉格朗日乘子无疑是最优化理论中最重要的一个方法。但是现在网上并没有很好的完整介绍整个方法的文章。所以小编整理了如下文章,希望能博得大家一赞。在求取有约束条件的优化问题时,
    发表于 12-13 20:25

    《概率机器人》第I部分和第II部分学习笔记

    《概率机器人》学习笔记短序一二
    发表于 04-26 15:17

    机器学习的朴素贝叶斯讲解

    秦刚刚的机器学习成长之路朴素贝叶斯
    发表于 05-15 14:41

    拉格朗日乘子和KKT条件相关知识概述

    拉格朗日乘子和KKT条件
    发表于 07-03 11:02

    优化第二章26对偶锥与广义不等式

    优化第二章凸集 26对偶锥与广义不等式
    发表于 05-08 14:36

    吴恩达机器学习笔记分享

    【吴恩达机器学习笔记】第八章:正则化
    发表于 05-25 08:49

    机器学习基石笔记

    3)机器学习基石笔记 Lecture3:Types of Learning
    发表于 05-26 14:53

    机器学习基石笔记分享

    机器学习基石笔记01
    发表于 06-03 08:14

    吴恩达机器学习笔记分享

    吴恩达机器学习笔记 —— 1 绪论:初识机器学习
    发表于 06-05 17:42

    斯坦福机器学习公开课笔记单变量线性回归

    斯坦福机器学习公开课笔记 一 --单变量线性回归
    发表于 06-11 13:53

    机器学习笔记BP推导

    机器学习笔记:BP推导
    发表于 06-15 17:11

    机器学习的个人学习笔记

    本文档的主要内容详细介绍的是机器学习的个人学习笔记免费下载。
    发表于 03-01 09:28 16次下载
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>的个人<b class='flag-5'>学习</b><b class='flag-5'>笔记</b>

    python机器学习笔记资料免费下载

    本文档的主要内容详细介绍的是python机器学习笔记资料免费python机器学习笔记资料免费下载
    发表于 03-01 10:09 36次下载

    支持向量机(原问题和对偶问题)

    本文主要介绍原问题(PRIME PROBLEM)和对偶问题(DUAL PROBLEM),支持向量机优化问题可通过原问题向对偶问题的转化求解。
    的头像 发表于 05-25 09:31 781次阅读