概要
物理学をかじったことのある人であれば聞いたことのある、物理系の保存量であるハミルトニアンを、機械学習(ニューラルネット)でも使った論文があると聞き、少し追ってみたので備忘録的にまとめます。
たぶん、物理屋は機械学習やり始めても物理をいつまでも追いかけているんだなあ。
##参考にしたもの
- 原論文 2019年6月くらいに発表されたものです。
- AI Scholarさんの エネルギー保存則を満足する物体運動の予測を可能とする Hamiltonian Neural Networks
- yoheikikutaさんの[2019] Hamiltonian Neural Networks
- NTTComさんの 認めたくないものだな… Neural Networkの力学系表現というものを
内容
最小作用の原理
物理学のハミルトニアンをまずは知らないと話にならないのではあるが、、、
まず、物理学において最小作用の原理というものがあります。これは、全ての物理現象を記述するすごい原理です。例えば電磁気学のマクスウェル方程式や、相対論のアインシュタイン方程式も、すべてこの最小作用の原理をあるラグランジアンのもとで導出することで求ってしまうのです。。この辺の話は解析力学と呼ばれ、めちゃくちゃ面白いです。
作用というものをラグランジアンから定義します。ラグランジアンとは、物体の位置と速度で記述される物理量のことです。最小作用の原理は、ラグランジアンの時間積分を作用と置いた時に、力学系の運動はその作用が最小になるような軌道(位置情報と速度情報)で実現されます。
物理系(例えば何かの物体の運動を記述する物理システムのこと)が決まると、このようにまずラグランジアンを定義します、例えば運動エネルギー、位置エネルギー、(多体システムであれば)物体同士の相互作用などを含んだラグランジアンが定義され、それを最小作用の原理にぶち込むと、ニュートン力学でおなじみの運動方程式(電磁気ではマクスウェル方程式など)が出てくるのです!!
ハミルトニアン
ハミルトニアンは、ラグランジアンをルジャンドル変換したものです。まあ、変数変換をやっているわけです。これにより、物体の位置と速度で記述されていたラグランジアンから、一般座標と一般運動量と呼ばれる(併せて正準変数と呼ばれる)変数で記述された物理量である、ハミルトニアンを得ることができます。このハミルトニアンを用いると、先ほどの作用は
と書くことができ、最小作用の原理を用いると、その系の運動方程式である
が得られます。ここで$q$は一般化座標、$p$は一般化運動量です。この式が何を言っているかというと、ハミルトニアンを一方の正準変数で偏微分すると、他方の正準変数の時間微分がわかるということです。つまり、ハミルトニアンを正準変数で微分することで、正準変数の時間発展がわかる、つまり系の運動を記述できるということになります。また、ニュートン力学のように運動方程式が位置の時間での2階微分で書かれたりすることもなく、運動方程式は位相空間で定義された正準変数の一階の常微分方程式になるのです。これがハミルトニアンを導入する一番の理由でしょう。
また、ハミルトニアン(エネルギー)は時間微分をとると0になる、すなわちエネルギーは系の運動において時間保存します。このことを利用し、物理系を機械学習で学習させる時に、保存量をうまく保存させるような制約を入れることで、物理に相反しない機械学習をしよう、としているのが原論文での取り組みになります。
Hamiltonian Neural Network
提案されているハミルトニアンニューラルネットワークの概要ですが、$p$, $q$ を入力として、ハミルトニアンを出力するようなネットワークを組み、出力されたハミルトニアンを正準変数で微分したものと、正準変数を時間微分したものが等しくなるようにネットワークを学習させています。
ロスは以下のように定義されており、パラメータ$\theta$がロスを最小化する方向にアップデートされていきます。
論文では、簡単な一体問題として
- 調和振動子
- 摩擦なし振り子
- 摩擦あり振り子
についての物理運動を学習するハミルトニアンネットワークを実装している。
また、比較対象として、GroundTruth としては運動方程式を数値的に単純に解いたもの、NNはある時刻の$p_t,q_t$が与えられて、$p_{t+1}, q_{t+1}$ を予測するような隠れそう200のニューラルネットワークです。
また、少し複雑な問題として
- 重力で引き合う二粒子が回転している連星系
どちらの実装でも、ハミルトニアンニューラルネットでは保存量が物理的に保存され、NN よりもGroundTruthに近い形で現象予測ができていることがわかります。
最後に
ハミルトニアンを出力するようなネットワークを組むことで、物理の保存則に制約を設けた形で機械学習を行うことができるのがとても面白いですね。
おわり。