有两个py文件,PSO_1和LSTM_1,在资源那里下载,有数据。
环境:python、TF2
优化的参数有:神隐藏神经元个数,dropout比率,batch_size 这个可以根据自己的意愿改。 规定上限和下限: UP = [64, 0.14, 32] DOWN = [32, 0.05, 16]
def build_model(neurons, d): model_lstm = Sequential() # 对每天61条记录进行分块 model_lstm.add(LSTM(neurons, input_shape=(20, 1), return_sequences=False)) model_lstm.add(Dropout(d)) model_lstm.add(Dense(1, kernel_initializer="uniform", activation='linear')) # adam = keras.optimizers.Adam(decay=0.2) model_lstm.compile(loss='mse', optimizer='adam', metrics=['accuracy']) #model_lstm.summary() return model_lstm