Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tensorflow를 사용하여 꽃 데이터 세트를 로드하고 Python을 사용하여 디스크에서 모델링하는 방법은 무엇입니까?

<시간/>

Tensorflow는 꽃 데이터 세트를 로드하고 'image_dataset_from_directory' 메소드를 사용하여 디스크에서 모델링하는 데 사용할 수 있습니다.

자세히 알아보기: TensorFlow란 무엇이며 Keras가 TensorFlow와 함께 신경망을 생성하는 방법은 무엇입니까?

하나 이상의 레이어를 포함하는 신경망을 컨볼루션 레이어라고 합니다. Convolutional Neural Network를 사용하여 학습 모델을 구축할 수 있습니다.

이미지 분류를 위한 전이 학습 배후의 직관은 모델이 크고 일반적인 데이터 세트에서 훈련된 경우 이 모델을 사용하여 시각적 세계에 대한 일반 모델로 효과적으로 사용할 수 있다는 것입니다. 기능 맵을 학습했을 것이므로 사용자가 대규모 데이터 세트에서 대규모 모델을 학습하여 처음부터 시작할 필요가 없습니다.

TensorFlow Hub는 사전 훈련된 TensorFlow 모델이 포함된 저장소입니다. TensorFlow를 사용하여 학습 모델을 미세 조정할 수 있습니다.

TensorFlow Hub의 모델을 tf.keras와 함께 사용하고 TensorFlow Hub의 이미지 분류 모델을 사용하는 방법을 이해합니다. 이 작업이 완료되면 전이 학습을 수행하여 맞춤형 이미지 클래스에 대한 모델을 미세 조정할 수 있습니다. 이것은 사전 훈련된 분류기 모델을 사용하여 이미지를 찍고 그것이 무엇인지 예측함으로써 수행됩니다. 이것은 훈련 없이도 가능합니다.

Google Colaboratory를 사용하여 아래 코드를 실행하고 있습니다. Google Colab 또는 Colaboratory는 브라우저를 통해 Python 코드를 실행하는 데 도움이 되며 구성이 필요 없고 GPU(그래픽 처리 장치)에 대한 무료 액세스가 필요합니다. Colaboratory는 Jupyter Notebook을 기반으로 구축되었습니다.

예시

print("The flower dataset")
data_root = tf.keras.utils.get_file(
'flower_photos','https://storage.googleapis.com/download.tensorflow.org/example_images/flower_photos.tgz',
untar=True)
print("Load data into the model using images off disk with image_dataset_from_directory")
batch_size = 32
img_height = 224
img_width = 224
train_ds = tf.keras.preprocessing.image_dataset_from_directory(
str(data_root),
validation_split=0.2,
subset="training",
seed=123,
image_size=(img_height, img_width),
batch_size=batch_size)

코드 크레딧 -https://www.tensorflow.org/tutorials/images/transfer_learning_with_hub

출력

The flower dataset
Downloading data from https://storage.googleapis.com/download.tensorflow.org/example_images/flower_photos.tgz
228818944/228813984 [==============================] - 4s 0us/step
Load data into the model using images off disk with image_dataset_from_directory
Found 3670 files belonging to 5 classes.
Using 2936 files for training.

설명

  • 다른 클래스로 모델을 훈련해야 하는 경우 TFHub의 모델을 사용할 수 있습니다.
  • 이렇게 하면 모델의 최상위 레이어를 다시 학습시켜 맞춤 이미지 분류기를 학습시키는 데 도움이 됩니다.
  • 이렇게 하면 데이터세트의 클래스를 인식하는 데 도움이 됩니다.
  • 이를 위해 홍채 데이터 세트를 사용할 것입니다.
  • image_dataset_from_directory를 사용하여 디스크의 이미지를 사용하여 모델을 학습시킵니다.