最优化问题:
- 解析解存在:最优解可以由公式简单计算
- 没有解析解
- 数值计算
- 启发式方法
例:
- 朴素贝叶斯、隐马尔可夫:最优解即极大似然估计值,可由概率计算公式直接计算
- 感知机、逻辑回归、最大熵模型、条件随机场:利用梯度下降法、拟牛顿法等。无拘束最优化问题的解法。
- 支持向量机:解凸二次规划的对偶问题。有序列最小最优化算法等。
- 决策树:启发式算法。特征选择、生成、剪枝是启发式地进行正则化的极大似然估计。
- 提升方法:加法模型、指数损失函数。启发式地从前往后逐步学习,逼近优化目标函数。
- EM算法:迭代的求解隐变量概率模型参数,收敛性可以保证,但不能保证收敛到全局最优。
其中凸优化问题:支持向量机、逻辑回归、最大熵模型、条件随机场,全局最优解保证存在。
最优化算法
- 迭代尺度法
- 牛顿法:迭代算法,每一步需要求解目标函数的海塞矩阵的逆矩阵,计算比较复杂
- 拟牛顿法:通过正定矩阵近似海塞矩阵的逆矩阵或海塞矩阵
- 梯度下降法
拉格朗日对偶性:在约束最优化问题中,常常利用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题,通过解对偶问题而得到原始问题的解。如:最大熵模型、支持向量机。
梯度下降 参数更新方法
梯度下降法是求解无约束最优化问题的一种最常用的方法,有实现简单的优点。梯度下降是迭代算法,每一步需要求解目标函数的梯度向量。
当目标函数是凸函数时,梯度下降法的解是全局最优解。一般情况下,其解不保证是全局最优解。
SGD
Δθt=−αgt Δ θ t = − α g t
Momentum
mt=γmt−1+(1−γ)gt m t = γ m t − 1 + ( 1 − γ ) g t
Δθt=−αmt Δ θ t = − α m t
Adagrad
Gt=Gt−1+g2t G t = G t − 1 + g t 2