Что я делаю не так с моделью MLP? - PullRequest
0 голосов
/ 29 сентября 2019

Я занимаюсь разработкой модели прогноза временных рядов с использованием модели Python MLP. В моем тренировочном примере 550 событий с 9 переменными. У меня есть отдельный файл для тестирования. Я хочу прогнозировать при t + 1 только одну из 9 переменных. Поскольку это временной ряд, я выполнил 547 частей по 3 события, проходя один раз каждый раз для X (547, 3, 9). И y (547,) - это одна переменная при t + 1.

model1 = Sequential()
model1.add(Dense(1, activation='tanh', input_shape=(3, 9)))
model1.add(Dense(1, activation='linear'))
model1.summary()

model1.compile(loss='mse', optimizer='adam', metrics=['mae'])

model1.fit(X, y, epochs=2000, verbose=1)

ValueError: Ошибка при проверке ввода модели: список массивов Numpy, которые вы передаете в вашу модель, не соответствует размеру, который ожидала модель,Ожидается увидеть 1 массив (ов), но вместо этого получен следующий список из 547 массивов:

[array([[3.00000000e+01, 1.10000000e+01, 2.01500000e+03, 1.40000000e+01,
        8.36778275e-01, 2.07423694e-01, 7.65763170e-01, 5.07591141e-01,
        9.61668222e-01],
       [3.00000000e+01, 1.1000...

1 Ответ

0 голосов
/ 29 сентября 2019

Для модели с одним входом необходимо указать один массив, где первым измерением являются выборки. Вы даете список. Преобразовать в массив (например, используя np.stack (X)).

...