Keras LSTM Форма ввода для поиска по сетке - PullRequest
0 голосов
/ 06 ноября 2018

Я строю свою сеть LSTM, и теперь я хочу выполнить Grid Search с Keras. Я прочитал в документации для GridSearchCV, что форма ввода должна быть двухмерной.

Из-за моей сети LSTM у меня есть трехмерный вход. Я изменяю свой тензор так:

nb_samples_train = x_train.shape[0] - look_back  
num=nb_samples_train

x_train_reshaped = np.zeros((nb_samples_train, look_back, dim_x)) 
y_train_reshaped = np.zeros((nb_samples_train,dim_y))
for i in range(nb_samples_train):
    y_position = i + look_back
    x_train_reshaped[i] = x_train[i:y_position]
    y_train_reshaped[i] = y_train[y_position]

nb_samples_test = x_test.shape[0] - look_back 

x_test_reshaped = np.zeros((nb_samples_test, look_back, dim_x))
y_test_reshaped = np.zeros((nb_samples_test, dim_y))

for i in range(nb_samples_test):
    y_position = i + look_back
    x_test_reshaped[i] = x_test[i:y_position]
    y_test_reshaped[i] = y_test[y_position]

x_train_r=x_train_reshaped
x_test_r=x_test_reshaped
y_train_r=y_train_reshaped
y_test_r=y_test_reshaped

Когда я выполняю поиск по сетке, я также хочу изменять временные шаги моего ввода (look_back). Как я могу вписать это в мой поиск по сетке?

UPDATE:

После того, как я обновил версию scikit-learn, мой трехмерный ввод больше не является проблемой. Но я до сих пор не знаю, как поменять мой look_back.

...