Есть ли способ загружать данные и метки отдельно с помощью TensorFlow? - PullRequest
0 голосов
/ 03 августа 2020

Я работаю над проблемой классификации, и у меня есть куча изображений, хранящихся в двух каталогах:

my_data/Total/M0

my_data/Total/B0

, где M0 - это подкаталог для одного класса, а B0 - для другого класса.

когда я использую:

train_ds = tf.keras.preprocessing.image_dataset_from_directory(
  train_dir,
  validation_split=0.1,
  subset="training",
  seed=123,
  image_size=(img_height, img_width),
  batch_size=30336) 

, он возвращает пакет кортежей, первый элемент которых является данными, а второй элемент - меткой I было интересно, есть ли способ загрузить эти данные, чтобы данные и метки были разделены, например:

x_train , y_train = ...

1 Ответ

0 голосов
/ 04 августа 2020

Если я вас правильно понял, train_ds должен дать желаемый результат.

Посмотрите этот код:

train_ds = tf.keras.preprocessing.image_dataset_from_directory(
    train_dir,
    validation_split=0.1,
    subset="training",
    seed=123,
    image_size=(300, 300), # Note that I changed the image size to (300, 300)
    batch_size=30 # Note that I changed the batch size to 30
)

for x, y in train_ds:
    print(x.shape)
    break

Это выведет (30, 300, 300, 3), который должен соответствовать вашей желаемой форме из (batch, width, height, dim).

...