더북(TheBook)

손실 함수

경사 하강법은 학습률(, learning rate)2과 손실 함수의 순간 기울기를 이용하여 가중치를 업데이트하는 방법입니다. 즉, 미분의 기울기를 이용하여 오차를 비교하고 최소화하는 방향으로 이동시키는 방법이라고 할 수 있습니다. 이때 오차를 구하는 방법이 손실 함수입니다.

즉, 손실 함수는 학습을 통해 얻은 데이터의 추정치가 실제 데이터와 얼마나 차이가 나는지 평가하는 지표라고 할 수 있습니다. 이 값이 클수록 많이 틀렸다는 의미이고, 이 값이 ‘0’에 가까우면 완벽하게 추정할 수 있다는 의미입니다. 대표적인 손실 함수로는 평균 제곱 오차(Mean Squared Error, MSE)와 크로스 엔트로피 오차(Cross Entropy Error, CEE)가 있습니다.

 

평균 제곱 오차

실제 값과 예측 값의 차이(error)를 제곱하여 평균을 낸 것이 평균 제곱 오차(MSE)입니다. 실제 값과 예측 값의 차이가 클수록 평균 제곱 오차의 값도 커진다는 것은 반대로 생각하면 이 값이 작을수록 예측력이 좋다는 것을 의미합니다. 평균 제곱 오차는 회귀에서 손실 함수로 주로 사용됩니다.

다음은 평균 제곱 오차를 구하는 수식입니다.

텐서플로 2에서는 다음과 같이 사용합니다.

model.compile(optimizer=tf.keras.optimizers.SGD(lr=0.1), loss='mse')

 

 


  2 한 번 학습할 때 얼마큼 변화를 주는지에 대한 상수입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.