Keras Model: тот же массив, который используется для model.fit, не обрабатывается в model.predict - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть модель:

model.add(Dense(16, input_dim = X.shape[1], activation = 'tanh'))
model.add(Dropout(0.2))
model.add(Dense(8, activation = 'relu'))
model.add(Dropout(0.2))
model.add(Dense(4, activation = 'tanh'))
model.add(Dropout(0.2))
model.add(Dense(2, activation = 'relu'))
model.add(Dropout(0.2))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam', metrics=['mae'])

И во время Model.evaluvate она прекрасно работает с вводом 'X':

history = model.fit(X, Y, validation_split=0.2, epochs=10, callbacks=   [PrintDot()], batch_size=10, verbose=0)

Но во время предсказания, когда я использую X [1] выдает ошибку:

ValueError: Error when checking input: expected dense_8_input to have shape (500,) but got array with shape (1,)

Но X [1]. Форма равна (500,):

X[1].shape
--> (500,)

Как я могу исправить эту ошибку, любая помощь приветствуется

1 Ответ

0 голосов
/ 14 ноября 2018

Keras model.predict ожидает получения ввода (amount_of_items, features).

Таким образом, даже при попытке предсказать одну выборку вы должны изменить ее на (1, features), а в вашем случае (1, 500).

...