M a c h i n e l e a r n i n g = R e p r e s e n t a t i o n + O p t i m i z a t i o n + E v a l u a t i o n Machine learning=Representation+Optimization+Evaluation Machinelearning=Representation+Optimization+Evaluation
一.概述
1.概念
(1)优化问题:
"(最)优化问题"(Optimization Problem)是指选择1组参数,以使指定指标(称为"目标")达到指定限制条件(称为"约束")下的最优值
(2)凸优化问题:
2.一般形式:
设 X = ( x 1 , x 2 . . . x n ) T X=(x_1,x_2...x_n)^T X=(x1,x2...xn)T,则最优化问题的一般形式为 min f ( X ) s . t . { g i ( X ) ≤ 0 ( i = 1 , 2... p ) h j ( X ) = 0 ( j = 1 , 2... q ) \min{f(X)}\\s.t.\begin{cases}g_i(X)≤0\,(i=1,2...p)\\h_j(X)=0\,(j=1,2...q)\end{cases} minf(X)s.t.{ gi(X)≤0(i=1,2...p)hj(X)=0(j=1,2...q)
3.常见优化问题:
①求回归函数/分类器的参数
②AdaBoost
③GAN
④AutoML
二.常见优化算法
参见:https://zhuanlan.zhihu.com/p/158215009
1.基本模块:
①梯度下降
②临近(点)算子
③对偶问题:原问题不好求解或计算量较大时可考虑转化为对偶问题
④随机化(Randomization):数据量过大时使用,如随机梯度下降
上面4个模块的不同的拼接就形成了各种优化算法
2.无约束优化算法:
梯度下降
共轭梯度
牛顿法与拟牛顿法
L-BFGS
临近梯度下降
3.约束优化方法:
投影梯度下降
罚方法
条件梯度
ADMM
坐标下降法
4.加速算法:
①确定:
Heavy ball
Nesterov
加速临近梯度
②随机:
SVRG
Katyusha
Catalyst
SPIDER