ニューラルネットの調整について

4 views (last 30 days)
maeda
maeda on 3 Apr 2019
Commented: maeda on 7 Apr 2019
深層学習を使用した sequence-to-sequence 回帰のデモにある予測のRMSEを低くしようと試みています。https://jp.mathworks.com/help/deeplearning/examples/sequence-to-sequence-regression-using-deep-learning.html
デモではCMAPSSData.zipの中からtrain_FD001.txtを学習して、ニューラルネットの精度が RMSE = 22となっています。さらに、私はCMAPSSDataの中の train_FD002.txt を選んで学習に用いたところ、RMSE = 51となりました。(添付ファイル) RMSEをデモと同等の22以下に抑えるにはどのような設定が必要になりますか?自分で試したことは、ニューラルネットのユニット数の変更 20,50,200,2000(フリーズ)、エポック数(200)の変更を試しました。計算には設定1つあたり15分ほどがかかってしまうので調整の勘を教えていただきたいです。
  1 Comment
maeda
maeda on 3 Apr 2019
添付ファイルはいろいろ調整しようとしてミニバッチ数がexampleの値と違っていたりしますので、FD002に変えただけではないことにご注意ください。

Sign in to comment.

Accepted Answer

michio
michio on 3 Apr 2019
Edited: michio on 3 Apr 2019
もし学習の進行状況をみて RMSE が大きく上下しているようであれば、InitialLearnRate を下げてみてはいかがでしょう。
また、元データの readme.txt に
train_FD001.txt は Condition: ONE (Sea Level)
train_FD002.txt は Condition: SIX
との記載があり、train_FD002.txt の方が難易度が高そうなデータになっています。もともとの例題ではデータ全体の平均値・分散でデータの正規化をしているので、そのまま複数の状態をもつ train_FD002.txt に使うと精度が出ないのかもしれません。同じようなデータを使っている別の例題 Similarity-Based Remaining Useful Life Estimation のようなモード別の正規化も有効かもしれません。
  3 Comments
Kazuya
Kazuya on 5 Apr 2019
残念ながら拡大できないので
[net,traininfo] = trainNetwork(XTrain,YTrain,layers,options);
traininfo を出力させて別途確認する方法ではいかがでしょうか?
maeda
maeda on 7 Apr 2019
kazuyaさんありがとうございます。その方法で学習の様子を出力してみます。

Sign in to comment.

More Answers (0)

Categories

Find more on 時系列、シーケンス、およびテキストを使用した深層学習 in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!