1、最速下降法
在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。在机器学习中,基于基本的梯度下降法发展了两种梯度下降方法,分别为随机梯度下降法和批量梯度下降法。
2、共轭梯度法
所谓共轭梯度法, 最大的优势就是每个方向都走到了极致, 也即是说寻找极值的过程中绝不走曾经走过的方向,那么 n 空间的函数极值也就走 n 步就解决了.假如是二维空间, 那就直走两步, 跟最速下降法比优势是不言而喻的。
3、牛顿法
牛顿法(Newton method)和拟牛顿法(quasi Newton method)是求解无约束最优化问题的常用方法,有收敛速度快的优点。牛顿法是迭代算法,每一步都需求解目标函数的海塞矩阵(Hessian Matrix),计算比较复杂。拟牛顿法通过正定矩阵近似海塞矩阵的逆矩阵或海塞矩阵,简化了这一计算过程。
拟牛顿法
牛顿法虽然收敛速度快,但是需要计算海塞矩阵的逆矩阵,而且有时目标函数的海塞矩阵无法保持正定,从而使得牛顿法失效。为了克服这两个问题,人们提出了拟牛顿法。这个方法的基本思想是:不用二阶偏导数而构造出可以近似海塞矩阵(或海塞矩阵的逆)的正定对称阵。不同的构造方法就产生了不同的拟牛顿法。
4、约束非线性优化
5、KKT条件
对于具有等式和不等式约束的一般优化问题,KKT条件给出了判断X*是否为最优解的必要条件。