簡體   English   中英

Keras LSTM用於時間序列錯誤的預測並收斂於不可更改的值范圍

[英]Keras LSTM for time-series bad prediction and convergance to unchangable range of values

該模型:

def buildModel(neurons= 5, batch_size= 1, timestep=1, features=1):
    model = Sequential()
    model.add(LSTM(neurons, 
                   batch_input_shape=(batch_size, timestep, features), 
                   #return_sequences= True,
                   stateful=True))

    model.add(Dense(1))
    model.compile(loss='mean_squared_error', optimizer='adam',  
                  metrics=[metrics.MAPE, 'accuracy'])
    return model

測試RMSE:0.104測試MAPE:14.040

但是逐步進行多步預測時,結果會迅速增加,然后穩定在一定范圍內。

時間序列是與模型或時間序列預測問題有關的單變量建議嗎?

neurons = 5 ,這是一個非常低的容量模型。 可能不足以對目標時間序列函數進行建模。

timesteps = 1 ,這是時間序列,因此在做出正確的預測之前,輸出必須取決於一定數量的timesteps timesteps = 1表示您的輸出僅取決於1個timestep

batch_size = 1 ,這需要一段時間才能收斂。 通常,這應該是2的冪(16、32、64、128、256、512)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM