코드를 실행하면 다음과 같이 모델이 훈련됩니다.
Epoch 1/5
1875/1875 [==============================] - 2s 952us/step - loss: 0.5380 - accuracy: 0.8083
Epoch 2/5
1875/1875 [==============================] - 2s 906us/step - loss: 0.3979 - accuracy: 0.8550
Epoch 3/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.3656 - accuracy: 0.8663
Epoch 4/5
1875/1875 [==============================] - 3s 1ms/step - loss: 0.3450 - accuracy: 0.8746
Epoch 5/5
1875/1875 [==============================] - 2s 1ms/step - loss: 0.3289 - accuracy: 0.8795
313/313 - 0s - loss: 0.3608 - accuracy: 0.8668
[0.3608403205871582, 0.8668000102043152]
심층 신경망에 대한 모델 생성과 성능을 평가해 보았다면, 이제 합성곱 신경망을 생성해 보겠습니다. 먼저 0~255 범위의 픽셀 값을 갖는 기본 이미지 데이터를 0~1 범위의 픽셀 값을 갖도록 데이터에 대한 전처리를 합니다. 전처리란 분석에 적합하도록 데이터를 가공하는 것으로, 이상치 데이터를 식별하거나 데이터 불일치를 교정하는 작업입니다.
코드 5-9 데이터 전처리
X_train_final = x_train.reshape((-1,28,28,1)) / 255.
X_test_final = x_test.reshape((-1,28,28,1)) / 255.