NeuralNetworkConsoleで多次元配列のデータセットを作成する方法

こんにちは。管理人のピヨ猫でーす。

前回、SONY neural network consoleで多次元配列の数値データを扱う方法の1つとして、データセットCSVファイルに直接記入する方法を紹介いたしました。

syuuai.hatenablog.com

前回記事で触れた通り、SONY neural network consoleには多次元配列を扱う方法としてデータごとにCSVファイルを用意する方法があります。そちらも試してみたので紹介致します。

1.Neural Network Consoleで多次元配列を定義する2つの方法

SONY neural network consoleで多次元配列を定義する方法には以下の2つあります。

  1. データセットCSVファイルに直接記入する方法
    1行X列の配列(ベクトル)を表現する方法です。
    1つのCSVに直接記入できるのでファイルの管理が簡単ですが、膨大な次元を表現する場合には1つのCSVファイルが巨大になりメモリに乗り切らない可能性があります。

    ◆1行X列の配列(ベクトル)の例

    SONY neural network consoleの多次元配列Dataset
    SONY neural network consoleの多次元配列Dataset

  2. データごとにCSVファイルを用意する方法
    X行X列の配列(ベクトル)を表現する方法です。
    行列データのCSVをデータごとに用意する必要があるので、ファイル数が増えますが、1ファイルが巨大になりメモリに乗り切らないという問題を防げます。

    ◆ X行X列の配列(ベクトル)の例

    SONY neural network consoleのDataset

    SONY neural network consoleの多次元配列Dataset

     

詳しくは本家のマニュアルを参照ください。

support.dl.sony.com

2.Neural Network ConsoleのDataSetの定義方法とサンプルデータ

X行X列のデータを定義する場合は、Neural Network ConsoleのデータセットCSVファイルをデータ毎にCSVを分けて作成します。

SONY neural network consoleの多次元配列Dataset

注意点は大きく2点です。

  1. データセットを纏めるメインのCSVファイルを用意する
  2. 個別のデータセットファイルはヘッダを付けない

GIT HUBにサンプルのデータセットを登録したので良ければご利用下さい。

github.com

為替レートの時系列データです。
前回は1行X列に表したので見た目が良くなかったですが、今回は1つずつのデータを、終値,始値,高値,安値を時系列で表せたので、見た目が分かり易くなってますー。

SONY neural network consoleの多次元配列Dataset

SONY neural network consoleの多次元配列Dataset

 

3.Neural Network Consoleの設定方法
  1. テンプレートのプロジェクト(01_logistic_regression.sdcproj)を選択

    f:id:shibayu2002:20190327221443p:plain

  2. 別名でプロジェクトを保存

    neural network console

  3. データセットを読み込む
    トレーニングデータとテストデータの両方を読み込む

    SONY neural network consoleのDataset作成機能

    SONY neural network consoleのDataset作成機能

     

  4. 入力層のサイズを入力データの配列数に変更する
    変更前)

    SONY neural network consoleのDataset作成機能

    変更後)

    SONY neural network consoleのDataset作成機能
    ※ 配列の数はデータセットを読み込んだ時に表示されています。
        これをINPUTノードの配列サイズに設定すれば間違いがないです。

     SONY neural network consoleのDataset作成機能

     

  5. Neural Network Consoleを実行

    SONY neural network consoleのDataset

    SONY neural network consoleのDataset

上記のネットワークは単純すぎるので、改善が必要です。
SONY Neural Network Consoleには最適なネットワークをNeural Network Console自身が自ら探す優れた機能が備わっています。
別途記事にしたいと思いますが設定画面でStructure Searchにチェックを付けるとネットワークを自動探索してくれます。

SONY neural network consoleのDataset
 

4.サンプル実行結果(FXの為替予想を学習した結果)

で肝心のFXの為替予想はどうなったかといいますと~~

為替予想結果

Σ( ̄ロ ̄lll)ガーン

ものの見事に全てが-0.68%~-0.34%のクラスに属しています。
まあ、前回のやり方と次元の表現の仕方を変えただけで、データもネットワークも同じものなので結果は見えていたので、今回はショックが少ないです。

うーん。なんでだろう。
データに特徴が無いということなのかな・・・。
特徴が全く無いなんてことはないと思うんだけど・・・。ネットワークの構成が良くないのかな。

f:id:shibayu2002:20190302113110p:plain
2019/03/30追記 
原因が分かりました。教師データのスケールが問題でした。
各データの差が僅差なのでほとんど全て同じデータとみなされていました。
初めてのNeuralNetworkConsole!!DataSetの自動グラフ化機能

 

◆ 推薦図書

詳解 ディープラーニング TensorFlow・Kerasによる時系列データ処理 [ 巣籠 悠輔 ]

価格:3,672円
(2018/11/25 22:43時点)
感想(0件)

【送料無料】 機械学習 データを読み解くアルゴリズムの技法 / 竹村彰通 【本】

価格:6,696円
(2019/3/23 23:16時点)
感想(0件)

広告




スポンサーリンク
広告




広告




シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
広告