Recurrent Neural Network RNN

さくら VPS RNN tensorflow 動作確認

ここまでで、tensorflow 関連のインスト-ル作業が完了しました。
引き続き tensorflow の動作確認をしていきます。
yamada@********:~$ which python3
として python3 がインスト-ルされているディレクトリ-を見つけておきます。
/usr/bin/python3
に python はインスト-ルされています。
簡単な Python3 tensorflow ファイル tensorflow_test.py を作成します。
自分の PC Windows で以下の内容の Python ファイルを作成します。

# !/usr/bin/python3
# -*- coding: utf-8 -*-
import tensorflow as tf
hello = tf.constant('Hello World!')
tf.print(hello)
# python3 public_html/tensorflow_test.py

作成できたらファイル名は適当に tensorflow_test.py とします。
文字コ-ドは、UTF-8N
BOM なし
改行コ-ドは、LF
です。
この tensorflow_test.py を自分の PC Windows フォルダ
c:\vb_public_html に保存してください。
このファイルをユ-ザ-ディレクトリ
/home/yamada/public_html
にアップロ-ドします。
やり方がよく分からない方は
ユ-ザ-ごとの公開ディレクトリを用意する
の「SFTP でファイル アップロード」
を読んでください。
そして
/home/yamada/public_html/
のなかにある、tensorflow_test.py の パミッションを 実行可能 705 にします。
$ cd public_html
$ sudo chmod 705 tensorflow_test.py
端末画面で
yamada@********:~$ python3 public_html/tensorflow_test.py
とすれば、

Hello WORLD!

と表示されるはずです。
最初は 30秒ぐらい時間がかかります。
ただし、以下の INFO メッセージがみえます。

2022-09-18 11:14:26.272728: I tensorflow/core/platform/cpu_feature_guard.cc:193]
This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)
to use the following CPU instructions in performance-critical operations:
AVX2 AVX512F AVX512_VNNI FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2022-09-18 11:14:26.663166: I tensorflow/core/util/util.cc:169] oneDNN custom operations are on.
You may see slightly different numerical results due to floating-point round-off errors
from different computation orders. 
To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2022-09-18 11:14:29.806805: I tensorflow/core/platform/cpu_feature_guard.cc:193]
This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)
to use the following CPU instructions in performance-critical operations:
AVX2 AVX512F AVX512_VNNI FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
拙い翻訳をすると
この TensorFlow バイナリは、パフォーマンスが重要な操作で次の CPU 命令を使用するために、
oneAPI ディープ ニューラル ネットワーク ライブラリ (oneDNN) で最適化されています。
他の操作でそれらを有効にするには、適切なコンパイラ フラグを使用して TensorFlow を再構築します。
oneDNN カスタム操作がオンになっています。
異なる計算順序による浮動小数点の丸め誤差により、わずかに異なる数値結果が表示される場合があります。
それらをオフにするには、環境変数 `TF_ENABLE_ONEDNN_OPTS=0` を設定します。
この TensorFlow バイナリは oneAPI Deep Neural Network Library (oneDNN) で最適化され、
パフォーマンスが重要な操作で次の CPU 命令を使用します。 
AVX2 AVX512F AVX512_VNNI FMA
他の操作でそれらを有効にするには、適切なコンパイラ フラグを使用して TensorFlow を再構築します。

INFO メッセージ消去

INFO メッセージが出ないようにできます。
環境変数の TF_CPP_MIN_LOG_LEVEL を設定すれば出力されるメッセージを調節できます。
設定値は
0:全てのメッセージが出力される(デフォルト)
1:INFO メッセージが出ない
2:INFO と WARNING が出ない
3:INFO と WARNING と ERROR が出ない
今回は1を設定します。
最初の行に
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='1'
を追加します。

pandas と mplfinance のインスト-ル

さくら VPS RNN 豪ドル/円予測ファイルを動作させるために、さらに必要となるパッケ-ジは他に
pandas と mplfinance
があります。
まだインスト-ルされていない方は
yamada@********:~$ sudo pip3 install pandas
yamada@********:~$ sudo pip3 install mplfinance
yamada@********:~$ sudo pip3 install pillow
を実行してインスト-ルしてください。

さくら VPS で RNN 豪ドル/円予測ファイルⅡを動かす

Colaboratory で作成した
RNN 豪ドル/円予測ファイルⅡ keras-go-2.ipynb
をさくら VPS の中で動かします。
.ipynb のままでは動かないので、書式を変更します。
Colaboratory の中で keras-go-2.ipynb を開きます。
ファイル
⇒ダウンロ-ド
⇒py をダウンロ-ド
と順にクリックし、私の場合は自分のパソコンの
c:\vb_public_html フォルダ
に keras-go-2.py を保存しました。

RNN 豪ドル/円予測ファイルⅡ修正

さくら VPS のなかで keras-go-2.py が動作するように改造します。

  1. Python3 ディレクトリ追記(1行目)

    最初に、さくら VPS 内のどこに Python3 のあるディレクトリがあるか明記します。
    #!/usr/bin/python3
    を追加します。

  2. モジュ-ルパス削除(14行目)

    mplfinance モジュ-ルは
    /usr/local/lib/python3.8/dist-packages
    にインスト-ルされていますので、モジュ-ルパス追加は必要ありません。
    sys.path.append(
    '/content/drive/MyDrive/Colab Notebooks/my-modules'
    を削除します。

  3. CSV ファイルフォルダ変更(47行目)

    CSV ファイル colab_mane_chart_go.csv があるフォルダを変更します。
    フォルダ名はフルパス表示します。
    あらかじめ、colab フォルダには mane_chart_go.csv ファイルを保存しておきます。

    xl_df = pd.read_csv(
    # "drive/MyDrive/Colab Notebooks/my_data/colab_mane_chart_go.csv",
      "/home/yamada/public_html/colab/colab_mane_chart_go.csv",
      encoding="cp932")
    
  4. コ-ルパックモデル保存場所変更(188行目)

    コ-ルパックによる最良モデルの保存場所を変更します。
    保存場所はフルパスで指示します。 "drive/MyDrive/Colab Notebooks/my_data/jena_dense.keras",
      ↓
    "/home/yamada/public_html/colab/jena_dense.keras",
    colab フォルダはあらかじめ作成しておいてください。

  5. 最良モデルの呼出(212行目)

    最良モデルの呼出ファイルの保存場所を変更します。
    "drive/MyDrive/Colab Notebooks/my_data/jena_dense.keras",
      ↓
    "/home/yamada/public_html/colab/jena_dense.keras",

  6. 予測チャ-ト保存場所変更(285行目)

    でき上がった予測チャ-ト図の保存場所を変更します。
    保存場所はフルパスで指示します。 plt.savefig(
    'colab_mane_chart_go_keras.png')
     ↓
    plt.savefig(
    '/home/yamada/public_html/manep-img/colab_mane_chart_go_keras.png')
    manep-img フォルダはあらかじめ作成しておいてください。

  7. 5日間の予測値保存場所変更(295行目)

    5日間の予測値の保存場所を変更します。
    保存場所はフルパスで指示します。

    df_concat.to_csv(
    # 'colab_mane_chart_go_keras.csv',
      '/home/yamada/public_html/manep-img/colab_mane_chart_go_keras.csv',
       header=False, index=False)
    

以上で変更作業は完了です。
引き続き RNN 豪ドル/円予測Ⅱ PY ファイル keras-go-2.py をまとめます。


  • RNN 豪ドル/円予測Ⅱ PY ファイルまとめ に進む
  • さくら VPS RNN 豪ドル/円予測 に戻る
  • 70VPS に戻る