MATLAB Answers

Neural Network Toolbox でのモデル作成方法について

16 views (last 30 days)
yu uchimura
yu uchimura on 31 Oct 2018
Edited: Kazuya on 20 Nov 2018
現在、空調制御に関する研究を行っており、モデル予測制御を使用してSimulink上でシミュレーションを行っています。以前はモデルとして伝達関数モデルを使用していましたが、現在ニューラルネットワークモデルを使用したシミュレーションを行おうと試行錯誤しています。その際Neural Network Toolbox(Neural Net Fitting)を使用して、入力データに空調機の吹出風量、出力データにセンサ温度を用いてモデル作成を行っているのですが、うまくモデル作成ができません。以下に質問をまとめました。
・3層のニューラルネットワークを作成したいのですが、アプリ上でそのような操作は可能でしょうか?もし可能であるならば、教えて頂きたいです
・アプリ上で試しにモデル作成をした場合、隠れ層の数を増加させても(1000~8000ほど)Rの値があまり変化しないのですが、そのような場合どうしたら良いでしょうか
以上二つに関して回答して頂けると幸いです。どうぞよろしくお願い致します。

Accepted Answer

mizu
mizu on 6 Nov 2018
Neural Net Fitting のアプリの Network Architecture というページで3層ネットワークを作れますよ. うまくモデル作成ができませんとありますが,どこで問題が起きているのでしょうか. (エラーですか?方法がわからないのですか?精度が良くないのですか?)
(隠れ層の数ではなく)隠れ層のユニット数を増加させると特徴次元が増えて表現力が増えますが,多くしすぎると計算効率が悪くなり汎用性がないモデルとなります.1000から8000という大きな数字で表現力を上げるのではなく,もう少し小さな値で実行してはいかがでしょうか.ユニット以外にも学習係数など他のパラメーターもあるのでハイパーパラメーターの調節をすると結果が変わるかもしれません
  3 Comments
Kazuya
Kazuya on 20 Nov 2018
そもそも学習データの限界、予測が原理的に不可能なデータである可能性も考える必要があるかもしれません。
ハイパーパラメータの最適化に関しては下記にコード例があります。ベイズ最適化を使用します。
Statistics & Machine Learning Toolbox の機械学習関数であればオプション設定で最適化できますが、ニューラルネットワークの場合は少し作りこむ必要があります。。
参考:

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!