Я использую TensorFlow 2.0, и у меня есть пакетный набор данных, который содержит 968 изображений и метку (массив из 4 элементов) для каждого:
dataSetSize = allDataSet.reduce(0, lambda x, _: x + 1).numpy()
allDataSet = allDataSet.shuffle(dataSetSize)
allDataSet = allDataSet.map(processPath, num_parallel_calls=tf.data.experimental.AUTOTUNE)
allDataSet = allDataSet.batch(10)
predictions = loadedModel.predict(allDataSet)
onlyImages = # how to create this?
onlyLabels = # how to create this?
# the 'map' function in my dataset returns a batch of images and their corresponding labels
for idx, (imageBatch, labelBatch) in enumerate(allDataSet) :
# how to concatenate batches together?
onlyImages = # ?
onlyLabels = # ?
Мне нужно разделить этот набор данных на два numpy массивы. Первый массив должен содержать только 968 изображений (форма: (968, 299, 299, 3)), а второй - метки 968 (форма: (968, 4)). Как я могу это сделать?
Я проверил аналогичный вопрос здесь , но эти примеры, похоже, используют Tensorflow 1.x и состоят из другого типа ввода?
Размер набора данных и типов:
dataset size: 968
<DatasetV1Adapter shapes: ((None, 299, 299, 3), (None, 4)), types: (tf.float32, tf.float32)