표 10-1 | 대표적인 오차 함수
* 실제 값을 yt, 예측 값을 yo라고 가정할 때
평균 제곱 계열 (선형 회귀 모델) |
mean_squared_error |
평균 제곱 오차 계산: mean(square(yt - yo)) |
mean_absolute_error |
평균 절대 오차(실제 값과 예측 값 차이의 절댓값 평균) 계산: mean(abs(yt - yo)) |
|
mean_absolute_percentage_error |
평균 절대 백분율 오차(절댓값 오차를 절댓값으로 나눈 후 평균) 계산: mean(abs(yt - yo)/abs(yt)) (단, 분모 ≠ 0) |
|
mean_squared_logarithmic_error |
평균 제곱 로그 오차(실제 값과 예측 값에 로그를 적용한 값의 차이를 제곱한 값의 평균) 계산: mean(square((log(yo) + 1) - (log(yt) + 1))) |
|
교차 엔트로피 계열 (다항 분류, 이항 분류) |
categorical_crossentropy |
범주형 교차 엔트로피(다항 분류, 여럿 중 하나를 예측할 때) |
binary_crossentropy |
이항 교차 엔트로피(이항 분류, 둘 중 하나를 예측할 때) |
이어서 옵티마이저를 선택할 차례입니다. 앞 장에서 현재 가장 많이 쓰는 옵티마이저는 adam이라고 했습니다. optimizer란에 adam을 적어 주는 것으로 실행할 준비가 되었습니다(예 optimizer='adam'). metrics() 함수는 모델이 컴파일될 때 모델 수행의 결과를 나타내게끔 설정하는 부분입니다. accuracy라고 설정한 것은 학습셋에 대한 정확도에 기반해 결과를 출력하라는 의미입니다(예 metrics=['accuracy']). accuracy 외에 학습셋에 대한 손실 값을 나타내는 loss, 테스트셋을 적용할 경우 테스트셋에 대한 정확도를 나타내는 val_acc, 테스트셋에 대한 손실 값을 나타내는 val_loss 등을 사용할 수 있습니다. 이들을 활용하는 방법은 14장에서 다룹니다.