ARTICLE

凸函数

凸函数 (Convex Function) 凸函数 (Convex Function) 是数学分析、优化理论、统计学和经济学中的一个基本概念。直观上,凸函数的图形呈"碗状":函数图形上任意两点之间的弦(连接这两点的线段)都位于这两点之间函数图形的上方或与之重合。这一性质使得凸函数在优化问题中具有极其重要的地位——对于凸函数而言,任何一个局部最小值都必然是全局

浏览 79 更新 2025-10-26

凸函数 (Convex Function)

凸函数 (Convex Function) 是数学分析优化理论统计学经济学中的一个基本概念。直观上,凸函数的图形呈"碗状":函数图形上任意两点之间的(连接这两点的线段)都位于这两点之间函数图形的上方或与之重合。这一性质使得凸函数在优化问题中具有极其重要的地位——对于凸函数而言,任何一个局部最小值都必然是全局最小值,这是凸优化理论的核心基石。此外,凸函数在机器学习的损失函数设计、运筹学的决策建模以及金融工程的风险度量中均有广泛应用。凸性的概念最早可追溯至丹麦数学家詹森在20世纪初的系统研究,如今已成为现代应用数学和工程科学中不可或缺的分析工具。理解凸函数不仅是学习优化理论的起点,也是深入掌握统计分析、经济建模和信号处理等领域的重要基础。

定义与几何直观

定义在某个凸集(例如一个区间或整个实数轴 R\mathbb{R}CC 上的实值函数 f:CRf: C \to \mathbb{R} 称为凸函数,若对于 CC 中的任意两点 x1,x2x_1, x_2 以及任意 λ[0,1]\lambda \in [0, 1],以下不等式恒成立:

f(λx1+(1λ)x2)λf(x1)+(1λ)f(x2)f(\lambda x_1 + (1-\lambda)x_2) \leq \lambda f(x_1) + (1-\lambda) f(x_2)

该定义可从几何上分三层理解。第一,λx1+(1λ)x2\lambda x_1 + (1-\lambda)x_2 是连接 x1x_1x2x_2 线段上的所有点的参数化表示,λ\lambda0011 扫过整条线段。第二,f(λx1+(1λ)x2)f(\lambda x_1 + (1-\lambda)x_2) 是函数图形上对应点的高度。第三,λf(x1)+(1λ)f(x2)\lambda f(x_1) + (1-\lambda) f(x_2) 是连接 (x1,f(x1))(x_1, f(x_1))(x2,f(x2))(x_2, f(x_2)) 的弦上对应点的高度。不等式意味着函数图形始终位于弦的下方或与之重合,这种"向下弯曲"的形状正是凸函数的几何特征。

若对于任意不同的 x1,x2x_1, x_2λ(0,1)\lambda \in (0, 1),上述不等号严格成立(即"\leq"替换为"<<"),则称 ff严格凸函数。例如 f(x)=x2f(x)=x^2 是严格凸函数,而 f(x)=xf(x)=x 虽是凸函数但非严格凸,因为其图形与弦完全重合。凸函数的定义要求其定义域必须是凸集,这意味着函数的定义域不能有"凹陷"或断裂。

判定条件

一阶条件:对于在开区间上可微的函数 ff,它是凸函数的充要条件是图形处处位于任意一点的切线之上:

f(y)f(x)+f(x)(yx)f(y) \geq f(x) + f'(x)(y-x)

其中 f(x)f'(x) 为一阶导数。该不等式的直观含义是:函数在任意点的切线都是函数图形的全局下界。这一性质在梯度下降等优化算法的收敛性分析中扮演核心角色——它确保了沿负梯度方向移动能够逐步逼近全局最小值,且不会陷入局部最优的陷阱。

二阶条件:对于二阶可微的函数,判断凸性更为简便。单变量情形下,ff 是凸函数当且仅当 f(x)0f''(x) \geq 0 在整个定义域上成立;若 f(x)>0f''(x) > 0,则 ff 严格凸。多变量情形下,f:RnRf: \mathbb{R}^n \to \mathbb{R} 为凸的充要条件是Hessian矩阵(所有二阶偏导构成的对称矩阵)在整个定义域上半正定;若 Hessian 矩阵正定,则函数严格凸。实际应用中,判断 Hessian 矩阵的半正定性通常通过检查其特征值是否全部非负来完成。

上境图:函数 ff上境图定义为 epi(f)={(x,y)xC,yf(x)}\text{epi}(f) = \{(x, y) \mid x \in C, y \geq f(x)\}ff 是凸函数当且仅当 epi(f)\text{epi}(f)凸集。这一等价关系巧妙地连接了函数凸性与集合凸性,是泛函分析和变分法中的重要工具,也为研究凸函数的对偶理论提供了几何直观的基础。

凸函数与凹函数

与凸函数相对的概念是凹函数ff 称为凹函数当且仅当 f-f 为凸函数,其定义不等式方向相反:f(λx1+(1λ)x2)λf(x1)+(1λ)f(x2)f(\lambda x_1 + (1-\lambda)x_2) \geq \lambda f(x_1) + (1-\lambda) f(x_2)。几何上,凹函数的弦位于图形下方。二阶可微凹函数满足 f(x)0f''(x) \leq 0。有趣的是,线性函数 f(x)=ax+bf(x)=ax+b 既是凸函数也是凹函数,这是唯一同时具备两种性质的函数类。在经济学中,凸函数常用于刻画成本和生产函数,而凹函数则常用于描述效用和福利函数。

重要性质与应用

凸优化:在凸优化中,目标函数和约束集均为凸。这类问题具有两个理想性质:局部最优即全局最优,且存在多项式时间的高效算法(如内点法梯度下降法牛顿法)。最小二乘法线性规划二次规划支持向量机的训练均为凸优化的经典实例。深度学习中常用的交叉熵损失函数也是凸函数。

詹森不等式:若 ff 为凸函数,XX随机变量,则 E[f(X)]f(E[X])\mathbb{E}[f(X)] \geq f(\mathbb{E}[X])。这一不等式是概率论和信息论中许多基础结论的源头,也是推导EM算法收敛性的关键工具。在金融学中,若投资者的效用函数 UU 为凹函数(代表风险厌恶),则对于不确定收益 XXE[U(X)]<U(E[X])\mathbb{E}[U(X)] < U(\mathbb{E}[X]),即投资者偏好确定的收益而非等期望值的随机收益,这一结论构成了现代投资组合理论的行为基础。

经济学:在生产理论中,成本函数通常被假设为产量的凸函数,反映边际成本递增的普遍经济规律。凹效用函数则是描述消费者风险厌恶行为的标准模型。在福利经济学中,社会福利函数通常被假设为凹函数以体现平等偏好。

保持凸性的运算

在构建复杂模型时,以下运算保持凸性:非负加权和——凸函数的正系数线性组合仍为凸;仿射复合——若 ff 凸,则 g(x)=f(Ax+b)g(x)=f(Ax+b) 凸;逐点最大化——有限或无限个凸函数的逐点最大值仍为凸函数;下确界——在某些条件下,凸函数对部分变量的下确界仍为凸函数。这些运算规则使得我们可以从简单的凸函数出发,构建复杂的凸模型。

常见示例

典型凸函数包括:二次函数 f(x)=ax2+bx+cf(x)=ax^2+bx+ca0a \geq 0);指数函数 f(x)=eaxf(x)=e^{ax} 对任意实数 aa 均为凸;绝对值函数 f(x)=xf(x)=|x| 是凸函数但在零点不可微;对数函数 f(x)=logxf(x)=-\log x(0,)(0, \infty) 上严格凸。此外,所有范数函数(包括欧几里得范数曼哈顿范数)、最大值函数 f(x)=max{x1,,xn}f(x)=\max\{x_1,\dots,x_n\} 以及凸集的指示函数均为凸函数。