机器学习的优化算法

153 阅读7分钟

第六章:优化问题

照片:Dennis IrorereonUnsplash

前一章,即第五章:解决优化问题的前提条件的链接在这里。第六章是本系列的一部分,从这里我们开始研究真正的优化问题,了解优化是怎么回事。在前面几章中,我们只研究了能帮助我们的概念,帮助我们更好地理解优化。我觉得这是优化的有趣部分开始的地方。在这一章中,我们将研究。

  • 优化问题的标准形式
  • 可行点和最优点
  • 全局和局部最优点
  • 凸形优化问题
  • 一阶最优性条件
  • 凸优化问题的特殊情况
  • 等效的凸优化问题
  • 线性和二次优化问题
  • 一些重要的指向性问题
  • 一些问题的解决

我们在这里看到了优化问题的一般形式 第一章:简介 这里。现在,我们将再次访问一般形式,但以更详细的方式。所以,优化问题的一般或标准形式是由

注意,目标函数是我们要最小化的函数,f(x)的下限是指f(x)的最低值,优化问题的域是目标函数的域与平等和不平等约束的域的交点。但是,这里可能出现的问题是,如果问题不是最小化目标函数,而是最大化它。因此,在这种情况下,我们仍然必须将问题带入标准的优化形式,以便能够以适当的方式应用优化属性。那么,我们如何将一个最大化问题带入标准的优化形式呢?其实这很简单。请看下面。

请注意,所有的优化问题不一定都是凸优化问题。

现在,让我们看看什么是可行的点。任何位于优化问题域内的点,即位于目标函数域内且满足约束条件的点,都被称为可行点。而且,我们可以说,如果一个优化问题至少有一个可行点,它就是可行的。所有可行点的集合被称为可行集。这个集合被表示为。

接下来,我们将看到什么是最优点。我们说,如果点x是最优的。

现在我们已经了解了什么是优化问题,我们将看看凸面优化问题。

解决方案。对于凸优化问题,目标函数和不等式约束(我们称之为函数f(x))需要是凸函数,平等约束(我们称之为函数g(x))应该是一个仿生函数。目标函数肯定是一个凸函数,因为它具有抛物面的形式。然而,在检查f(x)的Hessian矩阵时,我们发现它不是正半无限的(你可以自己做计算和检查)。另外,g(x)不是一个仿生函数。因此,这个问题不是一个凸优化问题。然而,这并不是故事的结束。我们肯定可以把这个问题变成一个凸优化问题。

现在我们已经正确理解了凸优化问题应该是什么样子,让我们看看凸可微函数的一阶最优条件是什么。在一个同样是可微的凸优化问题中,当且仅当x是可行的并且满足以下条件时,x是最优的。

可行集边界上的最优点(图片由作者提供

在上图中,X是一个函数的所有可行点的集合。从几何学上讲,最优点x位于可行集的边界上。X点的梯度将形成一个支持可行点的超平面。这是因为我们在第三章知道,一个集合的支持超平面是一个超平面,其中集合中的所有点都位于它的一边。因此,我们可以说,如果x是最优的,∇f(x)就是一个支持最优集合的超平面。

嗯,这个条件肯定有一个数学证明,但我们真的不需要去研究。另外,请注意,如果x是最优点,那么在约束条件下,f(x)应该有目标函数的最优值。

在本节中,我们将研究凸优化问题的一些特殊情况。这些将是无约束的凸优化问题,平等约束的凸优化问题和非负正数上的最小化。那么,让我们从第一种情况开始。

  1. 无约束的凸优化问题: 这实际上是非常简单的。请看下面。

2.平等约束的凸优化问题: 在这种情况下,凸优化问题只有一个平等约束。这类问题的一个例子如下所示。

最小化f(x);服从于。Ax = b

3.3.非负正数上的最小化。需 要注意的是,非负正交基本上意味着N维空间中的非负区域。这种特殊情况将由。

现在我们已经看到了什么是凸优化问题,让我们来看看等价的凸问题。 如果一个问题的解决方案很容易从另一个问题的解决方案中获得,反之亦然,那么两个问题就是等价的(非正式的)。在这种情况下,一些有助于保持凸性的常见变换是。

3.引入松弛变量。松弛变量是被引入不等式约束的变量,使其成为平等约束。这是以下述方式给出的。

因此,我们已经看到了等价凸优化问题是如何帮助保持凸性的,即当我们使用它们时,问题的凸性不会丢失。

在本节中,我们将研究一些类别的凸优化问题。我们将研究线性和二次优化问题。

需要注意的是,这种情况下的目标和约束函数都是仿射函数。此外,这种情况下的可行集是一个多面体。

需要注意的是,目标将不是仿射函数,而是二次函数。另一方面,这种情况下的约束函数都是仿射函数。

请注意,我们将在以后的章节中详细研究这些问题。至此,本章的理论部分就结束了。

让我们看看在我们思考凸集和函数时要记住的一些重要指针。

  • 如果一个函数的所有子级集都是凸的,那么这个函数就不必是凸的。例如,一个准凸函数的子级集是凸的,但函数本身可能不是凸的。
  • 准凸函数的上图不是凸的,因为如果一个函数的上图需要是一个凸集,那么这个函数就必须是一个凸函数。
  • 如果一个平方矩阵的所有元素都是正的,那么该函数可以是正半定或正定的。
  • 凸函数不可能在非凸集上被定义。
  • 凸优化问题不一定有最优解,尤其是在问题不可行的情况下。

现在,让我们来看看一些问题。

问题1。

问题2:

下面的问题是一个凸优化问题吗?如果不是,请将该问题转化为凸优化问题,并找到函数的最优值、最优点并绘制出可行集。

可行集的绘图(图片由作者提供

上面的加粗线既满足约束条件又满足目标函数。因此,它是可行集。

就这样,我们来到了本章的结尾。


机器学习的优化算法》最初发表在《走向数据科学》杂志上,人们通过强调和回应这个故事来继续对话。