凸函数与非凸函数
在数学中,如果一个函数在它定义的整个区间上满足以下性质,那么它就是一个凸函数:对于任意两个点x和y以及任意一个实数t(0 ≤ t ≤ 1),函数在点tx + (1 - t)y的值小于或等于在点x和点y的函数值的加权平均,也就是说,凸函数的图形在两点之间的弦的下方。
即f(tx+(1-t)y) ≤ tx+(1-t)y, 当≤替换成<,则是严格凸函数
在非凸函数中,这个性质不再满足。这就导致了我们可能会找到一些局部最小值,但这些并不是全局最小值。
-
机器学习中的凸优化: 在许多机器学习算法中,如线性回归、逻辑回归和支持向量机等,我们需要最小化一个损失函数以找到最佳的模型参数。在这些情况下,损失函数通常被设计为凸函数,这样我们就可以使用凸优化的技术(例如梯度下降)来找到全局最小值。
-
深度学习中的非凸优化: 不过,当我们进入到深度学习领域时,情况就变得更为复杂。神经网络的损失函数通常是非凸的,这意味着我们可能会遇到多个局部最小值。虽然我们仍然使用梯度下降和其变种来优化这些损失函数,但是我们需要使用一些策略(例如动量、学习率衰减、早期停止等)来避免陷入不良的局部最小值。
如何判断凸与非凸函数
单变量
判断一个函数是否是凸函数的标准方法是通过它的二阶导数(如果存在的话)。这里有两个关键的定义:
-
凸函数(Convex function):如果一个函数 f(x) 的二阶导数是非负的(即 f''(x) >= 0)对于定义域中的所有 x,那么我们称它为凸函数。
-
凹函数(Concave function):如果一个函数 f(x) 的二阶导数是非正的(即 f''(x) <= 0)对于定义域中的所有 x,那么我们称它为凹函数。
换句话说,凸函数的形状是"U"型的,而凹函数的形状是"∩"型的。
如果一个函数的二阶导数在不同的点上变号(即在某些点上为正,在其他点上为负),那么这个函数既不是凸函数也不是凹函数,我们称之为非凸函数。在这种情况下,该函数的图像既包含“U”型曲线又包含"∩"型曲线。
多变量函数
我们需要使用所谓的海森矩阵来判断凸性。具体来说,如果一个函数的海森矩阵(Hessian矩阵)是半正定的,那么它就是凸函数;如果它的海森矩阵是半负定的,那么它就是凹函数。
Hessian矩阵是一个二阶偏导数矩阵,它可以用来描述函数在某一点的曲率。在多元函数中,Hessian矩阵的定义如下:
H(f(x)) = [∂²f / ∂xᵢ∂xⱼ]
其中x = (x₁, x₂, ..., xₙ)是一个n维向量,而f(x)是一个标量函数。这个矩阵的元素是二阶偏导数。
如果函数f(x)的Hessian矩阵在定义域上是半正定的(即对任何非零向量z,都有zᵀHz >= 0),那么我们说这个函数是凸的。如果Hessian矩阵是半负定的(即对任何非零向量z,都有zᵀHz <= 0),那么我们说这个函数是凹的。
请注意,一般情况下,我们不能保证Hessian矩阵的正定性或负定性,因为它可能在不同的点上有不同的值。因此,在判断一个函数是否为凸函数时,我们需要检查其Hessian矩阵在整个定义域上的性质。
凸优化与非凸优化在机器学习和深度学习中的应用
凸优化
在凸优化中,任何局部最小值也是全局最小值。因此,当我们找到一个最小值时,我们可以确信我们已经找到了全局最小值。
非凸优化
在非凸优化中,我们的函数可能有很多局部最小值,这些局部最小值并不是全局最小值。这使得找到真正的全局最小值变得非常困难。一般来说,非凸优化问题没有通用的全局最优解法,只能找到近似解。在深度学习中,优化问题通常是非凸的,这是因为神经网络中的权重和偏置是通过非线性激活函数进行组合的,而非线性激活函数的组合往往是非凸的。
面对非凸优化问题时,我们主要的目标是避免陷入局部最小值,而寻找到尽可能好的解。以下是一些常用的策略和技术:
-
随机初始化:在开始训练神经网络之前,我们通常会随机初始化网络的权重。这有助于打破对称性,使得不同的神经元学习到不同的特征。同时,通过改变初始化的权重,我们可以在优化空间中的不同位置开始,从而有可能找到不同的局部最小值。
-
使用更复杂的优化算法:虽然梯度下降是最常用的优化算法,但它可能会陷入非优化的局部最小值。因此,我们通常会使用更复杂的优化算法,如Adam、RMSprop等。这些算法不仅考虑了梯度,还考虑了二阶信息(比如历史的梯度值),可以更好地导航非凸优化空间。
-
使用正则化:正则化可以帮助我们控制模型的复杂性,防止过拟合。同时,它也可以帮助我们在优化过程中更好地控制权重的大小,从而避免陷入非优化的局部最小值。
-
使用批量梯度下降:批量梯度下降通过在每一步计算一个小批量的样本的平均损失来更新权重。这可以增加优化过程的稳定性,并且可以提供更好的梯度估计,有助于避免陷入非优化的局部最小值。
标签:函数,凸函数,矩阵,最小值,与非,优化,Hessian From: https://www.cnblogs.com/HOI-Yzy/p/17435707.html