이제 원래 입력과 재구성된 입력을 시각화해 보겠습니다. 이를 위해 검증 데이터셋을 사용합니다.
코드 13-6 이미지 시각화
reconstructed_img = autoencoder.predict(X_test)
n = 10 ------ 입력/출력 이미지 열 개를 표현
plt.figure(figsize=(20,4))
for i in range(n):
ax = plt.subplot(2, n, i+1) ------ 실제 이미지를 시각화
plt.imshow(X_test[i].reshape(28,28))
plt.gray()
ax.get_xaxis().set_visible(False)
ax.get_yaxis().set_visible(False)
ax = plt.subplot(2, n, i+1+n) ------ 재구성된 이미지를 시각화
plt.imshow(reconstructed_img[i].reshape(28,28))
plt.gray()
ax.get_xaxis().set_visible(False)
ax.get_yaxis().set_visible(False)
plt.show()
다음 그림의 위쪽은 원래 이미지이고, 아래쪽은 재구성된 이미지를 시각화한 출력 결과입니다.
▲ 그림 13-5 이미지 실행 결과
재구성된 이미지가 명확하지 않고 다소 흐릿합니다. 더 깨끗한 출력을 얻기 위해 변형 오토인코더를 사용할 수 있습니다.