更新于 2026年8月21日

凸函数#


术语解释#

凸函数(Convex Function) 是指其图像上方的区域构成凸集的函数。直观上,凸函数的形状通常像字母 U 或抛物线:从一端下降到谷底再上升到另一端,中间没有"凹陷"或"波浪",即函数图像上任意两点的连线永远位于图像上方或之上,如下图所示。

凸函数示意图
凸函数示意图

相反,以下函数就是凸函数,如图所示。

非凸函数示意图
非凸函数示意图

在机器学习中,大量常见目标函数都是凸函数:

  • $L_2$ 损失($L_2$ Loss):$\frac{1}{n}\sum (y_i - \hat{y}_i)^2$

  • Log Loss(对数损失):$- \frac{1}{n}\sum \bigl[y_i \log \hat{p}_i + (1-y_i)\log(1-\hat{p}_i)\bigr]$

  • $L_1$ 正则化($L_1$ Regularization):$\lambda \sum |w_i|$

  • $L_2$ 正则化($L_2$ Regularization):$\lambda \sum w_i^2$

凸性的可加性也是非常实用的性质:两个凸函数之和仍是凸函数。因此「$L_2$ loss + $L_1$ 正则」「$L_2$ loss + $L_2$ 正则」组成的整体目标函数依然是凸函数,因此可以放心使用为凸优化设计的求解器。

需要特别强调的是:深度学习模型几乎从不是凸函数,多层神经网络的复合使损失充满局部极小值、鞍点与平坦区域,结构远比 U 形复杂。不过为凸优化设计的算法(如梯度下降、SGD)在深度网络上仍常常能找到不错的解——虽然这个解不被保证是全局最优。


相关术语#

  • 梯度下降

  • 随机梯度下降

  • $L_2$ 损失

  • 对数损失

  • $L_1$ 正则化

  • $L_2$ 正则化

引用#

[1] https://developers.google.com/machine-learning/glossary#convex-function

阅读 --