凸优化问题01:概述

前言

最近在学习数据挖掘相关过程,之前已经学习了朴素贝叶斯和SVM,但没有及时记录下来,之后可能会补发相关的学习笔记,目前的学习系列是凸优化的学习内容,内容会比较详细,可能涉及公式推导之类的基础问题。

凸优化基础知识体系

在正式讲述什么是凸优化之前,我们需要大致了解一些凸优化的相关概念,进而引入凸优化,以下是几个重要相关概念的笔记:

一个简单的定理证明

定理证明

在介绍凸优化相关概念之前,首先介绍一个简单的定理,这个定理的内容是:
For any x1,x2R\in\mathbb R, 且 x1<x2, 若x0[x1,x2]\in\mathbb [x_1,x_2],则
x0=x1θ+x2(1θ)x_0= x_1\theta+x_2(1-\theta)
(0θ1)(其中0\leq\theta\leq1)
这个定理是很容易证明的,具体如下:
凸优化问题01:概述
如图,该直线上有三个点:x0,x1和x2,其中x0位于x1和x2之间,引入一个参数 t:t=x0x1x2x1t=\frac{x_0-x_1}{x_2-x_1}
t的范围即为[0,1]
x0=(x2x1)t+x1则x_0=(x_2-x_1)t+x_1
x0=(1t)x1+tx2整理可得 x_0=(1-t)x_1+tx_2
从而得证。

从一维推导至多维

上述结论可以由一维推广到多维,具体来说:
For any X,YRd\in\mathbb R^d, 其中 X = (x1, x2, …, xd), Y = (y1, y2, …,yd), 若任取一个Z 位于X, Y的连线上,则
Z=Xθ+Y(1θ)Z= X\theta+Y(1-\theta)
(0θ1)(其中0\leq\theta\leq1)

凸集(convex sets)

凸集,定义目标函数和约束函数的定义域。
英文的准确表述为:
A set C is convex if the lines segment between any two points in C lines in C, i.e., if for any x1, x2C\in\mathbb C, and any θ\theta with 0<θ\theta<1, we have:
θx1+(1θ)x2C\theta x_1+(1-\theta )x_2\in\mathbb C
举个例子来说:
(one convex, two nonconvex sets)
凸优化问题01:概述

凸集(convex sets)与仿射集(Affine Set)区分

仿射集:如果通过集合 C 中任意两个不同点之间的直线仍在集合C中,那么称集合C是仿射的。

凸集:如果通过集合 C 中任意两个不同点之间的线段仍在集合C中,那么称集合C是凸的。

因为仿射集的条件比凸集的条件强,所以仿射集必然是凸集

凸函数(convex function)

凸函数定义

函数f(x): Rn\rightarrowR 为凸函数,当且仅当满足如下条件:

  1. x的定义域 D(f) 为凸;即for any x, y\in D(f), θx+(1θ)D(f) \theta x+(1- \theta )\in D(f) (0θ1)( 0\leq\theta\leq1)
  2. 对上述x, y, θ\theta 满足 f(θ\thetax+(1-θ\theta)y)\leq θ\theta f(x)+ (1-θ\theta) f(y)

凸函数举例

  1. 一维上
    几何意义表示为函数任意两点连线上的值大于对应自变量处的函数值,示意图如下:
    凸优化问题01:概述
    由图可以看出,f(z) = f(θ\thetax+(1-θ\theta)y) < θ\theta f(x)+ (1-θ\theta) f(y)
    一维情况下,不严格的说,凸函数是弦在上的函数。

  2. 二维上
    凸优化问题01:概述
    由图可以看出,f(x0) = f(θ\thetax1+(1-θ\theta)x2) < θ\theta f(x1)+ (1-θ\theta) f(x2)

凸优化

凸优化是约束优化的特殊形式(即要求定义域和目标函数均为凸函数)
其具体定义为:
A convex optimization problem is one of the form
minimizef0(x)minimize f_0(x)
subject to fi(x)bi,i=1,,msubject \ to \ f_i(x)\leq b_i, i = 1, \ldots, m
where the function f0, \ldots,fm: Rn\rightarrowR are convex, i.e., satisfy
fi(αx+βy) αfi(x)+βfi(y)f_i(\alpha x+\beta y) \ \leq \alpha f_i(x)+\beta f_i(y)
for all x, y \in Rn and all α\alpha, β\beta \inR with α+β\alpha + \beta = 1, α0\alpha \geq 0, β0\beta \geq 0.

参考资料

关于凸优化的一些简单概念
北京大学凸优化课程PPT