前提・実現したいこと
発生している問題・エラーメッセージ
入力がu,出力がyのRNNモデルの構造が分かりません. 図のようにu(1)からu(100)まで入力して,出力y(100)を予測するようなモデルを作りたいと考えています. 次の予測は図のようにu(2)からu(101)まで入力して,出力y(101)を予測したいと考えています. 下に記載するソースコードで間違いないでしょうか. また,入力と出力のデータが全く違うデータでも関係性が学習できるのであれば,学習可能でしょうか. u(1)~u(100)の時系列データを入力としてu(101)を推定するのではなく,u(1)~u(100)から違う時系列のy(100)を予測したいと考えています. 初歩の質問で申し訳ありませんがご回答よろしくお願いいたします.
該当のソースコード
python
import tensorflow as tf import numpy as np import keras import pandas as pd from tensorflow.keras.models import Sequential from keras.layers import Dense, Activation,RNN from keras.layers import Input from keras.models import Model maxlen = 100 length_of_sequences = u.shape[0] inputs = Input(shape = (maxlen,1)) output = (RNN(1))(inputs) model = Model(inputs=inputs, outputs=output) data = [] target = [] for i in range(0, length_of_sequences - maxlen): data.append(u[i:i+maxlen]) target.append(y[i+maxlen,:]) print(np.array(data).shape) print(np.array(target).shape) learn_u = np.array(data).reshape(len(data), maxlen, 1) learn_y = np.array(target).reshape(len(target), 1) model.fit( learn_u ,learn_x, batch_size=500, epochs=500)
試したこと
いくつか調べましたが確かな情報が得られませんでした.
補足情報(FW/ツールのバージョンなど)
python 3.8.8
tensorflow 2.3.0
keras 2.4.3
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。