Высокая точность при обучении модели классификатора LSTM, но очень низкая точность при прогнозировании с теми же данными - PullRequest
0 голосов
/ 22 апреля 2020

Я создал классификатор LSTM, который был обучен и протестирован на большой базе данных (2500 данных) с очень хорошей точностью. Я хотел сделать прогноз на новых данных с помощью модели, которую я построил, но получил низкую точность. Поэтому я проверил, как мой прогноз модели будет основан на тех же данных, на которых он был обучен. Удивительно, но я получил очень низкую точность данных тренировки (небольшое количество данных).

Как получается, что модель с высокой точностью дает очень низкую точность при прогнозировании с теми же данными?!

Образец моей модели:

model = Sequential()
model.add(Conv1D(filters=16, kernel_size=3, activation='relu', input_shape=(n_timesteps,n_features)))
model.add(MaxPooling1D(pool_size=2))
model.add(Flatten())
model.add(Dense(100, activation='relu'))
model.add(Dense(n_outputs, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
# fit network
history = model.fit(X_train, y_train, epochs=50, batch_size=20, verbose=2, validation_split=0.25, shuffle=True)

Как Я предсказываю:

yhat = model.predict_proba(X_test)
#or
yhat = model.predict(X_test)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...