机器学习笔记之最优化理论与方法(二)凸集的简单认识(上)

这篇具有很好参考价值的文章主要介绍了机器学习笔记之最优化理论与方法(二)凸集的简单认识(上)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引言

本节将介绍关于凸集的基本信息,包括概念基本性质以及常见凸集。

凸优化问题与凸集合凸函数的关系

最优化问题范畴中,凸优化问题是一类常见的、并且性质优秀的优化问题。一些情况下可以通过凸优化问题来解决非凸优化问题

凸集合与凸函数决定了该优化问题是凸优化问题。具体表现在:
最优化问题概述中我们介绍了可行域的概念。它可能并不仅仅被定义域空间描述,并且也可能伴随着约束条件的限制。在这里为了简化问题,仅观察定义域空间的描述。

  • 目标函数 f ( x ) f(x) f(x)是一个凸函数
  • x x x可行域 S ⇒ x ∈ S \mathcal S \Rightarrow x \in \mathcal S SxS是一个凸集合

{ min ⁡ f ( x ) s.t.  x ∈ S \begin{cases} \min f(x) \\ \text{s.t. } x \in \mathcal S \end{cases} {minf(x)s.t. xS

凸优化问题简单示例

这里通过两个简单示例描述凸优化相关的优秀性质

  • 关于一元函数 G ( x ) \mathcal G(x) G(x)的最小化问题数学符号表示如下:
    { min ⁡ G ( x ) s.t.  x ∈ [ a , b ) \begin{cases} \min \mathcal G(x) \\ \text{s.t. } x \in [a,b) \end{cases} {minG(x)s.t. x[a,b)
  • 假设关于 G ( x ) \mathcal G(x) G(x)函数图像表示如下:
    机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥

观察左侧函数图像,在 [ a , b ) [a,b) [a,b)区间内,可以找到该函数的最小点,并且该点是一个平稳点——在该点处函数的导数 0 0 0

同时观察右侧函数图像,同样可以找到该函数的最小点。只不过区别于左侧函数图像的是:该区间内函数的平稳点存在若干个

  • 观察第一、第三个红色点,它们都是其各自邻域内的最小值,也称作局部最优解;其中第一个红色点不仅是局部最优解,而且是 [ a , b ) [a,b) [a,b)范围内的全局最优解
    但这些红色点也同样都是平稳点,也就是说:仅通过平稳点无法确定其是否为全局最优解
  • 再回顾左侧函数图像:它的局部最优解就是全局最优解,并且平稳点对应的解就是全局最优解
    这是凸函数的重要性质;相反地,右侧图像描述的函数被称作非凸函数

凸集的简单示例

已知函数: G ( x 1 , x 2 ) = x 1 2 + x 2 2 \mathcal G(x_1,x_2) = x_1^2 + x_2^2 G(x1,x2)=x12+x22,想要求解在可行域 S \mathcal S S关于 G ( x 1 , x 2 ) \mathcal G(x_1,x_2) G(x1,x2)最小值。对应优化问题表示如下:
{ min ⁡ G ( x 1 , x 2 ) = x 1 2 + x 2 2 s.t.  ( x 1 , x 2 ) ∈ S \begin{cases} \min \mathcal G(x_1,x_2) = x_1^2 + x_2^2 \\ \text{s.t. } (x_1,x_2) \in \mathcal S \end{cases} {minG(x1,x2)=x12+x22s.t. (x1,x2)S
现在存在两个可行域 S 1 , S 2 \mathcal S_1,\mathcal S_2 S1,S2,对应图像表示如下:
机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥
从几何角度观察,函数 G ( x 1 , x 2 ) \mathcal G(x_1,x_2) G(x1,x2)描述的图像形状是圆,上述图像中的虚线表示函数图像可能出现的等值线

  • 观察左侧图像,在可行域 S 1 \mathcal S_1 S1范围内取到合适的 x ∗ ( x 1 ∗ , x 2 ∗ ) x^*(x_1^*,x_2^*) x(x1,x2),使得 G ( x 1 ∗ , x 2 ∗ ) \mathcal G(x_1^*,x_2^*) G(x1,x2)达到最小,很明显,是上述的红色点。作为最优解的 x ∗ x^* x,可以发现: x ∗ x^* x点所在位置是函数 G ( x 1 , x 2 ) \mathcal G(x_1,x_2) G(x1,x2)与可行域 S 1 \mathcal S_1 S1描述范围的切点;也就是说: x ∗ x^* x点处的负梯度方向 − ∇ G ( x 1 ∗ , x 2 ∗ ) -\nabla \mathcal G(x_1^*,x_2^*) G(x1,x2)与切线方向垂直
    其中红色箭头表示负梯度方向。关于负梯度方向,详见线搜索方法(方向角度)。

    这意味着:从可行域 S 1 \mathcal S_1 S1范围内任取一点 x x x,那么向量 x − x ∗ x - x^* xx负梯度方向之间的夹角总是 ≥ 9 0 o \geq 90^o 90o。如果用向量内积的形式表示,必然有:
    这里的 G ( x ∗ ) \mathcal G(x^*) G(x)表示 ∇ G ( x 1 ∗ , x 2 ∗ ) \nabla \mathcal G(x_1^*,x_2^*) G(x1,x2),后续同理。
    − [ ∇ G ( x ∗ ) ] T ( x − x ∗ ) ≤ 0 ∀ x ∈ S 1 -[\nabla \mathcal G(x^*)]^T(x - x^*) \leq 0 \quad \forall x \in \mathcal S_1 [G(x)]T(xx)0xS1
    最终归纳得到如下等价条件
    x ∗  is Optimal  ⇔ − [ ∇ G ( x ∗ ) ] T ( x − x ∗ ) ≤ 0 ∀ x ∈ S 1 x^* \text{ is Optimal } \Leftrightarrow -[\nabla \mathcal G(x^*)]^T(x - x^*) \leq 0 \quad \forall x \in \mathcal S_1 x is Optimal [G(x)]T(xx)0xS1

  • 观察右侧图像,可以按照上述寻找切点的方式去寻找最优解。假设找到了右侧的红色点。但这个最优解并不满足上述的等价条件
    见下图中右侧两个红色箭头明显是一个锐角
    机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥

综上,可行域内任意一点 x x x最优解 x ∗ x^* x之间满足如上等价条件,那么该可行域是凸集;反之为非凸集。从而将可行域 S 1 \mathcal S_1 S1称为凸集;而可行域 S 2 \mathcal S_2 S2称作非凸集。相反,如果一个可行域被确定是凸集,那么它同样存在一些优秀性质:

  • 凸集中根据上述等价条件找到的最优解一定是全局最优解
  • 通过求解导数/梯度获取的平稳定一定是最值点

基本定义:凸集

关于凸集 ( Convex Set ) (\text{Convex Set}) (Convex Set)的定义表示如下:
∀ x , y ∈ C ; ∀ λ ∈ [ 0 , 1 ] ⇒ λ ⋅ x + ( 1 − λ ) ⋅ y ∈ C \forall x,y \in \mathcal C;\forall \lambda \in [0,1] \Rightarrow \lambda \cdot x + (1 - \lambda) \cdot y \in \mathcal C x,yC;λ[0,1]λx+(1λ)yC
文字的描述可简单表述为:可行域 C \mathcal C C中任意两点间的连线,其连线上的任一点仍属于该可行域 C \mathcal C C。示例图像表示如下:

  • 第二张图也被称作多面体
  • 很明显,最后一个图描述的可行域不是凸集,其连线上的点并不全在可行域上。
    机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥

关于凸集性质的等价条件,凸组合,凸包

关于凸集合性质存在如下等价条件:如果某可行域 C \mathcal C C是一个凸集,对于 ∀ x 1 , x 2 , ⋯   , x k ∈ C \forall x_1,x_2,\cdots,x_k \in \mathcal C x1,x2,,xkC,且对于 ∀ λ 1 , λ 2 , ⋯   , λ k ≥ 0 \forall \lambda_1,\lambda_2,\cdots,\lambda_k \geq0 λ1,λ2,,λk0 ∑ i = 1 k λ i = 1 \begin{aligned}\sum_{i=1}^{k} \lambda_i = 1\end{aligned} i=1kλi=1,必然有:
反之同样可以推出 C \mathcal C C是一个凸集。
∑ i = 1 k λ i ⋅ x i ∈ C \sum_{i=1}^k \lambda_i \cdot x_i \in \mathcal C i=1kλixiC
这里以 k = 3 k=3 k=3为例。对于 x 1 , x 2 , x 3 ∈ C , ∀ λ 1 , λ 2 , λ 3 ≥ 0 x_1,x_2,x_3 \in \mathcal C, \forall \lambda_1,\lambda_2,\lambda_3 \geq 0 x1,x2,x3C,λ1,λ2,λ30 λ 1 + λ 2 + λ 3 = 1 \lambda_1+\lambda_2 + \lambda_3 = 1 λ1+λ2+λ3=1,对应 λ 1 x 1 + λ 2 x 2 + λ 3 x 3 \lambda_1x_1 + \lambda_2x_2 + \lambda_3x_3 λ1x1+λ2x2+λ3x3在可行域 C \mathcal C C中的描述表示为: x 1 , x 2 , x 3 x_1,x_2,x_3 x1,x2,x3围成的三角形的范围
显然,该三角形围成的范围是可行域 C \mathcal C C的一部分。
机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥
对于表达式 ∑ i = 1 k λ i ⋅ x i \begin{aligned}\sum_{i=1}^k \lambda_i \cdot x_i\end{aligned} i=1kλixi,它称作 x 1 , x 2 , ⋯   , x k x_1,x_2,\cdots,x_k x1,x2,,xk凸组合 ( Convex Combination ) (\text{Convex Combination}) (Convex Combination)
条件不能漏掉~ λ i ( i = 1 , 2 , ⋯   , k ) ≥ 0 \lambda_i(i=1,2,\cdots,k) \geq 0 λi(i=1,2,,k)0 ∑ i = 1 k λ i = 1 \sum_{i=1}^k \lambda_i = 1 i=1kλi=1

相应的组合概念如:
很明显,从关于 λ i ( i = 1 , 2 , ⋯   , k ) \lambda_i(i=1,2,\cdots,k) λi(i=1,2,,k)的约束程度角度,有:凸组合 > > > 仿射组合;非负组合 > > > 线性组合

  • 线性组合 ( Linear Combination ) (\text{Linear Combination}) (Linear Combination) ∑ i = 1 k λ i ⋅ x i \sum_{i=1}^k \lambda_i \cdot x_i i=1kλixi,虽然与凸组合共用相同的表达式,但其对 λ i ( i = 1 , 2 , ⋯   , k ) ∈ R \lambda_i(i=1,2,\cdots,k) \in \mathbb R λi(i=1,2,,k)R即可,没有过多的约束
  • 仿射组合 ( Affine Combination ) (\text{Affine Combination}) (Affine Combination):依然是上述表达式,但相比于凸组合,只要求 ∑ i = 1 k λ i = 1 \sum_{i=1}^k \lambda_i = 1 i=1kλi=1,没有符号要求
  • 非负组合 ( Nonnegative Combination ) (\text{Nonnegative Combination}) (Nonnegative Combination):依然是上述表达式,但相比于凸组合,仅要求 λ i ( i = 1 , 2 , ⋯   , k ) ≥ 0 \lambda_i(i=1,2,\cdots,k) \geq 0 λi(i=1,2,,k)0,没有加和为 1 1 1的要求。

关于凸包 ( Convex Hull ) (\text{Convex Hull}) (Convex Hull),它针对的是任意一个集合,并非只有凸集。在选定集合 C \mathcal C C的条件下,从 C \mathcal C C中取点后作凸组合,将所有凸组合结果构成一个新集合,该集合被称作凸包

凸包的作用:由于凸包是由凸组合构成的集合,因而:对于任意集合 C \mathcal C C(凸、非凸),它的凸包一定是凸集合。从而凸包是优化过程中将非凸集合凸化的一个工具
这里作为科普,不做过多描述~

常见凸集

常见的凸集合有:

  • 超平面 ( Hyperplane ) (\text{Hyperplane}) (Hyperplane),其表达式表示如下:
    H = { x ∣ a T x = b } ( a ≠ 0 ) \mathcal H = \{x \mid a^T x = b\}(a \neq 0) H={xaTx=b}(a=0)
  • 半空间 ( Halfspace ) (\text{Halfspace}) (Halfspace),其表达式表示为:
    { H + = { x ∣ a T x ≥ b } ( a ≠ 0 ) H − = { x ∣ a T x ≤ b } ( a ≠ 0 ) \begin{cases} \mathcal H^{+} = \{x \mid a^Tx \geq b \}(a \neq 0) \\ \mathcal H^{-} = \{x \mid a^Tx \leq b\}(a \neq 0) \end{cases} {H+={xaTxb}(a=0)H={xaTxb}(a=0)
    对应图像描述表示为:
    机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥
  • 多面体 ( Polyhedra ) (\text{Polyhedra}) (Polyhedra):由多个线性不等式刻画的集合。对应表达式表示如下:
    由于一个线性不等式刻画的是半空间,那么由多个线性不等式对应半空间的交集/围成的空间就是多面体
    { x ∣ a i T x ≤ b i , i = 1 , 2 , ⋯   , M } \{x \mid a_i^T x \leq b_i,i=1,2,\cdots,\mathcal M\} {xaiTxbi,i=1,2,,M}
    关于多面体集合 P \mathcal P P的图像示例描述表示为:
    机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥
    上面关于多面体的定义是关于线性不等式所刻画的集合;相反,线性等式刻画的集合是多面体吗 ? ? ?自然也是。因为可以将线性等式 a i T x = b i a_i^T x = b_i aiTx=bi刻画为如下两个线性不等式的交集:
    从而又将线性等式刻画的集合转化为线性不等式刻画的集合
    a i T x = b i ⇔ { a i T x ≤ b i − a i T x ≤ − b i i = 1 , 2 , ⋯   , M a_i^T x = b_i \Leftrightarrow \begin{cases} a_i^T x \leq b_i \\ -a_i^T x \leq -b_i \end{cases} \quad i=1,2,\cdots,\mathcal M aiTx=bi{aiTxbiaiTxbii=1,2,,M
  • 欧几里得球 ( Euclidean Balls ) (\text{Euclidean Balls}) (Euclidean Balls):如果球的中心 x c x_{c} xc半径 r r r已知,对应表达式表示如下:
    这里的 ∣ ∣ u ∣ ∣ 2 ≤ 1 ||u||_2 \leq 1 ∣∣u21描述的是中心为 0 0 0,半径为 1 1 1的单位球空间。对应的 r ⋅ u r \cdot u ru则表示对球空间进行放缩; x c + r ⋅ u x_c + r \cdot u xc+ru则是对放缩后的结果进行平移~
    B ( x c , r ) = { x ∣ ∥ x − x c ∥ 2 ≤ r } = { x c + r ⋅ u ∣ ∥ u ∥ 2 ≤ 1 } \begin{aligned} \mathcal B(x_{c},r) & = \{x \mid \| x - x_c\|_2 \leq r\} \\ & = \{x_c + r \cdot u \mid \|u\|_2 \leq 1\} \end{aligned} B(xc,r)={xxxc2r}={xc+ruu21}
    这仅仅是二范数的结果,调整范数,可以得到范数球 ( Norm Balls ) (\text{Norm Balls}) (Norm Balls)
    相关文章见下方链接~
  • 椭球 ( Ellipsoid ) (\text{Ellipsoid}) (Ellipsoid):若椭球中心 x c x_c xc已知,对应表达式表示如下:
    其中矩阵 P \mathcal P P正定矩阵,否则 P − 1 \mathcal P^{-1} P1无法求解
    { x ∣ ( x − x c ) T P − 1 ( x − x c ) ≤ 1 } \{x \mid (x -x_c)^T \mathcal P^{-1} (x - x_c) \leq 1\} {x(xxc)TP1(xxc)1}
    为什么是 P − 1 \mathcal P^{-1} P1,它有什么作用 ? ? ?这里假设正定矩阵 P \mathcal P P与对应 P − 1 \mathcal P^{-1} P1表示如下:
    P = ( 2 0 0 4 ) ⇒ P − 1 = ( 1 2 0 0 1 4 ) \mathcal P = \begin{pmatrix}2 \quad 0 \\ 0 \quad 4\end{pmatrix} \Rightarrow \mathcal P^{-1} = \begin{pmatrix} \begin{aligned}\frac{1}{2} \quad 0 \\ 0 \quad \frac{1}{4}\end{aligned} \end{pmatrix} P=(2004)P1= 210041
    P − 1 \mathcal P^{-1} P1带入到原式,有:
    ( x − x c ) T ( 1 / 2 0 0 1 / 4 ) ( x − x c ) ≤ 1 (x - x_c)^T \begin{pmatrix}1/2 \quad 0 \\ 0 \quad 1/4\end{pmatrix}(x - x_c) \leq 1 (xxc)T(1/2001/4)(xxc)1
    从而有:
    ( x 1 − x c 1 ) 2 2 + ( x 2 − x c 2 ) 2 4 ≤ 1 \frac{(x_1 - x_{c_1})^2}{2} + \frac{(x_2 - x_{c_2})^2}{4} \leq 1 2(x1xc1)2+4(x2xc2)21
    上式中描述的椭球空间,其长轴、短轴的半轴长分别是 2 , 4 \sqrt{2},\sqrt{4} 2 ,4 ,这恰好是正定矩阵 P \mathcal P P特征值的开平方。因此 P − 1 \mathcal P^{-1} P1本质上描述 P \mathcal P P椭球长短轴之间的关联关系。
  • 二阶锥 ( Second-Order Cone ) (\text{Second-Order Cone}) (Second-Order Cone)
    关于锥集合 C \mathcal C C的定义可描述为:
    if  x ∈ C ⇒ λ ⋅ x ∈ C ∀ λ ≥ 0 \text{if } x \in \mathcal C \Rightarrow \lambda \cdot x \in \mathcal C \quad \forall \lambda \geq 0 if xCλxCλ0
    二阶锥的定义可表示为:
    假设在 n + 1 n+1 n+1维的特征空间中,其中 x = ( x 1 , x 2 , ⋯   , x n ) T ∈ R n x = (x_1,x_2,\cdots,x_n)^T \in \mathbb R^n x=(x1,x2,,xn)TRn,最后一维特征表示为 t t t。下面公式则表示为: n n n维的二范数结果 ∣ ∣ x ∣ ∣ 2 ≤ ||x||_2 \leq ∣∣x2 n + 1 n+1 n+1维的特征结果 t t t
    { ( x , t ) ∣ ∥ x ∥ 2 ≤ t } \{(x,t) \mid \|x\|_2 \leq t\} {(x,t)x2t}
    例如: x x x是一个二维向量,那么上式的表达有:
    x 1 2 + x 2 2 ≤ t \sqrt{x_1^2 + x_2^2} \leq t x12+x22 t
    简单绘制一下它的图像:
import numpy as np
import matplotlib.pyplot as plt
import math 

x = np.linspace(-5,5,50)
y = np.linspace(-5,5,50)
t = 5.0

def f(x,y):
    return math.sqrt((x ** 2) + (y ** 2))

ax = plt.axes(projection='3d')

for i in list(x):
    for j in list(y):
        if f(i,j) <= t:
            ax.scatter(i,j,f(i,j),c="tab:blue",s=2)
        else:
            continue
plt.show()

最终结果表示如下:
机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥

  • 半定矩阵锥

    • 首先,划定一个集合 S n \mathcal S^n Sn,它描述:所有 n n n阶对称矩阵组成的集合
      可见,集合中的每个元素都是 n n n阶对称矩阵
    • 在集合 S n \mathcal S^n Sn的基础上,划定一个集合 S + n \mathcal S_{+}^n S+n,它描述:所有 n n n半正定矩阵组成的集合,记作 S + n = { X ∈ S n ∣ X ≽ 0 } \mathcal S_{+}^n = \{\mathcal X \in \mathcal S^n \mid \mathcal X \succcurlyeq 0\} S+n={XSnX0}
      其中 X ≽ 0 ⇔ Z T X Z ≥ 0 ∀ Z \mathcal X \succcurlyeq 0 \Leftrightarrow \mathcal Z^T \mathcal X \mathcal Z \geq 0 \quad \forall \mathcal Z X0ZTXZ0Z
    • 同样在集合 S n \mathcal S^n Sn的基础上,划定一个集合 S + + n \mathcal S_{++}^n S++n,它描述:所有 n n n正定矩阵组成的集合,记作 S + + n = { X ∈ S n ∣ X ≻ 0 } \mathcal S_{++}^n = \{\mathcal X \in \mathcal S^n \mid \mathcal X \succ 0\} S++n={XSnX0}
      同上: X ≻ 0 ⇔ Z T X Z > 0 ∀ Z \mathcal X \succ 0 \Leftrightarrow \mathcal Z^T \mathcal X \mathcal Z > 0 \quad \forall \mathcal Z X0ZTXZ>0Z

    对于集合 S + n \mathcal S_{+}^n S+n中的元素 X \mathcal X X,它们必然是半正定矩阵。因而 λ ⋅ X ( ∀ λ ≥ 0 ) \lambda \cdot \mathcal X (\forall \lambda \geq 0) λX(λ0)依然是半正定矩阵。因而满足锥集合的定义
    X ∈ S + n ⇒ λ ⋅ X ∈ S + n λ ≥ 0 \mathcal X \in \mathcal S_{+}^n \Rightarrow \lambda \cdot \mathcal X \in \mathcal S_{+}^n \quad \lambda \geq 0 XS+nλXS+nλ0
    因而集合 S + n \mathcal S_{+}^n S+n锥集合
    新的问题:锥集合 S + n \mathcal S_{+}^n S+n是不是凸集合 ? ? ?根据凸集合的定义,有:

    • 集合 S + n \mathcal S_{+}^n S+n中任意选择一系列半正定矩阵
      ∀ x 1 , x 2 , ⋯   , x k ∈ S + n \forall x_1,x_2,\cdots,x_k \in \mathcal S_{+}^n x1,x2,,xkS+n
    • 选择 λ i ( i = 1 , 2 , ⋯   , k ) \lambda_i(i=1,2,\cdots,k) λi(i=1,2,,k)满足:
      { λ i ≥ 0 i = 1 , 2 , ⋯   , k ∑ i = 1 k λ i = 1 \begin{cases} \lambda_i \geq 0 \quad i=1,2,\cdots,k \\ \sum_{i=1}^k \lambda_i = 1 \end{cases} {λi0i=1,2,,ki=1kλi=1
    • 观察: ∑ i = 1 k λ i ⋅ x i \sum_{i=1}^k \lambda_i \cdot x_i i=1kλixi每一项 λ i ⋅ x i ( i = 1 , 2 , ⋯   , k ) \lambda_i \cdot x_i(i=1,2,\cdots,k) λixi(i=1,2,,k)均是半正定矩阵,因而 ∑ i = 1 k λ i ⋅ x i \sum_{i=1}^k \lambda_i \cdot x_i i=1kλixi必然也是半正定矩阵。即:
      ∑ i = 1 k λ i ⋅ x i ∈ S + n \sum_{i=1}^k \lambda_i \cdot x_i \in \mathcal S_{+}^n i=1kλixiS+n
      因此锥集合 S + n \mathcal S_{+}^n S+n必然是凸集合

    关于半定矩阵锥的图像,以二阶矩阵为例。如果二阶矩阵 ( x y y z ) ∈ S + 2 \begin{pmatrix}x \quad y \\ y \quad z\end{pmatrix} \in \mathcal S_{+}^2 (xyyz)S+2,也就是说:该二阶矩阵是一个半正定矩阵。如何判定一个矩阵是半正定 ? ? ?

    • 主对角线元素 x , z ≥ 0 x,z \geq 0 x,z0
    • 该矩阵的顺序主子式 x ⋅ z − y 2 ≥ 0 x \cdot z - y^2\geq 0 xzy20
    • 同样绘制它的图像:
      这里的图像不容易看,像个船头~大家自己多试试角度~
import numpy as np
import matplotlib.pyplot as plt
import tqdm

x = np.linspace(-5,5,20)
y = np.linspace(-5,5,20)
z = np.linspace(-5,5,20)![请添加图片描述](https://img-blog.csdnimg.cn/2fecd39719bc4af392e4cb9316296f6b.png)


def SequentialPrincipalMinor(x,y,z):
    return x * z - (y ** 2)

ax = plt.axes(projection='3d')
for i in tqdm(list(x)):
    for j in list(y):
        for k in list(z):
            if i >= 0 and k >= 0 and SequentialPrincipalMinor(i,j,k) >= 0:
                ax.scatter(i,j,k,c="tab:blue",s=2)
            else:
                continue
plt.show()

最终结果表示如下:
机器学习笔记之最优化理论与方法(二)凸集的简单认识(上),最优化理论与方法,凸集,凸组合,凸包,常见凸集,凸优化问题与凸集凸函数关系,正定锥与半定锥
个人理解集合 S + + n \mathcal S_{++}^n S++n不仅是锥集合,并且也是凸集合
这个图就不贴了,和上面的结果很像~

  • 关于 ∑ i = 1 k λ i ⋅ x i x i ∈ S + + n \begin{aligned}\sum_{i=1}^k \lambda_i \cdot x_i \quad x_i \in \mathcal S_{++}^n\end{aligned} i=1kλixixiS++n,只要 λ i ⋅ x i ( i = 1 , 2 , ⋯   , k ) \lambda_i \cdot x_i(i=1,2,\cdots,k) λixi(i=1,2,,k)至少有一项是正定矩阵,那么 ∑ i = 1 k λ i ⋅ x i \begin{aligned}\sum_{i=1}^k \lambda_i \cdot x_i \end{aligned} i=1kλixi必然是正定矩阵
  • 由于 ∑ i = 1 k λ i = 1 \begin{aligned}\sum_{i=1}^k \lambda_i =1\end{aligned} i=1kλi=1,因而不可能出现 λ 1 = λ 2 = ⋯ = λ k = 0 \lambda_1 = \lambda_2 = \cdots = \lambda_k = 0 λ1=λ2==λk=0。也就是说:必然存在项 λ i > 0 \lambda_i > 0 λi>0,从而使 λ i ⋅ x i \lambda_i \cdot x_i λixi是正定矩阵

Process : 43 : 34 / 1 : 21 : 31 \text{Process}: 43:34/1:21:31 Process:43:34/1:21:31
相关参考:
最优化理论与方法-第二讲-凸集
凸优化笔记1:凸集Convex Sets文章来源地址https://www.toymoban.com/news/detail-691517.html

到了这里,关于机器学习笔记之最优化理论与方法(二)凸集的简单认识(上)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器学习笔记之最优化理论与方法(十)无约束优化问题——共轭梯度法背景介绍

    本节将介绍 共轭梯度法 ,并重点介绍共轭方向法的逻辑与几何意义。 关于 最小化 二次目标函数: min ⁡ f ( x ) = min ⁡ 1 2 x T Q x + C T x begin{aligned}min f(x) = min frac{1}{2} x^T mathcal Q x + mathcal C^T xend{aligned} min f ( x ) = min 2 1 ​ x T Q x + C T x ​ ,其中 Q ∈ R n × n ; Q ≻ 0 mathcal Q

    2024年02月09日
    浏览(34)
  • 数学学习——最优化问题引入、凸集、凸函数、凸优化、梯度、Jacobi矩阵、Hessian矩阵

    例如:有一根绳子,长度一定的情况下,需要如何围成一个面积最大的图像?这就是一个最优化的问题。就是我们高中数学中最常见的最值问题。 最优化问题的一般形式是: m i n ​ f ( x ) x ∈ C min​f(x) \\\\ x in C min ​ f ( x ) x ∈ C 其中, f f f 是目标函数, A A A 是约束条件,

    2024年02月15日
    浏览(29)
  • 最优化理论笔记及期末复习(《数值最优化》——高立)

    8.3.1实验内容 利用Matlab编程,实现采用简单Armijo非精确线搜索求步长的三种方法:负梯度法、BFGS法及FR共轭梯度法,并求解如下无约束优化问题: m i n f ( x ) = 10 ( x 1 3 − x 2 ) 2 + ( x 1 − 1 ) 2 min f(x) =10(x_1^3-x_2)^2+(x_1-1)^2 m i n f ( x ) = 1 0 ( x 1 3 ​ − x 2 ​ ) 2 + ( x 1 ​ − 1 ) 2 通过

    2024年02月02日
    浏览(28)
  • (最优化理论与方法)第一章最优化简介-第二节:最优化典型实例之稀疏优化和低秩矩阵恢复

    考虑下面线性方程组的求解问题,其中 x ∈ R n , b ∈ R m xin R^{n},bin R^{m} x ∈ R n , b ∈ R m ,矩阵 A ∈ R m × n Ain R^{m×n} A ∈ R m × n ,且向量 b b b 的维数远小于向量 x x x 的维数,也即 m m m n n n A x = b Ax=b A x = b 在相关问题中,当我们建立这样的模型后,常常希望 解出向量

    2024年02月08日
    浏览(31)
  • 最优化:建模、算法与理论(最优性理论2

    考虑优化问题 min ⁡ x ∈ R n 1 2 ∣ ∣ x − y ∣ ∣ 2 2 , s . t . A x = b min_{x{in}R^n}frac{1}{2}||x-y||_2^2,\\\\ s.t.{quad}Ax=b x ∈ R n min ​ 2 1 ​ ∣∣ x − y ∣ ∣ 2 2 ​ , s . t . A x = b 其中 A ∈ R m × n , b ∈ R m , y ∈ R n A{in}R^{m times n},b{in}R^m,y{in}R^n A ∈ R m × n , b ∈ R m , y ∈ R n 为给定的矩阵

    2024年02月07日
    浏览(34)
  • 【机器学习】最大熵模型【下】最大熵模型学习的最优化算法

    有任何的书写错误、排版错误、概念错误等,希望大家包含指正。 由于字数限制,分成两篇博客。 【机器学习】最大熵模型【上】最大熵模型概述与约束最优化问题 【机器学习】最大熵模型【下】最大熵模型学习的最优化算法 这里的最优化算法就是用于训练最大熵模型参数

    2023年04月15日
    浏览(42)
  • 最优化学习笔记——第三章

    非线性规划比线性规划更困难,没有统一的数学模型,有自己特定的适用范围,目前还没有通用于所有问题的非线性规划问题的算法 满足以上条件的解释可行解,所有解为可行域,如果可行域=R n ,则为无约束问题,否则为有约束问题 如果所有的约束与目标函数都是凸函数,

    2024年02月03日
    浏览(40)
  • 最优化:建模、算法与理论(优化建模)

    目前在学习 最优化:建模、算法与理论这本书,来此记录一下,顺便做一些笔记,在其中我也会加一些自己的理解,尽量写的不会那么的条条框框(当然最基础的还是要有) 本章将从常用的建模技巧开始,接着介绍统计学、信号处理、图像处理以及机器学习中常见的优化模

    2024年02月10日
    浏览(150)
  • 最优化:建模、算法与理论(典型优化问题

    4.1.1 基本形式和应用背景 再次说明一下,其实这本书很多的内容之前肯定大家都学过,但是我觉得这本书和我们之前学的东西的出发角度不一样,他更偏向数学,也多一个角度让我们去理解 线性规划问题的一般形式如下: min ⁡ x ∈ R n c T x s . t . A x = b G x ≤ e (4.1.1) min_{x{

    2024年02月09日
    浏览(193)
  • 最优化:建模、算法与理论(优化建模——2)

    聚类分析是 统计学中的一个基本问题,其在机器学习,数据挖掘,模式识别和图像分析中有着重要应用。聚类不同于分类,在聚类问题中我们仅仅知道数据点本身,而不知道每个数据点具体的标签。聚类分析的任务就是将一些无标签的数据点按照某种相似度来进行归类,进而

    2024年02月09日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包