Ошибка при проверке цели модели: ожидалось, что плотность_2 будет иметь 2 измерения, но получен массив с формой (32, 4, 4) - PullRequest
0 голосов
/ 07 мая 2019

Форма моих ярлыков непосредственно перед их подгонкой (32, 4, 4), мои данные для тренировки прямо перед подгонкой (32, 28, 28, 3).Когда все для подачи его в модель, моя форма данных (40, 28, 28, 3) и мои метки (40, 4).

Вот как выглядит моя модель:

model = Sequential()

model.add(Convolution2D(32, (3, 3), activation='relu', input_shape=(28,28,3)))
model.add(Convolution2D(32, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Dropout(0.25))

model.add(Flatten())

model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(len(users), activation='softmax')) 
model.compile(loss='categorical_crossentropy',
              optimizer='adam',
              metrics=['accuracy'])

model.fit(X_train, y_train, 
          batch_size=32, nb_epoch=1000, verbose=1)

score = model.evaluate(X_test, y_test, verbose=0)

Что дает моим ярлыкам третье измерение?

Редактировать: я знаю, что мои метки должны быть (32, 4), и я передаю их как (40, 4).Я не знаю, откуда (32, 4, 4) происходит.Это ДОЛЖНО быть (32, 4), но оно где-то получает третье измерение.

...