아래의 왼쪽은 2018년 상반기에 설치한 아나콘다의 텐서플로우 버전이며 오른쪽은 2019년 7월의 구글 Colabo에서의 업그레이드 된 텐서플로우 버전이다.
Keras를 사용하여 구글 Colabo에서 MNIST 수기문자 판독 문제 코드 작성도 큰 변화를 겪었음을 예제를 통해 알아보자. 텐서플로우와 아울러 import tensorflow.contrib.keras as keras 명령에 의해 2015년에 오픈되었던 Keras 라이브러리를 불러 쓸 수 있었으나 구글 Colabo에서는 tf.keras.∙∙∙ 형태로 발전되어 즉 import tensorflow as tf 명령 체계 내로 흡수 통합이 이루어졌다.
즉 MNIST 데이터를 읽어 Normalization 후 deep learning을 위한 첫 hidden 레어어 정의. ReLU 처리, Dropout 설정 및 마지막 classification 레이어 설정으로 구성된다.
이 컴팩트한 Keras 코드에서 기본적인 파라메터인 batch size가 보이질 않는데 Default 값이 32 임을 참조하자.
구글 Colabo에서 GPU를 설정하여 코드를 실행해 보면 5 epoch 별로 4초씩 합계 20초 가량의 실행 시간이 소요되며 인식률은 98% 선이다.