Data Science/Deep Learning

2. 경사 하강 학습법 - 모델의 학습과 경사하강 학습법과 최적화이론의 관계

HJChung 2020. 4. 4. 18:34

경사 하강 학습법을 배우기에 앞서, 모델의 학습이 뭔지, 그리고 최적화 이론이 뭐고, 이 셋의 관계가 무엇인지를 살펴보겠습니다. 

1) 모델의 학습

학습에는 두 종류가 있습니다. 

1. Supervised Learning(지도학습) : 학습 데이터의 입력과 함께 정답을 알려주고 그 정답(Label 또는  Groundtruth라고 합니다. )을 맞추도록 하는 방법

2. Unsupervised Learning(비지도학습) 정답의 제공 없이 학습 데이터로부터 유용한 정보를 추출하는 방법

 

 

2) 머신러닝의  Supervised Learning에 관련된 용어

앞으로는 이 용어들을 사용하여서 앞서 제시했던 학습 목표들을 살펴볼 것입니다. 

 

1. Training Parameters(학습 매개변수)

 : Training과정에서 값이 변화하는 매개변수로, 학습과정을 거치면서 이 값이 변하고, 알고리즘의 출력이 변하게 됩니다. 

만약에 y(출력) = a * x(입력) + b 가 학습 모델이라면, 

학습 과정을 거치면서 Training Parameters인 a, b의 값이 변하게 되고, 그로 인해 y의 값이 다르게 도출되는 것입니다. 

 

2. Loss Function (손실 함수)

: 알고리즘이 얼마나 잘못 하고 있는지를 표현하는 지표로서,

정답과 알고리즘의 출력값을 비교하여 값이 낮을 수록 학습이 잘되었다는 의미입니다. 

손실함수에는 

  • Mean Squared Error (MSE; 평균 제곱 오차): 

Yi: Groundtruth

Y^i: 학습 데이터 입력으로 추정한 출력값

그래서 Yi == Y^i 일때는 차가 0 이므로 매우 학습이 잘 되었다고 볼 수 있습니다. 

 

  • Cross Entropy Error (CEE; 교차 엔트로피 오차):

Yi: Groundtruth (0 or 1)

Y^i: 학습 데이터 입력으로 추정한 출력값(0~1) 

이 값이 0에 가까울 수록 학습이 잘 된 것입니다. 

 

 

3) 학습이란,,

지금까지 학습의 종류와 학습에 관련된 용어를 알아보았습니다. 

정리하면, 학습에 필요한 요소는 : Training Data, Model(including Training Parameters), Loss Function입니다. 

또한 

Training Data -> Model(---> Training Parameters이 변경) -> 출력 -> Loss Function으로 판단 과정을 반복하면서 그렇게 Loss Function이 작을 때까지 출력값을 점점 작아지게 하는 것이 (알고리즘) 학습입니다. 

그리고 

최적화 이론은, 출력값을 최소값(또는 최대값)이 되도록 하는 입력값을 찾는 것을 말합니다. 

 

따라서, 알고리즘 학습이 최적화 이론을 따르는 것입니다. 

 

 

4) 경사 하강 학습법

알고리즘 학습이 최적화 이론을 따른다고 하였을 때, 경사 하강 학습법은 최적화 문제에서 지역 최소값을 구하는데 사용되는 가장 보편적인 알고리즘 입니다. 

 

따라서, 알고리즘 학습은 최적화 이론을 따르고, 최적화 이론에서 가장 보편적으로 사용되는 방법이 경사 하강 학습법 인 것입니다.