gradient descent 2

[딥러닝 기초이론3-1] 복잡한 신경망에서의 그라디언트 (Backpropagation)

지금까지 AI가 동작하는 원리에 대해 알아보았다. 그 과정을 간단히 요약해보자면, 1. 랜덤한 초기값의 예측 모델 생성 2. 손실함수 설정 후 초기값 예측모델에 대한 손실함수 산출 3. 경사하강법을 통한 최적의 w와 b 획득 이와 같다. 지금까지는 입력이 한개인 인공신경망에 대해 알아보았고, 이 신경망에서의 입력에 대한 그라디언트(편미분)를 구하여 최적의 파라미터를 획득하였다. MSE 손실함수를 설정하고 2차함수 형태의 손실함수를 얻은 후 경사하강법을 진행하였다. 그러나 입력이 늘어나고, 신경망의 히든 레이어가 늘어날수록 모델의 파라미터는 증가하게 되어 수식적인 방법으로는 그라디언트를 구하기가 거의 불가능해진다. 복잡한 모델에서의 그라디언트는 어떻게 구할 수 있을까? 다음의 예시를 살펴보자. 입력이 x,..

[딥러닝 기초이론2] AI(Artificial Intelligence)의 판단 기준과 학습법

전 포스팅에서 AI는 통계분석 프로그램이라는 이야기를 했다. 주어진 데이터를 통해 특성간의 상관관계를 파악하고, 그에 기반하여 새로운 데이터에 대한 판단이 가능하게끔 동작하는 것을 인공지능이라고 칭한다. 이제 인공지능이 새로운 데이터에 대한 판단기준, 즉 예측 모델을 어떻게 만들어내는지에 대한 이야기를 해보겠다. 기존의 데이터는 이러하다. 이 데이터들을 보고 직선 형태의 예측 모델을 직접 만들어보자. 아마도 이와 비슷한 직선을 그렸을 것이라고 예상된다. 그렇다면 우리는 왜 이런 직선을 그리게 된 것일까? 그 이유는 이 직선이 실제 데이터들을 잘 대변하기 때문이다. 즉, 실제 데이터들과의 오차가 가장 적기 때문이다. 기존의 데이터들과 해당 지점에서의 예측치간 발생하는 오차를 Training loss 라고 ..