keras Ошибка значения Conv2d: отрицательный размер - PullRequest
0 голосов
/ 17 января 2020

Новый для keras, я имею дело с проблемой регрессии с Tensorflow в качестве бэкэнда.

X1 = TrainingSet[:,0:603]
Y1 = TrainingSet[:,603:607]
###################################
#reshape Xtrain for CNN
X1 = X1.reshape(9999,3,201,1)

###################################
# create model
model = Sequential()

model.add(Conv2D(32, kernel_size=(3, 3), strides=(1, 1),
             activation='relu',
             input_shape=(3,201,1), data_format='channels_first'))
model.add(MaxPooling2D(pool_size=(2, 2), dim_ordering="tf",strides=(1, 1)))
model.add(Conv2D(32, (3, 3), activation='relu', data_format='channels_first'))
model.add(MaxPooling2D(pool_size=(2, 2), dim_ordering="tf",strides=(1, 1)))
model.add(Flatten())
model.add(Dense(1000, activation="tanh", kernel_initializer="uniform"))
model.add(Dense(4, activation="relu", kernel_initializer="uniform"))

# Compile model
model.compile(loss='mse', optimizer='adam', metrics=['mae'])

# Fit the model
history = model.fit(X1, Y1, validation_split=0.1, epochs=100, batch_size=100,  verbose=1)

# Calculate predictions
PredTestSet = model.predict(X1)

и я получил ошибку значения

ValueError: Negative dimension size caused by subtracting 3 from 1 for 'conv2d_26/convolution' (op: 
'Conv2D') with input shapes: [?,201,1,3], [3,3,3,32].

Я уже проверял подобные вопросы, например, https://github.com/keras-team/keras/issues/7611

Отрицательный размерный размер, вызванный вычитанием 3 из 1 для 'Conv2D'

Однако их решения не работают для меня.

...