从这篇文章开始,我们会介绍关于凸优化的知识,目录如下:
仿射集,凸集和凸锥
超平面,半空间及凸集分离定理
不改变凸性的运算
凸函数及凸优化简述
无约束的优化,等式约束优化,不等式约束优化
线性规划中对偶理论
拉格朗日对偶理论
读完估计需要10min,这里主要讲解第一部分,其他部分期待之后文章~
仿射集,凸集和凸锥
仿射集:对于一个集合,如果集合内的任意两点构成的直线仍在集合C内,则称集合C为仿射集。仿射集就是包含该集合内任意两点的线性组合,即包含了所有经过该集合集中任意两点的直线的集合。
比如:一维情况下可以类似理解为直线,但仿射集是一个更广意义的直线。
仿射包:对于任意一个集合,集合间所有点的仿射组合称为集合C的仿射包,仿射包是包含某些点构成的集合C的最小仿射集。如果任意仿射集S包含集合C,则集合C的仿射包是集合S的子集。我们一般将仿射包记为:
凸集:实数域R上(或复数C上)的向量空间中,如果集合S中任两点的连线上的点都在S内,则称集合S为凸集,如下图所示:
另外,和仿射组合类似,我们定义凸集组合:
注意的是,仿射组合和凸集组合的区别在于θ的取值,也就是满足仿射组合定义的前提下,要求。
凸包:对应的凸包(convex hull)则可记为:
从定义上来看,凸包肯定是凸集,它是包含集合C的最小凸集。从下图我们可以看出,左边第一个图中的15个点的凸包为阴影包括的多边形,第二个图中肾型集合的凸包为直线封闭下的集合。
凸集和仿射集的联系和区别:从定义我们可以看出,仿射集和凸集间的区别就在于凸集是线段在集合中。仿射集要求的是集合中经过任意两点的直线上的任意点都在集合中。
注意:有人说凸集是仿射集的子集,但其实谁也不是谁的子集。确切的讲,包含所有仿射集的集合是包含所有凸集的集合的子集,因为一个仿射集是一个凸集。凸集定义比仿射集的定义更加苛刻,但是条件更加的苛刻不等于就是子集,不等于他们就是一类。比如,如果我们要区分固态和气态,常温常压下二氧化碳就是气态,如果限定他的温度、压力,条件更加苛刻,让其变成固态的干冰,我们还能说二氧化碳就是气态吗?我们能说固态是气态的子集吗?不能,因为“类别(集合)是根据某些固定条件去定义的”,而不是靠“苛刻程度”去识别的,所以我们有明确一下两个基础逻辑。
凸锥:锥体(cone)的定义为如果集合C中的任意点,其中,则集合C称为锥。如果集合既是凸集又是锥体,我们就称该集合为凸锥(convex cone)。凸锥的数学表达为:
凸锥中各点的线性组合我们称之为凸锥组合(conic combination),某集合C的各点的凸锥组合构成集合C的锥包(conic hull),记为
锥包:与仿射包和凸包类似,锥包也是包含集合C的最小凸锥集合。以下是两个锥包的实例,阴影部分表示集合构成的锥包,当然,顶点位置不同,所表示出的锥包也各不相同:
上图中第一个图中的15个点的锥包为阴影部分的集合,对应的第二个图中肾型集合的凸锥集合。
综合举例:
空集、单点和实数域的点集是仿射集,因此,也是凸集。
一条直线是仿射集,如果直线过原点,那么它还是凸锥。
一条线段是c凸集的,但不是仿射集,除非该线段仅含有一个点。
一条射线是凸集的,但不是仿射集,如果为0, 则是凸锥。
基本概念,好好消化
超平面,半空间及凸集分离定理
2、超平面和半空间
超平面:数学表达式为,Emmm...理解不了,但实际上,我们这样想,二维空间的超平面就是一条线(可以使曲线),三维空间的超平面就是一个面(可以是曲面),那高维的时候,也就是超平面了,为什么叫这个名字,也就是要定义一般化的一个界线。
半空间:数学表达式为,,Emmm...又理解不了,简单理解,如下图,上面说了,超平面就是一个空间的一个界线,也就是说,超平面可以将空间分为两个半空间,举个二维例子:
凸集分离定理:所谓两个凸集分离,直观地看是指两个凸集合没有交叉和重合的部分,因此可以用一张超平面将两者隔在两边,如下图所示:
不改变凸性的运算
不改变凸集性质的运算对于凸集而言很重要,因为凸集的优良性质会使得优化求解过程更为简单,同时,我们也可以根据具体问题构建凸函数解决对应问题。不改变凸集的运算主要有以下几种:
透视函数:透视函数的直观理解如下:为一个不透光隔板,只有在原点有一个小孔,光透过小孔投射至的隔板上,如果上面的光点所构成的集合是凸的,那么投射至下方的光点构成的集合也是凸的。更加直观的想象我们通过一个针孔照相机去拍摄一个凸的对象,那么生成的图像也是凸的,如下图所示:
数学描述如下:
AI遇见机器学习
mltoai
领取专属 10元无门槛券
私享最新 技术干货