Keras는 ONEIROS(개방형 신경 전자 지능형 로봇 운영 체제) 프로젝트 연구의 일부로 개발되었습니다. Keras는 Python으로 작성된 딥 러닝 API입니다. 기계 학습 문제를 해결하는 데 도움이 되는 생산적인 인터페이스가 있는 고급 API입니다. Tensorflow 프레임워크 위에서 실행됩니다. 빠른 실험을 돕기 위해 제작되었습니다. 머신 러닝 솔루션을 개발하고 캡슐화하는 데 필수적인 필수 추상화 및 빌딩 블록을 제공합니다.
확장성이 뛰어나며 플랫폼 간 기능이 함께 제공됩니다. 이는 Keras가 TPU 또는 GPU 클러스터에서 실행될 수 있음을 의미합니다. Keras 모델은 웹 브라우저나 휴대폰에서도 실행되도록 내보낼 수도 있습니다.
Keras는 이미 Tensorflow 패키지 내에 있습니다. 아래 코드 줄을 사용하여 액세스할 수 있습니다.
import tensorflow from tensorflow import keras
Keras 기능 API는 순차 API를 사용하여 생성된 모델에 비해 더 유연한 모델을 생성하는 데 도움이 됩니다. 기능적 API는 비선형 토폴로지가 있는 모델과 함께 작동할 수 있고 레이어를 공유하고 여러 입력 및 출력과 함께 작동할 수 있습니다. 딥 러닝 모델은 일반적으로 여러 계층을 포함하는 방향성 순환 그래프(DAG)입니다. 기능적 API는 레이어 그래프를 작성하는 데 도움이 됩니다.
Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook 위에 구축되었습니다. 다음은 모델을 훈련하기 위한 코드 스니펫입니다. -
예시
print("The model is being plotted") keras.utils.plot_model(model, "my_resnet.png", show_shapes=True) print("Split the data into training and test data") (x_train, y_train), (x_test, y_test) = keras.datasets.cifar10.load_data() print("Convert the type of data to float") x_train = x_train.astype("float32") / 255.0 x_test = x_test.astype("float32") / 255.0 y_train = keras.utils.to_categorical(y_train, 10) y_test = keras.utils.to_categorical(y_test, 10) print("Compiling the model") model.compile( optimizer=keras.optimizers.RMSprop(1e-3), loss=keras.losses.CategoricalCrossentropy(from_logits=True), metrics=["acc"], ) model.fit(x_train[:2000], y_train[:2000], batch_size=64, epochs=2, validation_split=0.2)
코드 크레딧 - https://www.tensorflow.org/guide/keras/functional
출력
The model is being plotted Split the data into training and test data Downloading data from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz 170500096/170498071 [==============================] - 2s 0us/step Convert the type of data to float Compiling the model Epoch 1/2 25/25 [==============================] - 9s 332ms/step - loss: 2.3163 - acc: 0.1028 - val_loss: 2.2962 - val_acc: 0.1175 Epoch 2/2 25/25 [==============================] - 12s 492ms/step - loss: 2.3155 - acc: 0.1175 - val_loss: 2.2606 - val_acc: 0.1200 <tensorflow.python.keras.callbacks.History at 0x7f48d3ecfb00>
설명
-
입력 데이터는 학습 데이터 세트와 테스트 데이터 세트로 분할됩니다.
-
데이터 유형은 'float' 유형으로 변환됩니다.
-
모델은 '컴파일' 방법을 사용하여 컴파일됩니다.
-
'fit' 방법은 모델을 훈련 데이터에 맞추는 데 사용됩니다.