이 글은 “Keras: Overview“을 번역한 것입니다. 이 글은 텐서플로 문서 깃허브에 머지되어 있습니다. 잘못된 점이 있으면 블로그를 통해 알려 주시거나 깃허브에 PR을 보내 주세요.
케라스: 빠르게 훑어보기
Note: 이 문서는 텐서플로 커뮤니티에서 번역했습니다. 커뮤니티 번역 활동의 특성상 정확한 번역과 최신 내용을 반영하기 위해 노력함에도 불구하고 공식 영문 문서의 내용과 일치하지 않을 수 있습니다. 이 번역에 개선할 부분이 있다면 tensorflow/docs 깃헙 저장소로 풀 리퀘스트를 보내주시기 바랍니다. 문서 번역이나 리뷰에 지원하려면 이 양식을 작성하거나 docs@tensorflow.org로 메일을 보내주시기 바랍니다.
tf.keras 임포트
tf.keras
는 케라스 API 명세{:.external}의 텐서플로 구현입니다. tf.keras
는 머신러닝 모델을 만들고 훈련하기 위한 고수준 API로서 텐서플로의 특수 기능을 모두 지원합니다. 여기에는 즉시 실행, tf.data
파이프라인(pipeline), Estimators가 포함됩니다. tf.keras
를 이용하면 유연성과 성능을 손해보지 않고 텐서플로를 쉽게 사용할 수 있습니다.
tf.keras
를 임포트하여 텐서플로 프로그램을 시작합니다:
!pip install -q pyyaml # pyyaml은 선택사항입니다.
from __future__ import absolute_import, division, print_function, unicode_literals
!pip install tf-nightly-gpu-2.0-preview
import tensorflow as tf
from tensorflow import keras
tf.keras
는 케라스 API와 호환되는 어떤 코드라도 실행시킬 수 있지만 다음 사항을 유념하세요:
- 최신 텐서플로 릴리스에 포함된
tf.keras
버전은 PyPI에 있는 최신 keras
버전과 같지 않을 수 있습니다. tf.keras.__version__
을 확인해 보세요.
- 모델의 가중치를 저장할 때
tf.keras
는 기본적으로 체크포인트 포맷을 사용합니다. HDF5를 사용하려면 save_format='h5'
로 설정하세요.
간단한 모델 만들기
Sequential 모델
케라스에서는 층(layer)을 조합하여 모델(model)을 만듭니다. 모델은 (일반적으로) 층의 그래프입니다. 가장 흔한 모델 구조는 층을 차례대로 쌓은 tf.keras.Sequential
모델입니다.
간단한 완전 연결(fully-connected) 네트워크(즉, 다층 퍼셉트론(multi-layer perceptron))를 만들어 보겠습니다.
from tensorflow.keras import layers
model = tf.keras.Sequential()
# 64개의 유닛을 가진 완전 연결 층을 모델에 추가합니다:
model.add(layers.Dense(64, activation='relu'))
# 또 하나를 추가합니다:
model.add(layers.Dense(64, activation='relu'))
# 10개의 출력 유닛을 가진 소프트맥스 층을 추가합니다:
model.add(layers.Dense(10, activation='softmax'))
여기에서 Sequential
모델을 어떻게 사용하는지 간단하지만 완전한 예제를 볼 수 있습니다.
Sequential
보다 더 고수준의 모델을 구성하는 방법을 배우려면 다음을 참고하세요:
– 케라스 함수형 API 가이드
– 클래스 상속을 통하여 층과 모델을 밑바닥부터 만드는 방법
계속 읽기 →