机器学习优化算笔记
梯度下降
在统计学习中最开始接触的优化算法是梯度下降,最先熟悉和能手动推导的也是梯度下降,这是从逻辑回归模型中学习到的,逻辑回归的目标函数采用了最大似然函数,优化这个目标函数使用了梯度下降,如果数据量比较小,可以扫描整个数据集,更新一次参数,因为目标函数是如函数,得到的解是全局最优解;如果数据集非常大,可以采用随机梯度下降法,随机选取一部分样本来来快速参数,这样会有一些震荡,会得到接近全局最优解的局部最优解。但是梯度下降法在整个优化算法中速度比较慢,主要是最优解的收敛很慢,每次按照梯度下降的方向走一步,中规中矩,效率比较低,而且梯度下降只使用了目标函数的一阶偏导数信息,利用的信息量是非常有限的。
牛顿法与拟牛顿法
牛顿法与相关的拟牛顿法使用了目标函数的二阶导数信息,收敛的速度很快。各种相关变形优化算法的基础都是基于牛顿法的理论,因为牛顿法需要计算一个矩阵的逆矩阵,在N很大时计算非常耗时,因此会使用一些特定矩阵来近似海赛矩阵或其逆矩阵,加快计算。其中DFP方法是近似海赛矩阵的逆矩阵来求解,BFGS是直接近似海塞矩阵来求解
不错的一些介绍文章
1 牛顿法与拟牛顿法学习笔记(一)牛顿法——peghoty
2. 牛顿法与拟牛顿法学习笔记(二)拟牛顿条件——peghoty
3. 牛顿法与拟牛顿法学习笔记(三)DFP 算法——peghoty
4. 牛顿法与拟牛顿法学习笔记(四)BFGS 算法——peghoty
5. 牛顿法与拟牛顿法学习笔记(五)L-BFGS 算法——peghoty