簡體   English   中英

LSTM-多元時間序列預測

[英]LSTM - Multivariate Time Series Predictions

我正在閱讀Keras中關於LSTM的多變量時間序列預測的教程https://machinelearningmastery.com/multivariate-time-series-forecasting-lstms-keras/#comment-442845

我遵循了整個教程,並陷入了如下問題:

在本教程中,訓練和測試拆分具有8個功能,即在步驟“ t”處的“污染”,“露水”,“溫度”,“壓力”,“ wnd_dir”,“ wnd_spd”,“雪”和“雨” -1”,而輸出特征在當前步驟“ t”處為“污染”。 這是因為,給定前一小時/時間步驟“ t-1”的污染和天氣測量值,將數據集作為監督學習問題的框架是關於預測當前小時/時間步驟“ t”的“污染”

在將模型擬合到訓練和測試數據分割之后,如果我要對具有7個特征的新數據集進行預測,因為該模型中沒有“污染”特征,而我明確地只想使用其他7個功能。

謝謝你的幫助!

我該如何處理這種情況? (而其余7個功能保持不變)

編輯-假設我的數據集在訓練/擬合模型時具有以下3個特征-shop_number,item_number,number_of_units_sold

之后,我訓練了LSTM模型,得到了一個具有“ shop_number”和“ item_number”特征的數據集。 數據集不具有“ number_of_units_sold”。

“ LSTM”中的“ input_shape”參數在訓練時具有1個時間步長和3個特征。 但是在預測時,我只有1個時間步長,但只有2個特征(因為我必須預測“ number_of_units_sold”)。

那么我該如何進行呢?

如果污染是最后一個特征:

X = original_data[:,:,:-1]
Y = original_data[:,:,-1:]

如果污染是首要特征

X = original_data[:,:,1:]
Y = original_data[:,:,:1]

其他

i = index_of_pollution_feature
X = np.concatenate([original_data[:,:,:i], original_data[:,:,i+1:],axis=-1)
Y = original_data[:,:,i:i+1]

return_sequences=Truestative=False制作模型,僅此而已。 不要使用Flatten,Global池或任何刪除步長維度的東西。


如果您根本沒有任何污染數據需要培訓,那么您就不能這樣做。

暫無
暫無

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

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