#python #keras #lstm #hyperparameters #bilstm
Вопрос:
Я пытаюсь использовать несколько моделей LSTM, таких как ванильные, сложенные, двунаправленные, в своих данных, но поиск лучших гиперпараметров очень затратен. При использовании TPU на Colab Pro моя программа выходит из строя после более чем 10 часов работы, которые я пробовал несколько раз.
Вот мой код:
epochs = [10, 25, 50] activations = ['tanh', 'relu', 'selu'] layers1 = [32, 64, 100] layers2 = [32, 64, 100] layers3 = [32, 64, 100] optimizers = ['adam', 'sgd', 'rmsprop'] ep_bi=[] act_bi=[] opt_bi=[] lay1_bi=[] lay2_bi=[] lay3_bi=[] rmse_bi=[] map_bi=[] for epoch in epochs: for activation in activations: for layer1 in layers1: for layer2 in layers2: for layer3 in layers3: for optimizer in optimizers: print(epoch) print(activation) print(layer1) print(layer2) print(layer3) print(optimizer) # define model model_bi_lstm = Sequential() model_bi_lstm.add(Bidirectional(LSTM(layer1, activation=activation, use_bias=True), input_shape=(n_step, n_features))) model_bi_lstm.add(Bidirectional(LSTM(layer2, activation=activation, use_bias=True), input_shape=(n_step, n_features))) model_bi_lstm.add(Bidirectional(LSTM(layer3, activation=activation, use_bias=True), input_shape=(n_step, n_features))) model_bi_lstm.add(Dense(1)) model_bi_lstm.compile(optimizer=optimizer, loss='mse') # fit model history = model_bi_lstm.fit(X, y, epochs=epochs, verbose=1) #Summary of the model print(model_bi_lstm.summary())
Это еще не весь код.
Интересно, можно ли использовать Keras Tuner для поиска лучших гиперпараметров для этой ситуации? Я провел свое исследование, но ничего не смог найти, хотя Keras Tuner можно использовать для оптимизации модели классификации.
Любые предложения будут оценены по достоинству.