雑記: 連続的に変化する状態を捉えたい話(仮題)

キャラクターの原作とは無関係です。お気付きの点がありましたらご指摘いただけますと幸いです。
  1. James Morrill, Cristopher Salvi, Patrick Kidger, James Foster, Terry Lyons. Neural Rough Differential Equations for Long Time Series. arXiv preprint arXiv:2012.07436, 2020.

    [2009.08295] Neural Rough Differential Equations for Long Time Series
    GitHub - jambo6/neuralRDEs: Code for: "Neural Rough Differential Equations for Long Time Series", (ICML 2021)

f:id:cookie-box:20180305231302p:plain:w60

微分方程式って何?

f:id:cookie-box:20180305232608p:plain:w60

f(t)n\geqq1 次の導関数が満たす等式から f(t) がどんな関数かを求めるような方程式ですね。例えば物理で習った運動方程式は速度(時刻の関数)という未知関数の1次導関数を含む微分方程式と捉えられます。自由落下する物体であったら常に一定の力(重力)がかかるので、その速度を求めるには「微分したら定数になるような関数は何?」という問を考えることになりますよね。これは微分方程式です。

f:id:cookie-box:20180305231302p:plain:w60

微分したらこれになる関数は何?」ってことか…でも、それをニューラルネットで時系列を扱うときに利用したいってなる? 現状 RNN とか CNN とか Self-Attention とか、「現時点までの入力データから特徴を出力するニューラルネット構造」ってもう十分ある気がするんだけど。それで何か不満があるの??

f:id:cookie-box:20180305232608p:plain:w60

そうですね。

  • 時間が連続的で入力が不等間隔であったとします。不等間隔であるともはや入力系列の値が同じでもその意味が同じであるとはなりませんよね。
  • 等間隔であったとしてもです。それらのモデルでは入力がやってくる時刻にしか特徴が出力されませんよね。入力と入力の間の時刻に特徴がどうなっているのかに興味があるとき、それらのモデルは応えてくれません。
  • さらに時間が離散的であったとしても、それらのアーキテクチャで表現できるのは結局差分方程式になってしまうと思うんです。真の時間発展のメカニズムによっては差分方程式で表現しづらいということはありえます。h_t = \sin(t) を与える差分方程式を学習するのは面倒そうでしょう? でもそれを与える2階定数係数同次微分方程式ならずっとシンプルです。h''(t) = -h(t) なので。

f:id:cookie-box:20180305231302p:plain:w60

すごい不満出たな…それで、参考文献1. の題は直訳すると「長い時系列のためのニューラルで粗い微分方程式」だけど(何が長いんだ?)、アブストラクトをみると Neural Controlled Differential Equations というのが RNN の連続時間のアナロジーで…Controlled 微分方程式? 制御微分方程式? って何??

f:id:cookie-box:20180305232608p:plain:w60

というのは本文の冒頭に引用(以下)がありますね。数学に元々あった概念ではなくてニューラルネットの文脈で出てきた微分方程式だと思うんです(そうでなかったらすみません)。

[2005.08926] Neural Controlled Differential Equations for Irregular Time Series

参考文献1. の 1.1 節が Controlled Differential Equations なのでここを読めばわかると思います。いま、X: [a, b] \to \mathbb{R}^v なる有界変動な連続関数があるとします。f:\mathbb{R}^w \to \mathbb{R}^{w \times v} を連続関数とします。このとき未知関数 Z: [a,b] \to \mathbb{R}^w に関する次の方程式を Controlled Differential Equations というようです。\xi \in \mathbb{R}^wZ境界条件ですね。
 \displaystyle Z_a = \xi, \quad Z_t = Z_a + \int_a^t f(Z_s) dX_s

dX_sリーマン・スティルチェス積分です。
f:id:cookie-box:20180305231302p:plain:w60

待って待って、そもそも f(Z_s) dX_s は行列とベクトルの積なんだな。それでこの d X_sX有界変動な連続関数…って? リーマン・スティルチェス積分ってのもわかんないし。普通の積分じゃないの?

f:id:cookie-box:20180305232608p:plain:w60

1.1節の続きに、X が(有界変動連続に加えて)微分可能であれば普通の積分になることが示されていますよ。以下のようにかきかえられますので。

 \displaystyle \int_a^t f(Z_s) dX_s = \int_a^t f(Z_s) \left. \frac{d X_r}{dr} \right|_{r=s} ds
これは何のことはない、数学で習った置換積分ですね。そしてこのとき Controlled Differential Equations は単に常微分方程式になるとあります。\dot{Z_t} = f(Z_t) \dot{X_t} ですからね。…では、X微分可能でなければ積分を考えることなどできないのかというと、そうではありません。

つづいたらつづく