Erro com o input_shape deverá ter de 4 dimensões, mas não chegou a matriz da forma (73257, 32, 32)

0

Pergunta

Eu tenho imagens em escala de cinzentos desta forma: x_train_grey.shape = (73257, 32, 32)

Eu especificar a primeira camada como este:

Flatten(input_shape=(32,32,1)' Porque eu não passar o batch_size e as imagens em escala de cinzentos têm apenas 1 canal. Mas eu recebo este erro:

ValueError: Error when checking input: expected flatten_1_input to have 4 dimensions, but got an array with shape (73257, 32, 32)

Eu não entendo o que está errado, por favor me ajude. Eu entendo que isso foi perguntado muitas vezes, mas eu não encontrar uma solução.

Saúde!

2

Melhor resposta

1

O problema provavelmente está na maneira que você está passando seus dados para o modelo. Se a sua entrada é a forma de (batch_size, 32, 32) em seguida, tente algo como isso:

import tensorflow as tf

grey_scale_images = tf.random.normal((64, 32, 32))

model = tf.keras.Sequential()
model.add(tf.keras.layers.Flatten(input_shape=(32,32,1)))

print(model(grey_scale_images).shape)
# (64, 1024)

Atualização: Ambos input_shape=(32,32,1) e input_shape=(32,32) irá trabalhar. Depende de como você está alimentando os seus dados para o seu modelo:

import tensorflow as tf

grey_scale_images = tf.random.normal((64, 32, 32))
Y = tf.random.normal((64, 1024))
model = tf.keras.Sequential()
model.add(tf.keras.layers.Flatten(input_shape=(32, 32, 1)))
model.compile(loss='MSE')
model.fit(grey_scale_images, Y)
2021-11-24 08:40:01

Na verdade, simplesmente passando o input_shape=(32,32) funcionou, obrigado!
mankojag

Eu acho que você está enganado...Veja a minha resposta atualizado.
AloneTogether

Obrigado, mas eu não estou muito certo de que este é direito. Eu tentei input_shape=(32,32,1) mas ele não está funcionando. O que você sugere precisa ser feito antes de passar que, em vez de input_shape=(32,32)? Há alguma regra que diz que (32,32,1) deve ser usado sobre (32,32) ou ele não se importa, como você diz tanto de opções de trabalho?
mankojag

Verifique a parte inferior da minha resposta. Como eu disse, tanto trabalho, mas isso depende de que seus dados se parece com
AloneTogether
-1

Eu ainda estou aprendendo essas coisas também, mas eu acho que o "1" como uma dimensão do número de entradas não é possível. Mesmo se é possível, é um começo. "1" como um tamanho de um eixo não faz sentido para mim. Mais alguém?

2021-11-24 07:34:08

Obrigado, de verdade input_shape=(32,32) parece estar funcionando bem
mankojag

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................