Изменение формы тензорного изображения - PullRequest
0 голосов
/ 24 марта 2019

длина набора изображений поездов 40 Форма X_train: (40, 32, 32, 3) y_train форма: (40,) Я получаю эту ошибку: Невозможно передать значение формы (40, 32, 32, 3) для Tensor 'Placeholder_17: 0', который имеет форму '(1, 32, 32, 3)'

x = tf.placeholder(dtype=tf.float32, shape=[1, 32, 32, 3])

c1 = tf.layers.conv2d(inputs=x, activation=tf.nn.relu, filters=32, 
kernel_size=[5,5], padding='VALID', strides=1)
p1 = tf.layers.max_pooling2d(inputs=c1, pool_size=[2,2], strides=2)

c2 = tf.layers.conv2d(inputs=p1, activation=tf.nn.relu, filters=64, 
kernel_size=[5,5], padding='VALID', strides=1)
p2 = tf.layers.max_pooling2d(inputs=c2, pool_size=[2,2], strides=2)

f = tf.contrib.layers.flatten(p2) 

fc1 = tf.layers.dense(inputs=f, units=64, activation=tf.nn.relu) 

logits = tf.layers.dense(inputs = fc1, units=2)

tf.layers.dropout(inputs = fc1, rate = 0.4) 



epochs = 50

for i in range(epochs):
    sess.run([trainer], feed_dict={x:X_train/255., y:y_train})
    [acc, l] = sess.run([accuracy, loss], feed_dict={x:X_train/255., y:y_train})
    print('Epoch %d - Loss: | %.2f Accuracy: %.2f'%(i,np.mean(l),acc))

1 Ответ

0 голосов
/ 24 марта 2019

Вам необходимо, чтобы размеры заполнителя и входные размеры совпадали.Таким образом, вам нужно будет установить для placeholder_17 значение (40, 32, 32, 3) или итеративную подачу каждого изображения в placeholder_17 с размером (1, 32, 32, 3).

...