[인공지능 개론_plus] 경사하강 알고리즘

2022. 10. 8. 18:16인공지능,딥러닝,머신러닝 기초

- 비용함수(Cost Function)의 비용값을 최소화 하는 파라미터 θ를 찾는 경사하강 알고리즘(Gradient Descent Algorithm)

- 경사 하강 알고리즘은 J(θ(0),θ(1))를 최소화하는 θ를 구하는 알고리즘

 

- 작동원리

  • θ에 대하여 임의 초기값, 시작점을 잡음
  • 그리고 J가 최소 될때까지 θ값 갱신을 반복하여 최솟값에 도달했을때 해당하는 θ를 찾아

  • := : 대입 연산자, 갱신한다는 의미
  • α : learning rate
    • 갱신되는 θ 값의 속도 를 결정합니다. 아무리 미분값이 크더라도 α가 작다면 갱신되는 속도가 느려지는거
  • α뒤에 곱해져 있는 것 : 비용함수로 J의 미분값

- θ의 수렴 조건

- 경사 하강 알고리즘은 어떤 조건에서 갱신을 멈추게 될까

-전역 최솟값(Global minimum)  지역 최솟값(Local Minimum) 이 둘 다 존재

-전역 최솟값이란, 등고선 그래프 전체에서 가장 작은 값을, 지역 최솟값은 특정 지역 내의 상대적인 최솟값

- 초기값을 어떻게 설정하느냐에 따라 Global minimum이 아닌 Local Minimum에 빠지게 되어 최적의 θ를 찾지 못할 수도 있음-선형 - 회귀(Linear Regression) 의 경우엔 위 그림처럼 Bowl-Shaped Function의 형태 만을 가지기 때문에 Global minimum밖에 재하지 않습니다.

- 그러므로 Linear Regression으로 필연적으로 Global minimum으로 수렴하게됨

 

* Backpropagation의 한계?

- vanishing gradient 현상 : 레이어가 깊을 수록 업데이트가 사라져감,그래서 fitting이 잘 안됨-> 사그라드는 sigmoid 대신 activation function RELU 사용