1) Unconstrained optimization
Steepest gradient descent를 보통 gradient descent라고 많이 부름
-> x에 조건이 달려있지 않을 때만 사용 가능
(1) Stochastic gradient: mini-batch가 batch를 잘 근사하도록
(2) mini-batch gradient: sub-set만 고려
(3) Batch gradient: 모든 데이터 전부 고려
* Momentum: 직전에 업데이트한 방향을 고려하자!!! -> 지그재그로 수렴하는 걸 좀 더 가속화
2) Constrained optimization
x에 조건이 있을 때!! 어떻게 쉽게 풀까
Lagrange multipliers: x, 람다, v의 function L
Lagrange dual function: 람다, v의 function D (x 고려 x)
-> lagrange dual function이 원래 optimization값의 lower bound가 된다.
-> D(람다, v) <= L(x, 람다, v) <= f(x) -> D(람다, v) <= optimal
3) Convex optimization
모든 문제에 대해서 항상 해결 가능!! 만능 optimization method!!!
lagrange dual function이 항상 convex!! concave!!