더북(TheBook)

손실 함수와 옵티마이저의 정확한 목적과 선택 방법은 이어지는 몇 개의 장에서 자세히 살펴보겠습니다. 이 예제에서 선택은 다음과 같습니다.

 

코드 2-4 훈련 옵션 설정: 모델 컴파일(CodePen 2-c)

model.compile({optimizer: 'sgd', loss: 'meanAbsoluteError'});

모델의 compile 메서드를 호출할 때 옵티마이저는 'sgd'를, 손실은 'meanAbsoluteError'를 지정합니다. 'meanAbsoluteError'는 손실 함수가 예측과 타깃이 얼마나 떨어져 있는지를 절댓값으로 계산한다는 의미입니다(따라서 모두 양수가 됩니다). 그다음, 이 값의 평균을 반환합니다.

meanAbsoluteError = average( absolute(modelOutput - targets) )

예를 들어 다음과 같은 값이 주어지면

modelOutput = [1.1, 2.2, 3.3, 3.6]
targets =     [1.0, 2.0, 3.0, 4.0]

다음과 같이 계산됩니다.

meanAbsoluteError = average([|1.1 - 1.0|, |2.2 - 2.0|,
                             |3.3 - 3.0|, |3.6 - 4.0|])
                  = average([0.1, 0.2, 0.3, 0.4])
                  = 0.25
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.