[問題] LSTM多對多預測 輸入資料結構問題

看板DataScience作者 (輝飛)時間6年前 (2018/10/25 21:24), 編輯推噓2(204)
留言6則, 4人參與, 6年前最新討論串1/1
作業系統:ubuntu (ex:mac,win10,win8,win7,linux,etc...) 問題類別:LSTM (ex:ML,SVM,RL,DL,RNN,CNN,NLP,BD,Vis,etc...) 使用工具:python (ex:python,Java,C++,tensorflow,keras,MATLAB,etc...) 各位大大晚安 目前正在學習LSTM多對多預測,手邊有一組"48期交易金額"的資料,1000名顧客,共 48000筆資料 想要把48期切分成36期訓練,12期測試 並且利用1~35期當作預測X,Y為2~36期的金額 import 進 模型的Shape: trainX:(1000,1,35) trainY:(1000,35) 訓練模型程式碼如下: model = Sequential() model.add(LSTM(4, input_shape=(35,1))) model.add(Dense(35)) model.compile(loss='mean_squared_error', optimizer='adam') model.fit(trainX, trainY, epochs=100, batch_size=1, verbose=2) error 代碼如下:ValueError: Error when checking input: expected lstm_9_input to have shape (35, 1) but got array with shape (1, 35) 不知道是否是多對多時輸入資料的型態錯誤,或者是哪裡沒有搞懂? 麻煩各位大大解答,感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.119.78.38 ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1540473886.A.5E2.html

10/25 21:42, 6年前 , 1F
Input_shape=(1,35)
10/25 21:42, 1F

10/25 21:46, 6年前 , 2F
10/25 21:46, 2F

10/25 21:47, 6年前 , 3F
trainX: (1000, 35, 1)
10/25 21:47, 3F

10/27 18:47, 6年前 , 4F
看不懂你的切分什麼意思 不過你data shape不對
10/27 18:47, 4F

11/03 14:14, 6年前 , 5F
訓練集給(1,35) 卻要模型吃(35,1) 棒!
11/03 14:14, 5F

11/03 14:16, 6年前 , 6F
然後fit時不用validation觀察一下?
11/03 14:16, 6F
文章代碼(AID): #1RqSGUNY (DataScience)
文章代碼(AID): #1RqSGUNY (DataScience)