Невозможно добавить тензор к партии: количество элементов не совпадает. Формы: [тензор]: [5], [партия]: [3] - PullRequest
0 голосов
/ 10 июля 2020
Tensorflow 2.2-gpu <br/>
pycharm 

когда я изменяю параметр batch_size 1 на любое число, которое он дает

tensorflow.python.framework.errors_impl.InvalidArgumentError: Cannot add tensor to the batch: number of elements does not match. Shapes are: [tensor]: [5], [batch]: [3]

В исходном коде ничего особенного нет

def train():
    print('train')
    if isprint:print(tf.__version__)
    batch_size= 2
    images,boxes,labels,difficulties,new_boxes= PascalVOCDataset()
    new_boxes = list(new_boxes)
    boxes = tf.ragged.constant(boxes)
    labels = tf.ragged.constant(labels)
    new_boxes = tf.ragged.constant(new_boxes)
    dataset = tf.data.Dataset.from_tensor_slices((images,new_boxes,labels))
    run_train(dataset.map(resize_image_bbox, num_parallel_calls=tf.data.experimental.AUTOTUNE).batch(batch_size).prefetch(tf.data.experimental.AUTOTUNE))

image_shape-> (2, 300, 300, 3)
labels_shape-> (2, 2)
boxes_shape-> (2,)
...