Использование собственного набора данных с помощью tfds.load в Google

#python #tensorflow #image-processing #keras #google-colaboratory

#python #тензорный поток #обработка изображений #keras #google-совместная лаборатория

Вопрос:

Я новичок, когда дело доходит до Python и TensorFlow в целом, так что это довольно глупый вопрос, но я все еще в тупике. Я пытаюсь создать классификатор изображений, но вместо того, чтобы использовать один из тех наборов данных, которые уже есть в TensorFlow (в данном случае «beans»), я хочу использовать свой собственный набор данных. Для справки, это называется «обнаружение цветов», а изображения разделяются на «обучение» и «тестирование». Я уже загрузил его на Google Диск и смонтировал, но я не знаю, как использовать его в tfds.load. Я следую руководству, так есть ли способ изменить эту строку кода ниже, чтобы использовать свой собственный набор данных?

 ds_test = tfds.load(name="beans", split="test")
 

Как мне перенести набор данных с Google Диска в tfds.load? И должен ли я поместить полную папку с надписью «обнаружение цветов» для имени, или я должен указать «обнаружение / обучение цветов» и «обнаружение / тестирование цветов» соответственно?

Я уже пытался искать в Интернете, но не нашел ничего, что работает. Спасибо за вашу помощь.

Ответ №1:

enter code here Согласно этой ссылке, tfds предоставляет готовые к использованию наборы данных. Это означает, что нет никаких условий для загрузки вашего собственного и его использования.

Но это еще не конец пути, вы можете следовать этому руководству из tensorflow. Я изложу важный код, который вам придется использовать для создания набора данных.

 train_ds = tf.keras.preprocessing.image_dataset_from_directory(
  data_dir,
  subset="training",
  seed=123,
  image_size=(img_height, img_width),
  batch_size=batch_size)

val_ds = tf.keras.preprocessing.image_dataset_from_directory(
  data_dir,
  subset="validation",
  seed=123,
  image_size=(img_height, img_width),
  batch_size=batch_size)
 

Здесь используйте data_dir в соответствии с вашим путем обучения и тестирования.

Затем вы можете использовать его для обучения модели.

 history = model.fit(
  train_ds,
  validation_data=val_ds,
  epochs=epochs
)
 

Комментарии:

1. Как я уже писал в своем ответе, data_dir должен быть путем к вашим файлам обучения и тестирования.