0
私はこのチュートリアルでLSTM-オートエンコーダの読み取り:https://blog.keras.io/building-autoencoders-in-keras.html、及び以下対応keras実装貼り付け:この実装でLSTM-autoencoderを可変長時系列データに適用するにはどうすればよいですか?
from keras.layers import Input, LSTM, RepeatVector
from keras.models import Model
inputs = Input(shape=(timesteps, input_dim))
encoded = LSTM(latent_dim)(inputs)
decoded = RepeatVector(timesteps)(encoded)
decoded = LSTM(input_dim, return_sequences=True)(decoded)
sequence_autoencoder = Model(inputs, decoded)
encoder = Model(inputs, encoded)
を、それらがの長さを意味し、形状の(タイムステップ、input_dim)される入力を修正しました時系列データはtimesteps
に固定されている。私が正しく覚えていれば、RNN/LSTMは可変長の時系列データを扱うことができ、何らかの方法で長さのデータを受け入れるようにコードを修正することが可能かどうか疑問に思っていますか?
ありがとうございます!
ありがとうございました!バリアント長のデータを自動エンコーダーに渡す方法はありますか? var-length配列のリストを配列に変換しようとしましたが失敗しました。私はvar-length配列のリストを直接渡そうとしましたが、モデル入力をチェックする際にエラーが発生しました。モデルに渡すNumpy配列のリストは、モデルが期待するサイズではありません。 1つの配列を表示すると予想されていましたが、代わりに3773の配列の次のリストがあります:[配列([[0.300544、0.251966]、 '。 – username123
https://stackoverflow.com/questions/46144191/keras-misinterprets-training-data-shape/ 46146146#46146146 –
配列をダミーの値で埋めて、同じサイズになり、 'masking'を使うようにすることもできます(私は使ったことはありませんが、kerasのマスキングの使い方はgoogleでできます)。 –