私は、駐車場がどのくらいいっぱいであるかを予測する上で、概念の証明をしようとしています。私はKerasを使ってLSTMニューラルネットワークを作成し、与えられた時間にどのくらいの領域があるかを予測しようとしています。ケラスを用いた時系列予測
これは私のデータフレームの頭です:
from sklearn.model_selection import train_test_split
TRAIN,TEST,notused,notused = train_test_split(df['data']['Full%'],
df['data']['Full%'],
test_size=0.25)
TRAIN.sort_index(inplace=True)
TEST.sort_index(inplace=True)
:
Time_Stamp Weekday Area Sub_Area Free_Spots Used_Spots Full%
2014-04-10 08:00:00 Yes Ballard Locks NW 54TH SR ST BETWEEN 32ND AVE NW AND NW 54TH ST 68.0 1.0 1.0
2014-04-10 09:00:00 Yes Ballard Locks NW 54TH SR ST BETWEEN 32ND AVE NW AND NW 54TH ST 68.0 2.0 3.0
2014-04-10 10:00:00 Yes Ballard Locks NW 54TH SR ST BETWEEN 32ND AVE NW AND NW 54TH ST 12.0 0.0 0.0
2014-04-10 11:00:00 Yes Ballard Locks NW 54TH SR ST BETWEEN 32ND AVE NW AND NW 54TH ST 12.0 0.0 0.0
2014-04-10 12:00:00 Yes Ballard Locks NW 54TH SR ST BETWEEN 32ND AVE NW AND NW 54TH ST 12.0 0.0 0.0
は、私は、次のコードを実行します。
# create train lists
x_train = []
y_train = []
# create test lists
x_test = []
y_test = []
# fill the train lists
for i in range(len(TRAIN)-1):
x_train.append(TRAIN[i])
y_train.append(TRAIN[i+1])
# fill the test lists
for i in range(len(TEST)-1):
x_test.append(TEST[i])
y_test.append(TEST[i+1])
# change the lists to numpy arrays
x_train, y_train = np.array(x_train), np.array(y_train)
x_test, y_test = np.array(x_test), np.array(y_test)
次の部分は、これがうまく動作しない部分です。
x_train = x_train.reshape(1,56,1)
y_train = x_train.reshape(1,56,1)
model = Sequential()
model.add(LSTM(56, input_dim=56,return_sequences=True))
model.add(Dense(56))
model.compile(loss='mean_absolute_error', optimizer='adam',metrics=['accuracy'])
model.fit(x_train, y_train, epochs=10000, batch_size=1, verbose=2,validation_data=(x_test, y_test))
私が遊んでてきたが、エラーが値エラーのいくつかの並べ替えされて保持します:
ValueError: Error when checking input: expected lstm_24_input to have shape (None, None, 56) but got array with shape (1, 56, 1)
は今、私は私のコードで何が間違っているほか、質問のカップルを持っている:
入力ディメンションが同じではないので、列車とテストデータのサイズが異なることが問題になるようです。私はこれをどのように扱うべきですか?
日時タイムスタンプは私の列車/テストデータの一部ではなく、このデータセットは実際のデータセット(このデータセットからデータを取得したもの:https://github.com/bok11/IS-Data-Analasys/blob/master/Data/Annual_Parking_Study_Data.csv)であるため、各観測間の時間は異なります。これは大丈夫ですか?私のノートPCの
フルビューはここで見ることができます:https://github.com/bok11/IS-Data-Analasys/blob/master/Data%20Exploration%20(Part%202).ipynb
EDIT:私の仕事の目標は、駐車場を予測するために、このデータを収集するために実行可能であるかどう、証明することです。
これは正しいコードですか?あなたのfirsrt層はLSTMであり、メッセージが言うように密な層ではありません。 –
あなたが正しいです、間違ったエラーメッセージをコピーしました(私は周りに遊んでいて、セルを再実行しています)私は正しいエラーで私の質問を更新しました – Bok