Tensorflow는 Google에서 제공하는 기계 학습 프레임워크입니다. 알고리즘, 딥 러닝 애플리케이션 등을 구현하기 위해 Python과 함께 사용되는 오픈 소스 프레임워크입니다. 연구 및 생산 목적으로 사용됩니다.
'tensorflow' 패키지는 아래 코드 줄을 사용하여 Windows에 설치할 수 있습니다.
pip install tensorflow
Tensor는 TensorFlow에서 사용되는 데이터 구조입니다. 흐름도에서 가장자리를 연결하는 데 도움이 됩니다. 이 흐름도를 '데이터 흐름 그래프'라고 합니다. 텐서는 다차원 배열 또는 목록에 불과합니다.
'Fashion MNIST' 데이터셋에는 다양한 종류의 의복 이미지가 포함되어 있습니다. 10가지 카테고리에 속하는 70,000개 이상의 옷에 대한 회색조 이미지가 포함되어 있습니다. 이 이미지는 저해상도(28 x 28픽셀)입니다.
Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook 위에 구축되었습니다. 다음은 코드입니다 -
예시
print("The model is fit to the data") model.fit(train_images, train_labels, epochs=15) print("The accuracy is being computed") test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2) print('\nThe test accuracy is :', test_acc)
코드 크레딧 - https://www.tensorflow.org/tutorials/keras/classification
출력
The model is fit to the data Epoch 1/15 1875/1875 [==============================] - 4s 2ms/step - loss: 0.6337 - accuracy: 0.7799 Epoch 2/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3806 - accuracy: 0.8622 Epoch 3/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3469 - accuracy: 0.8738 Epoch 4/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3131 - accuracy: 0.8853 Epoch 5/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2962 - accuracy: 0.8918 Epoch 6/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2875 - accuracy: 0.8935 Epoch 7/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2705 - accuracy: 0.8998 Epoch 8/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2569 - accuracy: 0.9023 Epoch 9/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2465 - accuracy: 0.9060 Epoch 10/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2440 - accuracy: 0.9088 Epoch 11/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2300 - accuracy: 0.9143 Epoch 12/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2255 - accuracy: 0.9152 Epoch 13/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2114 - accuracy: 0.9203 Epoch 14/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2101 - accuracy: 0.9211 Epoch 15/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2057 - accuracy: 0.9224 The accuracy is being computed 313/313 - 0s - loss: 0.3528 - accuracy: 0.8806 The test accuracy is : 0.8805999755859375
설명
-
먼저 훈련 데이터를 공급하고 모델을 구축하여 모델을 훈련합니다. 'train_images' 및 'train_labels'는 입력 데이터의 배열입니다.
-
모델은 이미지를 해당 레이블로 매핑하기 위해 기울입니다.
-
'test_images'는 테스트 데이터를 저장합니다.
-
테스트 데이터 세트가 활용되면 예측이 테스트 데이터 세트에 있는 데이터의 실제 레이블과 일치합니다.
-
'model.fit' 메서드를 호출하여 moel을 학습 데이터 세트에 맞출 수 있습니다.
-
'model.evaluate' 함수는 훈련과 관련된 정확도와 손실을 제공합니다.