今天开始学Convex Optimization:第3章(part2) Optimization basics

本章来自Ryan Tibshirani的Convex Optimization: Fall 2019课程的Convexity II: Optimization basics小节。

先看一个比较容易理解的概念:最优解组成的集合是一个convex set在这里插入图片描述

如果强凸的函数f,最优解是唯一的:
在这里插入图片描述

重写约束条件

限制条件在形式上也可以写成这样的形式(Indicator函数的形式很常见)
在这里插入图片描述

对凸函数来说,Local min就是Global min
在这里插入图片描述

下面是几个基本技巧:

部分优化:

如果有两个(多个)变量的优化函数,我们可以先求一个变量的最优解(表示成另一个变量的函数),然后优化这个最优解函数。

在这里插入图片描述

消除等式约束:

其实有点复杂,不是很明白动机。把x转化为My+x0,要求M的列空间等于A的零空间。这里可以稍微补充一句关于线性代数中矩阵列空间和零空间的概念[2][3][4]。

  • 列空间:列空间是指由矩阵A的列向量线性组合而成,因此称为该矩阵的列空间。Col(A) = span(v1,v2,…,vn),其中vi是A的列向量。
  • 零空间:矩阵A的零空间就Ax=0的解的集合,是方程特解的任意线性组合。记为Null(A)。
    在这里插入图片描述

引入Slack变量:

让不等式变方向,并且不是一个函数而是一个变量。但是多了一个等式约束。

在这里插入图片描述

例子: SVM的hinge loss form

SVM如果引入松弛因子,就可以写成hinge function形式:
在这里插入图片描述

凸函数的一阶最优条件(First-order optimality conditions)

对于一个凸优化问题,有定义域C,如果函数 f f f可微,那么一个点 x x x是最优点,当且仅当:
∇ f ( x ) T ( y − x ) ≥ 0 , ∀ y ∈ C \nabla f(x)^T (y-x) \geq 0, \forall y \in C f(x)T(yx)0yC

在无限制优化问题中,unconstrained optimization, 该最优条件退化为 ∇ f ( x ) = 0 \nabla f(x) = 0 f(x)=0
在这里插入图片描述

例子:二次优化

因为是unconstrained optimization, 最优条件为 ∇ f ( x ) = 0 \nabla f(x) = 0 f(x)=0。根据 Q Q Q是不是正定矩阵,有一些不同的解,如下:

(其中,如果 Q Q Q是正定矩阵,虽然可以得到一个closed form解,但是我理解除非矩阵规模很小,否则求逆的代价还是太大了,因此还是会选择一些其他迭代式的二次优化方法来求解,而不是直接求逆。)
在这里插入图片描述

参考资料

[1] http://www.stat.cmu.edu/~ryantibs/convexopt/scribes/convex-opt-scribed.pdf
[2] https://blog.csdn.net/tengweitw/article/details/40039373
[3] 线性子空间,零空间与列空间, https://www.q-math.com/?page_id=1430
[4] 线性代数(十) : 矩阵的列空间与零空间, https://www.cnblogs.com/wuoshiwzm/p/7339553.html

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页