romAI検証コーナー(その9)Learning Rate(学習率)とは?

Kosuke_IKEDA
Kosuke_IKEDA
Altair Employee

シンプルなモデルを使用して、romAIの機能をチェックしていきます。第9回はLearning Rate(学習率)について確認します。

 

Learning Rate (学習率)とは

romAI 2021.2.1よりパラメータが公開され、ユーザにて変更可能となりました。デフォルト1e-3が設定されています。この値を変更することで学習の進む速度が変化します。では、実際にどのように変化するか見てみましょう。

image

 

問題設定

第4~6回と同様インパクト関数によるモデルです。Learning Rate (学習率)を変えて結果を比較してみます。

image

 

romAIの設定

romAIの設定を行います。

第1~6回と同様に、静的ROMとしてInputs、Outputsのみを指定します。

image

relu関数で[20,20]としました。

image

 

トレーニングパラメータの設定

Epochs=100、データ分割は無しでSplit Ratioは1e-10としました。

Learning Ratioをデフォルトの1e-3のほか、1e-2、1e-4でトレーニングを実施しました。

image

 

結果の比較

トレーニングのLossを比較します。

デフォルトの1e-3(赤)に対し、値を大きくした1e-2(青)では少ないエポック数でLossが低下していますが、エポック数6以降でLossの低下が見られません。

一方、値を小さくした1e-4(緑)ではLossの低下が遅く、エポック数100回でもLossは低下傾向にあり、エポック数が不十分であることを示しています。

image

インパクト関数の予測結果を比較します。Lossの小さい順にReference(水色)に近い波形が予測できていることがわかります。

image

 

まとめ

romAI 2021.2.1より公開されたパラメータLearning Rate(学習率)について確認しました。

まずはデフォルトの1e-3で問題ないと思いますが、トレーニング時間が長すぎる場合は、値を大きくしてみてもいいかもしれません。

 

 

Comments