TensorFlow는 구글(Google)이 제공하는 오픈소스 머신러닝 프레임워크입니다. Python과 함께 사용하여 다양한 알고리즘, 딥러닝 애플리케이션 등을 구현할 수 있으며, 연구 목적과 실제 프로덕션 환경 모두에서 널리 활용됩니다. 복잡한 수학 연산을 빠르게 처리할 수 있도록 돕는 최적화 기법들을 내장하고 있습니다.
'tensorflow' 패키지는 Windows 환경에서 아래 명령어 한 줄로 간단히 설치할 수 있습니다.
pip install tensorflow
텐서(Tensor)는 TensorFlow에서 사용되는 핵심 데이터 구조입니다. 플로우 다이어그램의 엣지(edge)를 연결하는 역할을 하며, 이 다이어그램은 '데이터 흐름 그래프(Data flow graph)'라고 불립니다. 텐서는 결국 다차원 배열 또는 리스트라고 할 수 있습니다.
Keras는 Python으로 작성된 딥러닝 API입니다. 머신러닝 문제를 해결하는 데 도움이 되는 생산성 높은 인터페이스를 갖춘 고수준(high-level) API로, TensorFlow 프레임워크 위에서 동작합니다. 빠른 실험을 지원하도록 설계되었으며, 머신러닝 솔루션을 개발하고 캡슐화하는 데 필수적인 추상화 계층과 빌딩 블록을 제공합니다. 확장성이 뛰어나고 크로스 플랫폼 기능을 갖추고 있어 TPU나 GPU 클러스터에서도 실행할 수 있습니다. 나아가 Keras 모델은 웹 브라우저나 모바일 기기에서 실행되도록 내보낼 수도 있습니다.
Keras는 이미 TensorFlow 패키지에 포함되어 있으며, 아래 코드로 간단히 불러올 수 있습니다.
import tensorflow
from tensorflow import keras
아래 코드는 Google Colaboratory에서 실행됩니다. Google Colab(또는 Colaboratory)은 브라우저에서 바로 Python 코드를 실행할 수 있게 해주며, 별도의 설정 없이 GPU(그래픽 처리 장치)를 무료로 사용할 수 있다는 장점이 있습니다. Colaboratory는 Jupyter Notebook을 기반으로 만들어졌습니다.
다음은 새로운 콜백을 적용해 모델을 학습시키는 예제 코드입니다.
예제
print("The model is trained with new callback")
model.fit(train_images,
train_labels,
epochs=50,
callbacks=[cp_callback],
validation_data=(test_images, test_labels),
verbose=0)
ls {checkpoint_dir}
print("The latest checkpoint being updated")
latest = tf.train.latest_checkpoint(checkpoint_dir)
print(latest)코드 출처: https://www.tensorflow.org/tutorials/keras/save_and_load
출력 결과




코드 설명
새롭게 생성된 모델 인스턴스가 학습 데이터에 맞춰 학습(fit)됩니다.
여기서 cp_callback은 일반적으로 tf.keras.callbacks.ModelCheckpoint로 정의된 콜백으로, 학습 과정 중 일정한 간격으로 모델의 가중치를 체크포인트 파일로 저장하는 역할을 합니다.
체크포인트 디렉터리에 저장된 모든 파일이 콘솔에 출력됩니다.
가장 최근의 체크포인트가 업데이트됩니다.
새로 업데이트된 최신 체크포인트 경로가 콘솔에 표시됩니다.