정보관리기술사/AI

경사하강법(gradient descent)

기술기술 2024. 2. 5. 15:23

1. 정의

  • 함수의 최소값의 위치를 찾기 위해 경사가 하강하는 방향을 관찰하고 그 쪽으로 조금씩 이동 하면서 검토를 반복해 근사값을 찾는 최적화 알고리즘
  • 미분의 개념을 최적화 문제에 적용, 에러 함수의 global minimum을 찾는 방법

 

2. 개념도 및 문제점

가. 개념도, 매커니즘

  • 함수의 기울기를 구하여 기울기가 낮은 쪽으로 계속 이동시켜서, 반복시켜서 최적화 알고리즘
  • 손실함수 : 학습을 통해 얻은 데이터의 추정치가 실제 데이터와 얼마나 차이 나는지 평가하는 지표 -> 클수록 많이 틀렸음을 의미하며 0이면 '무손실' (완벽추정) 의미

나. 유형  -  확배미

  • 률적 경사하강법 : 하나의 학습 데이터마다 즉시 오차 계산하여 적용, 순차적 수행 필요 => 병렬컴퓨팅 효과 얻기 어려움
  • 치 경사하강법 : 모든 데이터 학습 후 가중치 한번에 갱신, 가중치 계산시 성능 문제 확률 방법보다 성능 하락 됨
  • 니배치 경사하강법 : Sampling 선택 학습 후 갱신 처리, GPU 기반 효율적 병렬컴퓨팅 가능

 

3. 문제점 및 해결방법

가. 문제점

  • 정확한 답의 획득 실패(Over shutting) : 이동 거리 범위에 따라 최저점 탐색 실패
  • 엉뚱한 최저점 획득 (local minimum) : 다차원의 경우 local minimum에 빠져 global minimum 찾지 못하는 문제

나. 해결방법

  • [Overshutting 방지 방법] 모네
    • Momentom : 이전 시간의 경사(gradient) 까지도 고려한 계산, 신경망에서는 질량 = 1로 가정(관성), 속도만 표시, Gradient에 스무딩을 가하여 잡음 효과를 줄임
    • Nesterov Momentom : 다음 이동할 곳을 예견한 후 예견한 곳의 Gradient를 사용
  • [local minimum 문제 해결 기법] SMNARA
    • SGD (Stochastic gradient descent) : 확률적 경사하강법
    • Momemtum : 이전 시간의 gradient 까지도 고려한 계산
    • NAG(Nesterov accelerated gradient) : 이동 중지 지점 지나치는 문제 해결
    • AdaGrad(Adaptive Gradient) : 변화가 작은 변수들은 learning rate 크게하여 빠른 처리
    • RMSProp(Root Mean Square Propagation) : AdaGrad의 learning rate 극단적 감소 문제 해결
    • Adam(Adaptive Momentum Estimation) : momentum과 RSSProp 결합

 

'정보관리기술사 > AI' 카테고리의 다른 글

과적합 문제 (Overfitting/Underfitting)  (0) 2024.02.05
기울기 소실 문제(Vanishing Gradient Problem)  (0) 2024.02.05
소프트맥스 함수  (1) 2024.02.05
원핫인코딩  (0) 2024.02.05
활성화 함수(activation function)  (0) 2024.01.30