경사 강하강

Gradient descent
2D 경사 강하

수학에서, 구배 강하(흔히 가장 가파른 강하라고도 함)는 미분 가능한 함수의 국소 최소값을 찾기 위한 1차 반복 최적화 알고리즘이다.이 아이디어는 현재 지점에서 함수의 기울기(또는 대략적인 기울기)의 반대 방향으로 반복 단계를 밟는 것이다. 왜냐하면 이것이 가장 가파른 하강 방향이기 때문이다.반대로, 구배 방향으로 발을 디디면 해당 기능의 국소 최대값이 됩니다. 그러면 절차를 구배 상승이라고 합니다.

경사 하강은 일반적으로 [1]1847년에 이것을 처음 제안한 오귀스틴 루이 코시에게 기인한다.자크 아다마르는 [2][3]1907년에 독립적으로 비슷한 방법을 제안했다.비선형 최적화 문제에 대한 수렴 특성은 1944년 [4]Haskell Curry에 의해 처음 연구되었으며, 이후 수십 [5][6]년 동안 이 방법이 점점 더 잘 연구되고 사용되었다.

묘사

일련의 레벨 세트에 대한 경사 강하 그림

구배 강하 기능은 변수 함수 )(\ F 정의되고a(\ 근방에서 미분 가능\ F\style에서 빠르게 감소한다는 관찰에 기초합니다. -F에서 F(\ )의 음의 구배 방향으로 이동합니다.\ F는 다음과 같습니다.

스텝 사이즈 또는 학습 레이트가 충분히 작을 경우 R+ \F( + )\ F ( \ { a { a _ { } ) \ \ { a _ n + }) 。 말로 표현하면 됩니다. \{a 로컬 최소값으로 이동해야 하기 때문입니다이 관찰을 염두에 두고 0부터 시작하여 x , x, \ {{1 \ 고려합니다

우리는 단조로운 시퀀스를 가지고 있다.

따라서 시퀀스( n) {(가) 원하는 로컬 최소값으로 수렴되기를 바랍니다.스텝 의 값은 반복마다 변경할 수 있습니다.기능 F{F\displaystyle}(예를 들어, F{\displaystyle F}나는 수막새와∇ F{\nabla F}\displaystyle 리프 시츠)과γ{\displaystyle \gamma}의 특별한 선택에 특정 가설로(예:은 울프 조건 또는 Barzilai–Borwein method[7][8]을 만족시키는 라인 검색을 통하여 선택한 a형 승리sfol로잉)

로컬 최소값으로의 컨버전스를 보증할 수 있습니다. F F 볼록한 경우 모든 국소 최소값도 글로벌 최소값이므로 이 경우 경사 하강이 글로벌 솔루션으로 수렴될 수 있습니다.

이 과정은 다음 그림에 설명되어 있습니다.여기서 F F 평면상에 정의되며 그래프는 볼 모양이라고 가정합니다.파란색 곡선은 등고선, 즉 F F 일정한 영역입니다.한 점에서 시작되는 빨간색 화살표는 해당 지점에서 음의 구배 방향을 나타냅니다.점의 (음수) 구배는 해당 점을 통과하는 등고선과 직교합니다.경사 하강은 볼의 맨 아래, 즉 F F 값이 최소인 지점까지 이어집니다.

경사 강하 이해를 위한 유사점

산안개

경사 강하 뒤에 있는 기본적인 직관은 가상 시나리오로 설명할 수 있다.사람이 산속에 갇혀서 내려오려고 하고 있다(즉, 지구적 최소치를 찾으려고 한다).안개가 짙어 가시거리가 극히 낮다.따라서 하산길은 보이지 않기 때문에 최소값을 찾기 위해 현지 정보를 이용해야 한다.구배 강하 방법을 사용할 수 있다. 구배 강하 방법은 현재 위치에서 힐의 급경사를 살펴본 다음 가장 가파른 강하 방향(예: 내리막)으로 나아간다.만약 그들이 산의 정상(즉, 최대)을 찾으려 한다면, 그들은 가장 가파른 오르막(즉, 오르막) 방향으로 나아갈 것이다.이 방법을 사용하면, 그들은 결국 산을 내려가는 길을 찾거나 산 호수 같은 구멍(즉, 국지적 최소 지점 또는 안장 지점)에 갇힐 수 있습니다.그러나 언덕의 급경사는 단순한 관측만으로 금방 알 수 있는 것이 아니라 그 사람이 가지고 있는 정교한 측정기가 필요하다고 가정해 보자.이 기구로 언덕의 급경사를 측정하려면 상당한 시간이 걸리기 때문에 해가 지기 전에 산을 내려오려면 기구 사용을 최소화해야 한다.문제는 트랙을 벗어나지 않기 위해 언덕의 급경사를 측정해야 하는 빈도를 선택하는 것입니다.

이 비유에서 인물은 알고리즘을 나타내고 산을 내려가는 경로는 알고리즘이 탐색하는 파라미터 설정의 시퀀스를 나타냅니다.언덕의 경사는 해당 지점의 함수 기울기를 나타냅니다.급경사를 측정하는 데 사용되는 기구는 미분입니다.이동하도록 선택한 방향은 해당 지점의 함수 구배와 일치합니다.다른 측정을 수행하기 전에 이동하는 시간은 스텝 크기입니다.

계단 크기 및 하강 방향 선택

스텝 사이즈가 컨버전스가 느려지고 컨버전스로 이어지므로 설정 찾는 것이 중요합니다.Philip Wolfe는 또한 [9]"[절망] 방향의 현명한 선택"을 실제로 사용하는 것을 지지했다.가장 가파른 하강 방향에서 벗어난 방향을 사용하는 것은 직관에 반하는 것처럼 보일 수 있지만, 작은 경사는 훨씬 더 먼 거리에 걸쳐 유지됨으로써 보상될 수 있다는 생각이다.

이를 수학적으로 판단하려면 _ 스텝사이즈 _ 고려하여 보다 일반적인 업데이트를 고려합니다.

n + - }=\ - \ {p} _{n 、 \p}

_ _ 설정을 찾으려면 약간의 검토가 필요합니다.우선 다운을 포인트 하는 업데이트 방향을 원합니다.수학적으로 있게 함θ n{\displaystyle \theta_{n}}∇ F(는 n){\displaystyle \nabla F(\mathbf{a_{n}})}사이에 n{\displaystyle \mathbf{p}_{n}}이 각도를 의미한다, 이것은 왜냐면θ n을 ⁡;0.{\displaystyle \cos \theta_{n}>0이 필요하다.}에 더 이상 말하기 위해서는, 우리는 얼마나 자주'o'를에 대해 더 알우리가 최적화하고 있는 객관적 함수. F 지속적으로 차별화된다는 매우 약한 가정 하에서 다음과 같은 [10]사실을 증명할 수 있습니다.

(1)

불평등은 감소를 확인할 수 있는 양이 대괄호 안의 두 용어 사이의 균형에 따라 결정된다는 것을 의미합니다.대괄호 안의 첫 번째 항은 하강 방향과 음의 구배 사이의 각도를 측정합니다.두 번째 항은 하강 방향을 따라 기울기가 얼마나 빨리 변화하는지를 측정합니다.

원칙적으로 (1)은 최적의 단계 크기와 을 선택하기 위해 pn \ {p} and n \gamma _ 대해 최적화될 수 있다.문제는 두 번째 항을 대괄호로 묶어서 평가하려면 t n F __{를 평가해야 하며 추가 구배 평가는 일반적으로 비용이 많이 들고 바람직하지 않다는 것입니다.이 문제를 회피하는 몇 가지 방법은 다음과 같습니다.

  • n F ( ){ } = \ F을 설정하여 현명한 하강 방향의 이점을 포기하고 라인 검색사용하여 Wolfe 조건을 충족하는 적절한 스텝 n(\ _를 찾습니다.학습률을 선택하는 보다 경제적인 방법은 좋은 이론적 보장과 실험 결과를 모두 갖춘 방법인 역추적 라인 검색입니다.그라데이션으로 선택할 필요는 없습니다.그라데이션에 양의 교차곱이 있는 방향은 값이 감소합니다(\ _의 값이 작을 경우).
  • F F 2회 미분 가능하다고 할 때 HessianF \ 사용하여 - n p) - ) . \ \ _{ \ \ { \ .) p p p p p p p p、 pn \ style \ { p } { p { \ \ \ p \ mathbf { p } { p } _ p p p p p p p p p p p p p p p p p p p p \ mathbf { mathbf
  • F Lipschitz라고 가정하고, 그 상수 L(\ L 하여 - t np ) - F ) 2 L n p \ )로 바인드 합니다 _ 부등식을 최적화하여 \}) 및 n(\displaystyle _ 합니다.
  • t [ , F( - nn 2F ( )2 2 2 style \_ { \ , ]{\ ( \ 의 커스텀모델을 작성합니다 F 그런 다음 부등식을 최적화하여 n \ _ n \ _ 합니다.
  • 볼록함F(\ F 보다 강하게 가정하면 보다 고도의 기술이 가능할 수 있다.

통상, 상기의 몇개의 레시피를 따르는 것으로, 로컬의 최소값으로의 컨버전스를 보증할 수 있습니다. F F 볼록한 경우 모든 국소 최소값도 글로벌 최소값이므로 이 경우 경사 하강이 글로벌 솔루션으로 수렴될 수 있습니다.

선형 시스템의 해법

Wiener[11] 필터에 적용된 가장 가파른 하강 알고리즘

경사 강하를 사용하여 선형 방정식의 시스템을 풀 수 있습니다.

2차 최소화 문제로 재구성되었습니다.시스템 A(\A)가 실제 대칭이고 의 정의인 경우, 목적 함수는 2차 함수로 정의되며, 최소화된 함수는

하도록

경우 선형 최소 제곱은 다음을 정의합니다.

A 대한 전통적인 선형 최소 에서는 유클리드사용한다

라인 검색 최소화는 반복마다 로컬 스텝 크기size {\ 구함으로써 2차 함수에 대해 분석적으로 수행할 수 있으며 로컬 최적 {\ 대한 명시적 공식도 [5][12]알려져 있습니다.

예를 들어, 실제 대칭행렬과 의 경우(\ A 간단한 알고리즘은 다음과 같습니다.[5]

{ A 곱셈을 피하기 위해 x : + r { } :=\ \ := - {

방법은 선형 방정식을 푸는 데 거의 사용되지 않으며, 공역 구배법이 가장 인기 있는 대안 중 하나입니다.경사 강하 반복 횟수는 일반적으로 시스템 AA)(\ 고유값 대 고유값 비율스펙트럼 조건 비례하며, 공역 경사법의 수렴은 typeall이다.조건 번호의 제곱근에 의해 결정되는 y는 훨씬 더 빠릅니다.두 방법 모두 구배 강하 시 [13]전제조건에 대한 가정이 덜 필요할 수 있는 전제조건의 이점을 얻을 수 있다.

비선형 계의 해

경사 강하법은 비선형 방정식의 시스템을 푸는 데도 사용할 수 있습니다.다음은 세 가지 미지의 변수(x2, x 및 x3)에1 대해 구배 강하를 사용하여 해결하는 방법을 보여 주는 예입니다.이 예는 경사 강하의 한 가지 반복을 보여준다.

비선형 방정식 고려

관련 기능을 소개합니다.

어디에

이제 목적 함수를 정의할 수 있습니다.

최소한으로 억제할 겁니다.첫 번째 추측으로,

우리는 그것을 알고 있습니다.

Jacobian 다음과 같이 지정됩니다.

계산은 다음과 같습니다.

따라서

그리고.

이 예에 적용된 최초의 83회 구배 강하 반복을 보여주는 애니메이션.표면은 현재 x( )의 F(x ({( \ { x { ( n ) } )의 등각면이며, 화살표는 하강 방향을 나타냅니다.스텝 사이즈가 작고 일정하기 때문에 컨버전스가 느립니다.

이제 다음과 같은 § _ 찾아야 합니다.

이것은, 다양한 라인 검색 알고리즘으로 실행할 수 있습니다. , \ _}= 이라고 추측할 수도 있습니다.

이 값에서 목적 함수를 평가하면 산출량

( ) (\ F= 에서 다음 단계 값으로의 감소

목적 함수의 대폭적인 감소입니다.그 이상의 단계를 진행하면 시스템에 대한 대략적인 해결책이 발견될 때까지 그 가치가 더 떨어집니다.

평.

경사 하강은 무한 차원에서도 모든 수의 차원이 있는 공간에서 작동합니다.후자의 경우, 서치 공간은 전형적으로 함수 공간이며, 강하 [6]방향을 결정하기 위해 최소화하는 함수의 프레셰 도함수를 계산한다.

그 경사 강하 작용은 코시-슈바르츠 부등식의 결과로 볼 수 있다.그 기사는 어떤 차원에서도 두 벡터의 내부(도트) 곱의 크기가 동일할 때 최대가 된다는 것을 증명한다.경사 강하의 경우, 독립 변수 조정의 벡터가 부분 도함수의 경사 벡터에 비례하는 경우이다.

다른 방향의 곡률이 주어진 기능에 대해 매우 다른 경우, 구배 강하에는 필요한 정확도로 국소 최소값을 계산하기 위해 많은 반복이 필요할 수 있다.이러한 기능에서는 공간의 형상을 변경해 동심원처럼 기능 레벨 세트를 형상화하는 프리컨디셔닝이 느린 컨버전스를 치료한다.그러나 전제조건의 구축과 적용은 계산상 비용이 많이 들 수 있다.

경사 하강은 라인 검색과 결합할 수 있으며, 모든 반복에서 로컬에서 최적의 스텝 크기δ(\ 찾을 수 있습니다.회선 검색에는 시간이 걸릴 수 있습니다.반대로, 고정「\ 사용하면, 컨버전스가 저하하는 일이 있습니다.

공역 구배 기술을 이용한 뉴턴의 방법헤시안 반전에 기초한 방법이 더 나은 [14][15]대안이 될 수 있다.일반적으로 이러한 방법은 더 적은 반복으로 수렴되지만 각 반복의 비용은 더 높아집니다.예를 들어 BFGS 방식은 보다 정교한 라인 검색 알고리즘과 조합하여 구배 벡터를 "더 나은" 방향으로 곱한 행렬을 모든 단계에서 계산하여의 "최적의" 값을 구하는 것입니다style \ 컴퓨터 메모리가 domi를 발행하는 매우 큰 문제에 대해.네이트, BFGS 또는 가장 가파른 하강 대신 L-BFGS와 같은 제한된 메모리 방법을 사용해야 합니다.

경사 강하법은 상미분 xθ ( ) -f ( ()) {\ x' (t)=-\ f 경사 흐름에 적용하는으로 볼 수 있다.또한 이 방정식은 제어 x ( ) ( t ) (t ){ ' ( t )=( t ) ( t) f( ()}의 최적[16] 로서 도출할 수 있습니다

변경 사항

경사 하강은 로컬 최소값으로 수렴될 수 있으며 안장 지점 근처에서 느려질 수 있습니다.구속되지 않은 2차 최소화의 경우에도 구배 강하에서는 반복 진행에 따라 후속 반복의 지그재그 패턴이 개발되어 수렴이 느려진다.이러한 결함을 해결하기 위해 경사 강하의 여러 가지 수정이 제안되었다.

고속 그라데이션 방식

Yuii Nesterov는 볼록한 문제에 대해 보다 빠르게 수렴할 수 있는 단순한 수정을 제안했으며[17] 이후 더욱 일반화되었다.구속되지 않은 평활문제의 경우 고속구배법(FGM) 또는 가속구배법(AGM)이라고 한다. 구체적으로는 F(\F)가 볼록하고 F 립시츠이며 F(\ F 볼록하다고 가정하지 않는다. 강하법에 의해 각 에서 생성되는 목표값의 오류(\ k Oright제한됩니다. Nesterov 가속 기법을 사용하면 (왼쪽로 감소합니다.} [18]비용함수 O ( -) ( \ \ { O} \ { ^ { - 2 } \ )는 1차 최적화 방법에 최적이라고 알려져 있다.그럼에도 불구하고 상수 인자를 줄임으로써 알고리즘을 개선할 수 있는 기회가 있습니다.OGM([19]Optimized Gradient Method)은 이 상수를 2배로 줄여 대규모 문제에 [20]가장 적합한 1차 방법이다.

제약되거나 평활하지 않은 문제의 경우, 네스테로프의 FGM은 근위 경사법의 가속인 FPGM(Fast Proximal Gradient Method)이라고 불린다.

모멘텀 또는 헤비볼법

지그재그 형태의 경사 강하 패턴을 깨려고 할 때, 운동량 또는 무거운방법은 최소화된 [5]함수의 값의 표면에서 미끄러지는 무거운 공 또는 보존력장의 [21]점성 매체를 통한 뉴턴 역학에서의 질량 이동과 유사한 운동량 용어를 사용합니다.모멘텀이 있는 경사 하강은 각 반복 시 솔루션 업데이트를 기억하고 다음 업데이트를 경사도와 이전 업데이트의 선형 조합으로 결정합니다.구속되지 않는 2차 최소화에 대해서는 헤비볼법의 이론적인 수렴속도 경계가 최적의 공역구배법[5]점근적으로 동일하다.

이 기술은 확률적 경사 강하 및 인공 신경망[22][23]훈련하는 데 사용되는 역전파 알고리즘의 확장으로 사용된다.갱신 방향에서 확률적 경사 하강은 확률적 특성을 추가한다.가중치를 사용하여 도함수를 계산할 수 있습니다.

내선번호

일련의 구속조건에 대한 투영을 포함시킴으로써 구속조건을 처리하기 위해 경사 강하를 확장할 수 있다.이 방법은 투영을 컴퓨터에서 효율적으로 계산할 수 있는 경우에만 가능합니다.적절한 전제 하에 이 방법은 수렴됩니다.이 방법은 모노톤 포함에 대한 전진-후진 알고리즘(볼록 프로그래밍 및 변동 [24]부등식 포함)의 특정 사례이다.

경사 하강은 주어진 브레그만 [25]발산으로서 유클리드 거리 제곱을 사용하는 거울 강하의 특별한 경우이다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Lemaréchal, C. (2012). "Cauchy and the Gradient Method" (PDF). Doc Math Extra: 251–254.
  2. ^ Hadamard, Jacques (1908). "Mémoire sur le problème d'analyse relatif à Véquilibre des plaques élastiques encastrées". Mémoires présentés par divers savants éstrangers à l'Académie des Sciences de l'Institut de France. 33.
  3. ^ Courant, Richard (January 1943). "Variational methods for the solution of problems of equilibrium and vibrations". Bull. Amer. Math. Soc. 49: 1–23. doi:10.1090/S0002-9904-1943-07818-4 – via Project Euclid.
  4. ^ Curry, Haskell B. (1944). "The Method of Steepest Descent for Non-linear Minimization Problems". Quart. Appl. Math. 2 (3): 258–261. doi:10.1090/qam/10667.
  5. ^ a b c d e Polyak, Boris (1987). Introduction to Optimization.
  6. ^ a b Akilov, G. P.; Kantorovich, L. V. (1982). Functional Analysis (2nd ed.). Pergamon Press. ISBN 0-08-023036-9.
  7. ^ Barzilai, Jonathan; Borwein, Jonathan M. (1988). "Two-Point Step Size Gradient Methods". IMA Journal of Numerical Analysis. 8 (1): 141–148. doi:10.1093/imanum/8.1.141.
  8. ^ Fletcher, R. (2005). "On the Barzilai–Borwein Method". In Qi, L.; Teo, K.; Yang, X. (eds.). Optimization and Control with Applications. Applied Optimization. Vol. 96. Boston: Springer. pp. 235–256. ISBN 0-387-24254-6.
  9. ^ Wolfe, Philip (1969-04-01). "Convergence Conditions for Ascent Methods". SIAM Review. 11 (2): 226–235. doi:10.1137/1011036. ISSN 0036-1445.
  10. ^ Bernstein, Jeremy; Vahdat, Arash; Yue, Yisong; Liu, Ming-Yu (2020-06-12). "On the distance between two neural networks and the stability of learning". arXiv:2002.03432 [cs.LG].
  11. ^ 헤이킨, 사이먼 S적응 필터 이론Pearson Education India, 2008. - 108-142, 217-242 페이지
  12. ^ Saad, Yousef (2003). Iterative methods for sparse linear systems (2nd ed.). Philadelphia, Pa.: Society for Industrial and Applied Mathematics. pp. 195. ISBN 978-0-89871-534-7.
  13. ^ a b Bouwmeester, Henricus; Dougherty, Andrew; Knyazev, Andrew V. (2015). "Nonsymmetric Preconditioning for Conjugate Gradient and Steepest Descent Methods". Procedia Computer Science. 51: 276–285. doi:10.1016/j.procs.2015.05.241.
  14. ^ Press, W. H.; Teukolsky, S. A.; Vetterling, W. T.; Flannery, B. P. (1992). Numerical Recipes in C: The Art of Scientific Computing (2nd ed.). New York: Cambridge University Press. ISBN 0-521-43108-5.
  15. ^ Strutz, T. (2016). Data Fitting and Uncertainty: A Practical Introduction to Weighted Least Squares and Beyond (2nd ed.). Springer Vieweg. ISBN 978-3-658-11455-8.
  16. ^ Ross, I. M. (2019-07-01). "An optimal control theory for nonlinear optimization". Journal of Computational and Applied Mathematics. 354: 39–51. doi:10.1016/j.cam.2018.12.044. ISSN 0377-0427. S2CID 127649426.
  17. ^ Nesterov, Yurii (2004). Introductory Lectures on Convex Optimization : A Basic Course. Springer. ISBN 1-4020-7553-7.
  18. ^ Vandenberghe, Lieven (2019). "Fast Gradient Methods" (PDF). Lecture notes for EE236C at UCLA.
  19. ^ Kim, D.; Fessler, J. A. (2016). "Optimized First-order Methods for Smooth Convex Minimization". Math. Prog. 151 (1–2): 81–107. arXiv:1406.5468. doi:10.1007/s10107-015-0949-3. PMC 5067109. PMID 27765996. S2CID 207055414.
  20. ^ Drori, Yoel (2017). "The Exact Information-based Complexity of Smooth Convex Minimization". Journal of Complexity. 39: 1–16. arXiv:1606.01424. doi:10.1016/j.jco.2016.11.001. S2CID 205861966.
  21. ^ Qian, Ning (January 1999). "On the momentum term in gradient descent learning algorithms" (PDF). Neural Networks. 12 (1): 145–151. CiteSeerX 10.1.1.57.5612. doi:10.1016/S0893-6080(98)00116-6. PMID 12662723. Archived from the original (PDF) on 8 May 2014. Retrieved 17 October 2014.
  22. ^ "Momentum and Learning Rate Adaptation". Willamette University. Retrieved 17 October 2014.
  23. ^ Geoffrey Hinton; Nitish Srivastava; Kevin Swersky. "The momentum method". Coursera. Retrieved 2 October 2018. Wayback Machine에서 2016-12-31 Coursera 온라인 코스 Neural Networks for Machine Archived 2016-12-31 강연 시리즈의 일부입니다.
  24. ^ Combettes, P. L.; Pesquet, J.-C. (2011). "Proximal splitting methods in signal processing". In Bauschke, H. H.; Burachik, R. S.; Combettes, P. L.; Elser, V.; Luke, D. R.; Wolkowicz, H. (eds.). Fixed-Point Algorithms for Inverse Problems in Science and Engineering. New York: Springer. pp. 185–212. arXiv:0912.3522. ISBN 978-1-4419-9568-1.
  25. ^ "Mirror descent algorithm".

추가 정보

외부 링크