Multivariate Time Series Prediction with LSTM の例(GitHub)を動かしてみる。
ここでは、
を動かしてみる。
↓ YouTuBEの解説あり。
自分の環境
- Windows10
- Python3.7.2
- anacondaとかは使わずpip
- GPUなし
動かす手順を示す(1回動いているので、リピート)
手順1
以下。
- zip解凍
- ipynbをpyへ
手順2
pyファイルを実行。
get_ipython().magic('matplotlib inline') NameError: name 'get_ipython' is not defined
定番のエラー。get_ipython()
をコメントアウトし、再度実行。
AttributeError: 'DataFrame' object has no attribute 'as_matrix'
as_matrix()をvaluesに書き換え。
NameError: name 'get_ipython' is not defined
別の記事
https://keep-loving-python.hatenablog.com/entry/2022/04/17/120802
に書きましたが、ここは、コメントアウトにすると 実行すべき行が抜けるので、 中味を展開。
es = EarlyStopping(monitor='val_loss', min_delta=1e-10, patience=10, verbose=1) rlr = ReduceLROnPlateau(monitor='val_loss', factor=0.5, patience=10, verbose=1) mcp = ModelCheckpoint(filepath='weights.h5', monitor='val_loss', verbose=1, save_best_only=True, save_weights_only=True) tb = TensorBoard('logs') history = model.fit(X_train, y_train, shuffle=True, epochs=30, callbacks=[es, rlr, mcp, tb], validation_split=0.2, verbose=1, batch_size=256)
以下のとっても変なグラフになる。
なぜか、コードの末尾にある、dataset_trainの3行を、下記の位置に移動。
# Parse training set timestamp for better visualization dataset_train = pd.DataFrame(dataset_train, columns=cols) dataset_train.index = datelist_train dataset_train.index = pd.to_datetime(dataset_train.index) plt.plot(PREDICTIONS_FUTURE.index, PREDICTIONS_FUTURE['Open'], color='r', label='Predicted Stock Price')
完成!!!
(いらすとや)
この動かしたときのモジュールのバージョン
Keras 2.3.1 tensorflow 1.15.0 matplotlib 3.5.1
なんか、matplotlib
のエラーにならないためには、バージョンを気にしないといけなかったような気がする。
Kerasとtensorflowのバージョンは、Youtube他で指定されていた気がする。
上記のバージョンは、少し、違うかも。でもおおよそ、近いはず。
自分の関連記事(2023/10/06)
この記事で紹介しているもの、すごく、わかり易い!!!
コメント
不明点などあれば、コメント等に書いて下さい!