Я столкнулся с очень постоянной проблемой в более сложной программе Keras, но свел ее к следующему: ответ должен быть очень простым, но я не могу его найти.
Когда я запускаю этот код:
def __init__ (self):
self.model = Sequential()
self.model.add(Dense(4, input_shape=(4,), activation='linear'))
self.model.compile(optimizer='adam', loss='mse')
def run(self):
x = [1., 1., 1., 1.]
print('x:', x, 'x shape:', np.shape(x))
y = [0., 0., 0., 0.]
print('y:', y, 'y shape:', np.shape(y))
self.model.fit(x, y, batch_size=1, epochs=1, verbose=2)
Операторы печати показывают, что x и y имеют форму (4,), но линия соответствия создает:
ValueError: Ошибка при проверке входных данных: ожидается, что плотность записи будет иметь
shape (4,), но получил массив с shape (1,)
Я пытался изменить x
на (1,4), но это не помогло. Я в тупике.