注: 以下のすべての数値は目安です。
次のパラメーターを使用して LSTM モデルをトレーニングしました。
batch_size = 32
time_step = 5
model.predict()
将来の次の結果を予測するには、少なくとも 5 つのサンプルが必要であることはわかっています。たとえば、CSV ファイルに次の項目があるとします。
は 5 に等しいのでtime_step
、データを 1 x 5 x 4 のサペを持つ配列に変換します。この配列を X_inputと呼びましょう。今:
model.predict(X_input)
1つのアイテムのみを返すことになっています。この値が正しい答えである 58 であるとしましょう。たとえば、CSV ファイルに 6 つの項目が含まれている場合:
X_inputの形状は 2 x 5 x 4 で、model.predict()
[57, 58] であるはずの 2 つの値を返します。
実際、私の CSV ファイルの最後の 5 つのサンプルが同じである場合、最後の予測値が同じ (つまり 58) のままであることを期待しますが、そうではありません! CSV ファイルの最後の 5 つのサンプルを変更せずに保持しているにもかかわらず、CSV ファイルのサンプル数が変化すると変化します。
stateful
最初は、LSTM レイヤーのパラメーターと関係があるのではないかと考えました。しかし、私はそのパラメーターを使用していないので、Flase がデフォルト値であると仮定します。
何かアイデアはありますか?