凸优化
Bonennult
这个作者很懒,什么都没留下…
展开
-
最优化方法 26:不动点迭代
前面讲了很多具体的算法,比如梯度、次梯度、近似点梯度、加速近似点梯度、PPA、DR方法、ADMM、ALM等,对这些方法的迭代过程有了一些了解。这一节则主要是针对算法的收敛性进行分析,试图从一个更加抽象的层面,利用不动点迭代的思想,把上面的算法综合起来,给一个比较 general 的收敛性分析方法。1. 什么是不动点?对于希尔伯特空间(Hilbert space) H\mathcal{H}H,定义了内积 <⋅,⋅>\left<\cdot,\cdot\right>⟨⋅,⋅⟩ 和 范数原创 2020-05-27 17:41:18 · 3995 阅读 · 1 评论 -
最优化方法 25:PDHG
前面的章节要么从原始问题出发,要么从对偶问题出发,通过求解近似点或者一个子优化问题进行迭代,而且推导过程中我们发现根据问题的参数特征,比如矩阵 AAA 是瘦高型的还是矮胖型的,采用对偶和原始问题的复杂度会不一样,可以选择一个更简单的。而这一节,我们将要从原始对偶问题出发来优化,什么是原始对偶问题呢?就是原始优化变量和对偶优化变量(原始函数和共轭函数)混合在一块,看下面的原理就知道了。1. 原始对偶问题现在考虑原始优化问题,其中 f,gf,gf,g 为闭凸函数minf(x)+g(Ax)\min \q原创 2020-05-24 10:46:46 · 3215 阅读 · 1 评论 -
最优化方法 24:ADMM
上一节讲了对偶问题上的 DR-splitting 就等价于原问题的 ADMM,这一节在详细的讲一下 ADMM 及其变种。1. 标准 ADMM 形式首先还是给出 ADMM 要求解的问题的格式,也就是约束存在耦合:minx,zf(x)+g(z)s.t.Ax+Bz=b\begin{aligned}\min_{x,z} \quad& f(x)+g(z) \\\text{s.t.} \quad& Ax+Bz=b\end{aligned}x,zmins.t.f(x)+g(z)Ax+原创 2020-05-20 23:51:45 · 3179 阅读 · 1 评论 -
最优化方法 23:算子分裂法 & ADMM
前面章节中,针对 minf(x)+g(Ax)\min f(x)+g(Ax)minf(x)+g(Ax) 形式的优化问题,我们介绍了如 PG、dual PG、ALM、PPA 等方法。但是比如 PG 方法为xk+1=proxth(xk−tk∇g(xk))x_{k+1}=\text{prox}_{th}(x_k-t_k\nabla g(x_k))xk+1=proxth(xk−tk∇g(xk))ALM 的第一步要解一个联合优化问题(xk+1,yk+1)=argminx,yLt(x,y,zk)原创 2020-05-10 10:07:45 · 3545 阅读 · 0 评论 -
最优化方法 22:近似点算法 PPA
在进入具体的优化算法后,我们首先讲了基于梯度的,比如梯度下降(GD)、次梯度下降(SD);然后又讲了近似点算子,之后讲了基于近似点算子的方法,比如近似点梯度下降(PG)、对偶问题的近似点梯度下降(DPG)、加速近似点梯度下降(APG)。而这一节讲的,还是基于近似点的!他叫近似点方法(Proximal Point Algorithm, PPA),除此之外还会介绍增广拉格朗日方法(Augmentted Larangian Method, ALM)。我们就开始吧!1. 近似点方法近似点方法跟近似点梯度下降很像原创 2020-05-09 14:13:37 · 5725 阅读 · 1 评论 -
最优化方法 21:加速近似梯度下降方法
我们证明了梯度方法最快的收敛速度只能是 O(1/k2)O(1/k^2)O(1/k2)(没有强凸假设的话),但是前面的方法最多只能达到 O(1/k)O(1/k)O(1/k) 的收敛速度,那么有没有方法能达到这一极限呢?有!这一节要讲的**加速近似梯度方法(APG)**就是。这个方法的构造非常的巧妙,证明过程中会发现每一项都恰到好处的抵消了!真不知道作者是怎么想出来这么巧妙地方法,各位可以看看证明过程...原创 2020-04-24 18:30:48 · 3669 阅读 · 1 评论 -
最优化方法 20:对偶近似点梯度下降法
前面讲了梯度下降、次梯度下降、近似点梯度下降方法并分析了收敛性。一开始我们还讲了对偶原理,那么如果原问题比较难求解的时候,我们可不可以转化为对偶问题并应用梯度法求解呢?当然可以,不过有一个问题就是对偶函数的梯度或者次梯度怎么计算呢?这就是这一节要关注的问题。首先一个问题是哪些形式的问题,其对偶问题相比于原问题更简单呢?可能有很多种,这一节主要关注一种:线性等式/不等式约束的优化问题。之所以考虑此...原创 2020-04-23 18:41:57 · 3877 阅读 · 0 评论 -
最优化方法 19:近似梯度下降
前面讲了梯度下降法、次梯度下降法,并分析了他们的收敛性。上一节讲了近似梯度算子,我们说主要是针对非光滑问题的,这一节就要讲近似梯度算子在非光滑优化问题中的应用。先回顾一下上一节最重要的一部分内容:对于指示函数 δC\delta_CδC 来说近似梯度算子得到的实际上就是向集合 CCC 的投影。1. 近似点梯度下降这一部分考虑的问题主要是minimize f(x)=g(x)+h(x)...原创 2020-04-17 17:58:20 · 3978 阅读 · 0 评论 -
最优化方法 18:近似点算子 Proximal Mapping
前面讲了梯度下降法,分析了其收敛速度,对于存在不可导的函数介绍了次梯度的计算方法以及次梯度下降法,这一节要介绍的内容叫做近似点算子(Proximal mapping),也是为了处理非光滑问题。文章目录1. 闭函数2. 共轭函数3. 近似点算子4. 投影5. 支撑函数、范数与距离1. 闭函数在引入闭函数(closed function)的概念之前,我们先回顾一下闭集的概念:集合 C\mathc...原创 2020-04-16 20:49:07 · 12777 阅读 · 3 评论 -
凸优化学习笔记17:次梯度下降法
对于光滑函数,我们可以用梯度下降法,并且证明了取不同的步长,可以得到次线性收敛,如果加上强凸性质,还可以得到线性收敛速度。那如果现在对于不可导的函数,我们就只能沿着次梯度下降,同样会面临步长的选择、方向的选择、收敛性分析等问题。1. 收敛性分析次梯度下降的一般形式为x(k)=x(k−1)−tkg(k−1),k=1,2,…g∈∂f(x(k−1))x^{(k)}=x^{(k-1)}-t_{k...原创 2020-04-10 21:42:40 · 5557 阅读 · 0 评论 -
凸优化学习笔记16:次梯度 Subgradient
前面讲了梯度下降的方法,关键在于步长的选择:固定步长、线搜索、BB方法等,但是如果优化函数本身存在不可导的点,就没有办法计算梯度了,这个时候就需要引入次梯度(Subgradient),这一节主要关注次梯度的计算。1. 次梯度次梯度(subgradient)的定义为∂f(x)={g∣f(y)≥f(x)+gT(y−x),∀y∈domf}\partial f(x)= \{g|f(y)\ge f(...原创 2020-04-10 21:40:16 · 3701 阅读 · 0 评论 -
凸优化学习笔记 15:梯度方法
前面的章节基本上讲完了凸优化相关的理论部分,在对偶原理以及 KKT 条件那里我们已经体会到了理论之美!接下来我们就要进入求解算法的部分,这也是需要浓墨重彩的一部分,毕竟我们学习凸优化就是为了解决实际当中的优化问题。我们今天首先要接触的就是大名鼎鼎的梯度方法。现在人工智能和人工神经网络很火,经常可以听到反向传播,这实际上就是梯度下降方法的应用,他的思想其实很简单,就是沿着函数梯度的反方向走就会使函数...原创 2020-04-05 18:55:35 · 6979 阅读 · 7 评论 -
凸优化学习笔记 14:SDP Representablity
这一节简单介绍一个 SDP Representablity(SDP-Rep),这个概念的提出主要是为了便于判断某个问题是否可以转化为 SDP 优化问题。定义:集合 X⊆RnX\subseteq R^nX⊆Rn 是 SDP-Rep 的,如果他可以表示为X={x∣there exist u∈Rk such that for some&nb...原创 2020-04-05 18:47:14 · 929 阅读 · 0 评论 -
凸优化学习笔记 13:KKT条件 & 互补性条件 & 强对偶性
前面我们讲了凸优化问题、对偶原理、拉格朗日函数、KKT 条件,还从几何角度解释了强对偶性,那么这一节将从代数角度解释强对偶性。有需要的话可以参考前面两节内容凸优化学习笔记 10:凸优化问题凸优化学习笔记 11:对偶原理凸优化学习笔记 12:KKT条件1. LP / SOCP / SDP在此之前我们先回顾一下比较重要的三类凸优化问题:LP、SOCP、SDP,为什么这么说呢?因为本质上...原创 2020-03-27 18:24:13 · 4104 阅读 · 0 评论 -
凸优化学习笔记 12:KKT条件
上一小节讲了拉格朗日函数,可以把原始问题转化为对偶问题,并且对偶问题是凸的。我们还得到了弱对偶性和强对偶性的概念,并且提到了 Slater Condition 保证凸问题的强对偶性成立,并且给出了一些几何的直观解释。那么在这一节,我们将引出著名的 KKT 条件,它给出了最优解需要满足的必要条件,是求解优化问题最优解的一个重要方式。有需要的话可以参考前面两节内容凸优化学习笔记 10:凸优化问题...原创 2020-03-26 14:48:33 · 2585 阅读 · 2 评论 -
凸优化学习笔记 11:对偶原理 & 拉格朗日函数
前面讲了凸优化问题的定义,以及一些常见的凸优化问题类型,这一章就要引入著名的拉格朗日函数和对偶问题了。通过对偶问题,我们可以将一些非凸问题转化为凸优化问题,还可以求出原问题的非平凡下界,这对复杂优化问题是很有用的。1. 拉格朗日函数考虑凸优化问题 minimize f0(x) subject to fi(x)≤0,i=1,…,mhi(x)=...原创 2020-03-21 00:54:16 · 4768 阅读 · 1 评论 -
凸优化学习笔记 10:凸优化问题
前面讲了那么多关于凸集、凸函数的知识,然而都是铺垫,现在我们才来到了这门课的重头戏部分——凸优化问题!文章目录1. 一般优化问题2. 凸优化问题2.1 凸优化问题定义2.2 凸优化问题的最优解2.3 等价问题化简3. 拟凸优化问题4. 典型凸优化问题4.1 线性规划(LP)4.2 线性分式规划4.3 二次规划(QP)4.4 二次约束二次规划(QCQP)4.5 二次锥规划(SOCP)4.6 鲁棒线...原创 2020-03-15 00:07:26 · 2393 阅读 · 0 评论 -
凸优化学习笔记 9:广义凸函数
文章目录1. 广义单调函数2. 广义凸函数有时候函数 fff 为向量,此时怎么定义凸函数呢?根据广义不等式引入。1. 广义单调函数对于 f:Rn→Rf:R^n\to Rf:Rn→R,定义其单调性为存在正常锥 K⊆RnK\subseteq R^nK⊆Rn,有K-nondecreasing ⟺ ∀x⪯Ky,f(x)≤f(y)\iff \forall x\preceq_K y,\qua...原创 2020-03-12 17:08:28 · 1305 阅读 · 0 评论 -
凸优化学习笔记 8:对数凸函数
文章目录1. 定义2. 性质对数凹函数,顾名思义即取完对数以后 logf(x)\log f(x)logf(x) 是凹函数,其应用比如在求最大后验 MAP 时,往往会对联合概率密度函数取对数。1. 定义函数 fff 被称为对数凹函数(log-concave),如果 logf\log flogf 是凹的,也即f(θx+(1−θ)y)≥f(x)θf(y)1−θf(\theta x+(1-...原创 2020-03-12 17:06:59 · 6004 阅读 · 0 评论 -
凸优化学习笔记 7:拟凸函数 Quasiconvex Function
个人博客地址 Glooow,欢迎光临~~~文章目录1. 拟凸函数定义2. 拟凸函数的判定/等价定义2.1 Jensen 不等式2.1 “降维打击”2.2 一阶条件2.3 二阶条件3. 拟凸函数的保凸变换3.1 与仿射变换复合3.2 最大值/上确界3.3 复合函数3.4 下确界1. 拟凸函数定义拟凸函数(quasiconvex function) 的定义为:若 domf\text{dom}...原创 2020-03-06 17:39:08 · 11582 阅读 · 0 评论 -
凸优化学习笔记 6:共轭函数
个人博客地址 Glooow,欢迎光临~~~文章目录1. 共轭函数1.1 定义1.2 性质1.3 例子1. 共轭函数1.1 定义一个函数 fff 的共轭函数(conjugate function) 定义为f∗(y)=supx∈domf(yTx−f(x))f^*(y)=\sup_{x\in\text{dom}f}(y^Tx-f(x))f∗(y)=x∈domfsup(yTx−f(x...原创 2020-03-05 00:02:08 · 8564 阅读 · 0 评论 -
凸优化学习笔记 5:保凸变换
个人博客地址 Glooow,欢迎光临~~~文章目录1. 保凸变换1.1 正权重求和1.2 与仿射变换的复合函数1.3 逐元素最大值&上确界1.4 下确界1.5 复合函数1. 标量复合函数2. 向量复合函数1.6 透射变换1. 保凸变换前面提到过一次保凸变换,前面针对的是集合,凸集经过一定的保凸变换,映射后的集合仍然是凸集。这里复习一下任意个凸集的交集仿射变换透视变换分式...原创 2020-03-04 23:59:42 · 1940 阅读 · 0 评论 -
凸优化学习笔记 4:Convex Function
个人博客 Glooow ,欢迎各位大驾光临文章目录1. 凸函数1.1 凸函数定义1.2 常见凸函数1.2.1 RRR1.2.2 RnR^nRn1.2.3 Rm×nR^{m\times n}Rm×n2. 凸函数判定2.1 “降维打击”2.2 一阶条件2.3 二阶条件3. Sublevel set & Epigraph4. Jensen's Inequality1. 凸函数1.1 凸...原创 2020-02-29 20:57:20 · 2300 阅读 · 0 评论 -
凸优化学习笔记 3:广义不等式
个人博客地址 Glooow,欢迎光临~~~文章目录1. 正常锥2. 推广不等式3. 最小元与极小元3.1 最小元(minimum)3.2 极小元(minimal)4. 对偶锥5. 最小元与极小元(应用对偶锥定义)5.1 最小元5.2 极小元1. 正常锥正常锥(proper cone) K⊆RnK\subseteq R^nK⊆Rn 需要满足KKK is closed (contains...原创 2020-02-26 22:00:47 · 2519 阅读 · 0 评论 -
凸优化学习笔记 2:超平面分离定理
个人博客地址 Glooow,欢迎光临~~~文章目录1. 超平面分离定理2. 支撑超平面定理1. 超平面分离定理超平面分离定理(Separating hyperplane theorem):若 C,DC,DC,D 为非空凸集,且 C∩D=∅C\cap D=\varnothingC∩D=∅,则存在 a≠0,ba\ne 0,ba=0,b,使得aTx≤bforx∈C,aTx≥bforx∈D...原创 2020-02-26 21:58:42 · 6525 阅读 · 1 评论 -
凸优化学习笔记 1:Convex Sets
个人博客 Glooow ,欢迎各位大驾光临文章目录1. 凸集2. 常见凸集2.1 凸包(Convec hull)2.2 超平面(Hyperplanes)2.3 半空间(Halfspaces)2.4 多面体(Polyhedra)2.5 欧几里得球与椭球(Euclidean balls and ellipsoids)2.6 范数球(norm balls)2.7 凸锥(Convex cone)2....原创 2020-02-22 21:25:49 · 2380 阅读 · 0 评论 -
凸优化学习笔记 0:绪论
个人博客 Glooow ,欢迎各位大驾光临文章目录0. 绪论1. 优化问题与凸优化1.1 一般优化问题1.2 凸优化问题0. 绪论首先明确凸优化这门课的主要目的:判断一个问题是否为凸的将一个问题转化为凸的求解凸优化问题,给出算法性能1. 优化问题与凸优化1.1 一般优化问题一般优化问题的形式为minf0(x) s.t. fi(x)≤bi,i=1,…...原创 2020-02-22 21:22:19 · 965 阅读 · 1 评论 -
Second-Order Cone Programming(SOCP) 二阶锥规划
个人博客Glooow,欢迎各位老师来踩踩文章目录1. 二阶锥1.1 二阶锥定义1.2 二阶锥约束2. 优化问题建模3. 类似问题转化3.1 二次规划3.2 随机线性规划4. 问题求解1. 二阶锥1.1 二阶锥定义在此之前,先给出二阶锥的定义。在 kkk 维空间中二阶锥 (Second-order cone) 的定义为Ck={[ut]∣u∈Rk−1,t∈R,∥u∥≤t}\mathc...原创 2020-02-17 09:35:47 · 29754 阅读 · 4 评论