2024年11月13日水曜日

タンクモデルのパラメータ最適化 その2

タンクモデルに関する問い合わせがありました。

最近は機械学習を利用する印象が強く、タンクのことを忘れかけていました。
振り返ってみると、EXCEL、Fortran、Python でパラメータ探索を実施しています。なんだか苦労して重み(ペナルティ)を手で合わせた記憶がありますね。

機械学習のノウハウがある程度身についた今だと、タンクモデルでも同じフレームワークを使用できるなあと思いつきました。

畳み込みブロックを何段にするか --> タンクを何段にするか
ハイパーパラメータの最適化 --> パラメータの最適化
損失関数の選択 = 損失関数の選択

機械学習で利用している Optuna を使えば、容易に最適化できそうです。同定するパラメータや計算量が機械学習に比べて非常に少ないため、探索に時間もかからないでしょう。同じようなことを考える人がいるのでは?と調べてみると、やはりいらっしゃいました。
単流域型タンク・モデルとニューラルネットワークの比較

DNN や GBM だと、過学習を起こしやすい印象を持っています。また。外挿も苦手。タンクモデルくらいの少ないパラメータで長期のデータを扱う、交差検証を取り入れるなどの工夫が過学習を起こさないちょうど良いレベルなのかもしれません。ペナルティの配分の仕方も何かしら自動化できそうです。
「丁度良い」最適化ができそうな気がします。

0 件のコメント:

コメントを投稿