有两个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