Я пытаюсь предсказать следующий набор чисел в моей последовательности наборов данных, однако с помощью функции предиката классифицирует весь набор данных, как я могу изменить свой код, чтобы он предсказывал следующий результат в последовательности?
Я следовал этому уроку, и его модель выводит 80 из 50,60,70 в качестве его набора данных.И все же мой прогнозирует весь набор данных? Как начать глубокое обучение для прогнозирования временных рядов (7-дневный мини-курс)
Это мой набор данных
и это код:
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.neural_network import MLPClassifier
from sklearn.metrics import classification_report,confusion_matrix
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense
# load the dataset
col_names = ['N1', 'N2', 'N3', 'N4', 'N5', 'L1', 'L2','label']
# load dataset
pima = pd.read_csv("dataset.csv", header=None, names=col_names)
pima.head()
feature_cols = ['N1', 'N2', 'N3', 'N4', 'N5', 'L1', 'L2']
X = pima[feature_cols] # Features
y = pima.label
model = Sequential()
model.add(Dense(122, input_dim=7, activation='relu'))
model.add(Dense(20, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(X, y, epochs=2000, batch_size=10)
# =======================
_, accuracy = model.evaluate(X, y)
print('Accuracy: %.2f' % (accuracy*100))
yhat = model.predict(X, verbose=0)
print(yhat) <- this outputs the predictions for the entire dataset and not the next prediction
Редактировать:
Вывод, который я получаю, для всего набора данных:
Набор данных работает от 1 до 1251 строк, и я хочу предсказать строку 1252 с выходными данными N1, N2, N3, N4, N5, L1, L2.