연속 최적화(Continuous optimization)는 활발한 연구 분야이며, 우리는 최근의 발전 사항들을 포괄적으로 다루려 하지는 않는다.

$\quad$ 경사 하강법의 관점에서 볼 때, 각각 고유한 문헌을 가지고 있는 두 가지 주요한 약점이 있다. 첫 번째 과제는 경사 하강법이 1차(first-order) 알고리즘이며, 표면의 곡률(curvature) 에 대한 정보를 사용하지 않는다는 사실이다. 길게 뻗은 계곡 같은 지형이 있을 때, 그래디언트는 우리가 가고자 하는 관심 방향과 수직으로 향하게 된다. 관성(momentum)의 아이디어는 일반적인 가속 기법(acceleration methods) 클래스로 일반화될 수 있다(Nesterov, 2018). 켤레 기울기법(Conjugate gradient methods)은 이전의 이동 방향을 고려함으로써 경사 하강법이 직면하는 문제들을 회피한다(Shewchuk, 1994). 뉴턴 방법(Newton methods)과 같은 2차(Second-order) 기법들은 곡률에 대한 정보를 제공하기 위해 헤시안(Hessian)을 사용한다. 스텝 사이즈(학습률)를 선택하기 위한 많은 방법들과 관성 같은 아이디어들은 목적 함수의 곡률을 고려함으로써 등장하게 되었다(Goh, 2017; Bottou et al., 2018). L-BFGS와 같은 준-뉴턴 방법(Quasi-Newton methods)은 더 저렴한 계산 방식을 사용하여 헤시안을 근사하려고 시도한다(Nocedal and Wright, 2006). 최근에는 하강 방향을 계산하기 위한 다른 측정 기준들에 대한 관심이 생겨났으며, 그 결과 거울 하강(mirror descent) (Beck and Teboulle, 2003) 및 자연 그래디언트(natural gradient) (Toussaint, 2012)와 같은 접근법들이 도출되었다.

$\quad$ 두 번째 과제는 미분 불가능한 함수를 다루는 것이다. 함수에 뾰족하게 꺾인 부분(kinks)이 있을 때 그래디언트 방법론은 잘 정의되지 않는다. 이러한 경우에 서브그래디언트 방법(subgradient methods) 이 사용될 수 있다(Shor, 1985). 미분 불가능한 함수를 최적화하기 위한 추가적인 정보와 알고리즘에 대해서는 Bertsekas(1999)의 책을 참고하라. 제약이 있는 최적화 문제를 위한 알고리즘들을 포함하여, 연속 최적화 문제를 수치적으로 풀기 위한 다양한 접근법에 대한 방대한 양의 문헌이 존재한다. 이 문헌들을 이해하기 위한 좋은 출발점은 Luenberger(1969)와 Bonnans et al.(2006)의 책이다. 연속 최적화에 대한 최근의 개괄(survey)은 Bubeck(2015)에 의해 제공된다.

$\quad$ 기계 학습의 현대적인 적용은 종종 데이터셋의 크기가 (전체 데이터를 한 번에 처리하는) 배치 경사 하강법(batch gradient descent)의 사용을 금지할 정도로 크다는 것을 의미한다. 따라서 확률적 경사 하강법(stochastic gradient descent, SGD) 이 대규모 기계 학습 방법론의 현재 핵심 일꾼(workhorse) 이다. 관련 문헌의 최근 개괄에는 Hazan(2015)과 Bottou et al.(2018)이 포함된다.

$\quad$ 쌍대성(duality)과 볼록 최적화(convex optimization)에 관해서는, Boyd와 Vandenberghe(2004)의 책이 온라인 강의와 슬라이드를 포함하고 있다. 더 수학적인 접근은 Bertsekas(2009)에 의해 제공되며, 최적화 분야의 주요 연구자 중 한 명인 Nesterov(2018)의 최근 저서도 있다. 볼록 최적화는 볼록 해석학(convex analysis)에 기반을 두고 있으며, 볼록 함수에 대한 더 근본적인 결과에 관심이 있는 독자는 Rockafellar(1970), Hiriart-Urruty와 Lemaréchal(2001), Borwein과 Lewis(2006)를 참조하기 바란다. 르장드르-펜첼 변환(Legendre-Fenchel transforms) 역시 앞서 언급된 볼록 해석학 책들에서 다뤄지고 있지만, 초보자에게 더 친화적인 설명은 Zia et al.(2009)에서 찾아볼 수 있다. 볼록 최적화 알고리즘의 분석에서 르장드르-펜첼 변환의 역할은 Polyak(2016)에 개괄되어 있다.