3

全ては収束する〜ボルツマン方程式とResNetにみるtrend to equilibrium~

1228
0

自己紹介と概要

はじめまして。ShinKunと申します。今回は 東京大学航空宇宙工学科/専攻 Advent Calendar 2020一日目 、ならびに 物工/計数 Advent Calendar 2020二日目 の記事として、流体最強の方程式として知られるBoltzmann方程式と、深層学習において非常によく知られるResNetの、ある意味での共通点、equillibrium trendについてお話していきたいと思います。全く異なるように思えるこれら2つの対象は、実は平均場解析と呼ばれる物理的視点により繋がっています。つまり、ある法則に従う多変数の系を直接相手にするのではなく、それらの変数が従う確率分布の発展を考えることで系全体の漸近的な振る舞いを解析できるという発想でこれら2つを理解できます。

本記事ではれより少し進んだ知見を得たいと考えています。結論を先にいうと、適切に学習された(推定対象から適切にパラメータが定められた)ResNetの層方向への情報伝達は、とある運動則に基づくBoltzmann方程式のtrend to equilibriumだと理解できるということになります。

この結論に向かっていきたいのですが、確率分布ないし確率測度の発展方程式を扱い、さらにその漸近挙動を調べることはそれほど簡単なことではありません。その最も単純な理由の一つは確率測度の空間が線形空間でないためであるといえるでしょう。

そこで役に立つのがWasserstein距離W2です。この距離を用いることによって確率測度を解析的に扱うことができ、特にBoltzmann方程式の漸近挙動、特に平衡解(equilibrium)への収束(trend to equilibrium)を(a priori評価なしに)解析することができます。

以上の流れを踏まえ、今回の記事では

  1. Wasserstein距離の定義・性質を速習(証明はしない)
  2. Boltzmann方程式の漸近挙動を調べる
  3. ResNetはBoltzmann方程式(の"線形化"であるFokker-Planck方程式)とみなして理解してみる

という構成で以下お話していきたいと思います。よろしくお願いします!

Wasserstein距離とその性質速習

この節では一般的な状況として(X,d)を可分完備距離空間とします。Boltzmann方程式を述べるだけであればX=R3,d(x,y)=|xy|(Euclidian norm)(x,yX)と思っていれば問題ありません。またP(X)X上の確率測度全体の空間とし、P2(X)P(X)の元で二次モーメントが有界なもの全体の集合とします。つまり、μP2(X)について、あるx0Xが存在して Xd(x0,x) dμ(x)<が成り立ちます。

二つの確率測度μ,νP2(X)の間のWasserstein距離W2とは、直感的には"砂の山μを穴νに移すときの最小コスト"を表します。しかし次の定義からではそれが理解しにくいかもしれません。

W2

確率測度μ,νP2(X)に対し
W2(μ,ν)=infπΠ(μ,ν)X2d(x,y)2 dπ(x,y)

とする。ここでΠ(μ,ν)={πP(X2)AX:,π[A×X]=μ[A],π[X×A]=ν[A]}

定義にinfが入っており複雑ですが、このinfはきちんと下に有界であり、距離の定義を満たすこと、特に三角不等式を満たすことが知られています。

W2は距離である

上の定義の下限infを達成するπは存在し、かつW2P2(X)上の距離となる。

証明は Villaniの本 の定理7.3を参照してください。

W2は定義は複雑ですが、通常目にする距離が満たしてほしい性質は結構満たしてくれています。例えば次の凸性は基本的ですが有用です。

W2の凸性

任意のμ1,μ2,ν1,ν2P2(X),α[0,1]について
W2(αμ1+(1α)μ2,αν1+(1α)ν2)2αW2(μ1,ν1)2+(1α)W2(μ2,ν2)2
が成り立つ。

しかし最も重要な性質と言えうるのは次の位相的な性質です。

W2によって確率測度の弱*収束は距離化できる

P2(X)内の点列(μk)kNμP(X)に対し、以下二つは同値。

  • W2(μk,μ)k0
  • μkkwμであり、かつ、あるx0Xに対しlimRlim supkd(x0,x)Rd(x0,x)2 dμk(x)=0が成り立つ。

ここでいう弱*収束とは、任意のφC0(X)に対して
limkXφ(x) dμk(x)=Xφ(x) dμ(x)
となることを指します。したがって通常確率測度の収束を述べる際にはすべての関数φについて上記が成り立つかチェックしなければいけないので面倒なのですが、Wasserstein距離により上の定理が成り立つのでその必要がなくなります。やったね。

Boltzmann方程式とそのtrend to equilibrium〜田中の定理〜

前節の性質を使ってBoltzmann方程式のtrend to equilibriumを示すことができます。その前に、航空Advent calendar2018内の kanepleaseさんのブログ記事 を参考にしながらBoltzmann方程式について復習しましょう。端的に言うとボルツマン方程式とは時刻t、位置x、速度vの粒子の存在確率f(t,x,v)が従う方程式のことで、次のような形をしているのでした。
ft+vfr+Fmfv=v1Ω(ff1ff1)VσdΩd3v1

今回は簡単のため、位置xfが依存しない、つまり空間斉次性の仮定を置き、さらに次のような簡略化されたBoltzmann方程式を考えます。
(1)ft=Q(f,f)=R3 dvS2 dσ b(cosθ)(ffff)
上式の正式な意味は、任意のφC0(R3)に対して
ddtR3φ df(t)=R3φ dQ(f,f)
が成り立つ、ということです。ここでQはBoltzmann collison operaterと呼ばれるP2(X)上の作用素であり、f,f,f,fはそれぞれf(t,v),f(t,v),f(t,v),f(t,v)を略記したものである。ここでさらにvは速度vの粒子と衝突した粒子の速度、v,vはそれぞれ衝突前の二つの粒子の速度を意味します。何故こういった文字が登場するかは ブログ記事 を参照することにして、ここでは端的にv,vは次式で与えられるという結果のみ述べます。
(2){v=v+v2+|vv|2σv=v+v2|vv|2σ
端的には運動量保存則とエネルギー保存則(と散乱方向を表すパラメータσS2)を用いることによって導かれるといえます。
また、bは(Maxwellian) Boltzmann collison kernelと呼ばれ、散乱方向σS2を制御するための非負値関数であり、
cosθ=vv|vv|σ
です。

事実として、任意のkS2に対しS2b(kσ)(1kσ) dσ<ならBoltzmann方程式の絵画存在し、一意であること、さらに初期値f0(v)に解f(t,v)が(弱*収束の意味で)安定に依存することがわかっています[ DiPerna+,89 ]。以下では常にこの仮定が満たされているものとします。しかしこの仮定のみで解の大域的性質を解析することには技術的困難を伴います。そこで63年に編み出されたのが次のGrad's angular cut-off
S2b(kσ) dσ=1<+
を課した解を考え、その解で一般の解を近似するテクニックです。この仮定を課すと、Boltzmann方程式は次式のように簡潔になることがわかります。
(3)ft=Q+(f,f)f,Q+(f,f)=R3 dvS2 dσ b(cosθ)ff

上ではBoltzmann方程式の形式的な説明をしてきました。一方、このBoltzmann方程式は運動量保存R3f(t,v)v dv=const.とエネルギー保存R3f(t,v)v2=const.を満たすことが変数変換、つまり式(2)に注目して(v,v)(v,v)を入れ替えることによりわかります(演習問題)。

これらの保存則の他にも、H定理と呼ばれるものが成立するのでした。H定理については航空Advent calendar2019内の kanepleaseさんのブログ記事 が非常に参考になります。主張を簡単にまとめると"Boltzmann方程式の解は負エントロピーを単調減少させる。さらにエントロピーが一定となる場合はfMという平衡状態しかない"ということです。ここでMはMaxwell分布、特にBoltzmann方程式の初期値f0として
(4)R3f0(v)v dv=0,R3f0(v)v22 dv=32
というものを選んだ場合は
M(v)=1(2π)3/2exp(|v|22)
となります。このMはBoltzmann方程式の平衡解、つまりQ(M,M)=0となっています。

H定理とtrend to equilibrium

実はこのH定理を用いてtrend to equilibrium、つまりfM,tを証明することもできるのですが、時刻t=0で負エントロピーが上に有界であるという仮定を一度置く必要があります。以下で述べる田中の定理は、その仮定を課さずにtrend to equilibriumを証明することができるという意味で優れているといえます。

以上でtrend to equilibriumを述べるのに必要な準備が終わりました。事実の羅列が多くて申し訳ありません。しかしこれで記号等にも慣れたと思うので、この記事の主定理を述べたいと思います。この定理は主張自体は[ Tanaka,78 ]で述べられたものですが、後にVillaniが整理し直しました[ Villani,03 ]。以下の証明は基本的にVillaniの証明を倣っていますが、部分的に"形式的には成り立つが証明はそれほど自明ではない"ところがあるので、そのような箇所が登場したら逐次remarkします。

Tanaka's theorem

f0,g0P2(R3)を式(4)を満たすような確率測度とする。また、f0,g0を初期値とするようなBoltzmann方程式(1)の解をそれぞれf(t,),g(t,)とする。このとき、以下が成り立つ。

  1. 任意のt0について
    W2(f(t,),g(t,))W2(f0,g0)
    が成り立つ。

2.W2(f(t,),M)0,as t特に三角不等式からW2(f(t,),g(t,))t0が成り立つ。

Step 1 上で述べた注意から、Grad's cut-offの仮定を課した解を考えれば十分である([ DiPerna+,89 ]等の手法によりcut-offされない場合でも成立することがわかる)。そこで以下では簡潔になったBoltzmann方程式(3)を考えればよい。

Step 2 まず主張1を示す。命題2により、R3f(v)v dv=R3g(v)v dvを満たす確率測度f,gP2()について次が成り立つことを示せば十分である。
(5)W2(Q+(f,f),Q+(g,g))W2(f,g)

形式的な)
f(t+Δt)=f(t)+Δt(Q+(f(t),f(t))f(t))+ε程度なので、f(t),g(t)f,gと略記すれば
W2(f(t+Δt),g(t+Δt))2=W2(f+Δt(Q+(f,f)f),g+Δt(Q+(g,g)g))2+ε=W2((1Δt)f+ΔtQ+(f,f),(1Δt)g+ΔtQ+(g,g))2+ε(1Δt)W2(f,g)2++ΔtW2(Q+(f,f),Q+(g,g))2+ε(1Δt)W2(f,g)2++ΔtW2(f,g)2+ε=W2(f,g)2+ε
となる。この議論を区間[0,t]Δtごとに分割して行えば大筋は示せる。

Step 3 命題2によりJensenの不等式が従うが、実は式(5)をあるθ0[0,π]が存在してb(cosθ)sinθ=δθ0となる場合について証明すれば十分である。

形式的な)
形式的なDirac関数を用いてS2 dσb(cosθ)=12π0πb(cosθ)sinθ dθ=0πλθδθと表わせる。これとJensenの不等式から
W2(Q+(f,f),Q+(g,g))2=W2( dvλδθff, dvλδθgg)2λθW2( dvδθff, dvδθgg)2λW2(f,g)2=W2(f,g)2
が従う。

Step 4 ここで、任意のφC0(R3)について、変数変換によりQ+(f,f)
R3φQ+(f,f)=R3 dvφ(v)R3 dv02π dϕff|θ=θ0=R3 dvφ(v)R3 dv02π dϕff|θ=θ0=R3 dvφ(v)R3 dv02π dϕff|θ=θ0
を満たすので、Q+(f,f)は次のような確率測度とみなせる(これをTanaka's representation of the gainと呼ぶ)。
Q+(f,f)=R6 dv dvffΠv,v,θ0=E[ΠV,V,θ0]
ここで、V,Vは互いに独立な、fに従う確率変数であり、Eはそれらの確率変数に関する期待値である。また、Πv,v,θ0は円Cc,r,k上の一様分布であり、制限によってR3上の確率分布とみなす。ここで円Cc,r,kは、中心c、半径r、そして円の法線ベクトルk
c=v+v+(vv)cosθ02,r=|vv|2sinθ0,k=vv|vv|
となるようなものである。

Step 5 ここで、次の補題を示す; Uc,r,kCc,r,k上を表すこととする。このとき、以下の評価が従う。
W2(Uc1,r1,k1,Uc2,r2,k2)2|c1c2|2+r12+r22r1r2(1+|k1k2|)

)
適当なUnitary変換と平行移動により、c1=0,k1=(0,0,1),k2=(0,sinγ,cosγ)(γ[0,π/2])の場合に次が成り立つことを示せば十分である。
W2(Uc1,r1,k1,Uc2,r2,k2)2|c2|2+r12+r22r1r2(1+cosγ)
そこでΩ=S1R2を一様分布によって確率空間と見做す。またωΩに対し、
V1(ω)=r1(cosω,sinω,0),V2(ω)=c2+r2(cosω,sinωcosγ,sinωsinγ)
と置くと、これらはそれぞれUc1,r1,k1,Uc2,r2,k2に従う確率変数である。
Uc1,r1,k1Uc2,r2,k2Π(Uc1,r1,k1,Uc2,r2,k2)あるから、W2の定義より
W2(Uc1,r1,k1,Uc2,r2,k2)2EV1Uc1,r1,k1,V2Uc2,r2,k2[|V1V2|2]=12π02π(r1cosωc2xr2cosω)2+(r1sinωc2yr2sinωcosγ)2+(c2z+r2sinωsinγ)2 dω=|c2|2+r12+r22r1r2(1+cosγ)
であり、示せた。

Step 6 Step5で示した補題を用いてStep3を式(5)を示す。(V,V)を周辺分布がそれぞれfに従う確率変数(独立とは限らない)、(W,W)を周辺分布がgに従う確率変数で、(V,W)(V,W)は独立であるようなものとする。Step4とJensenの不等式から
W2(Q+(f,f),Q+(g,g))2=W2(EΠV,V,θ0,EΠW,W,θ0)2EW2(ΠV,V,θ0,ΠW,W,θ0)2E|V+V+(VV)cosθ02W+W+(WW)cosθ02|2+sin2θ04(|VV|2+|WW|2|VV||WW||(VV)(WW)|)E|1+cosθ02(VW)+1cosθ02(VW)|2+sin2θ04|(VW)(VW)|2=1+cosθ02E|VW|2+1cosθ02E|VW|2=E|VW|2
が成り立つ。最左辺と最右辺を比較し、最右辺の(V,W)Π(f,g)の中で任意に動かせるから、infを取れば主張1を得る。

Step 7 ここで主張1の等号成立がf=gのときのみに限ることを示す。等号が成立すると仮定すればStep6での等号成立が必要であり、(VV)(WW)=|VV||WW|a.s.つまり
VV|VV|=WW|WW|a.s.
が従う。ここで、Brenierの定理[ Villani,03 ]により、輸送写像と呼ばれる可測写像ψ:R3R3が一意に存在してf=ψ#gが成り立つ。よってV=ψ(W),V=ψ(W)が成り立ち、ほとんど全てのw,wR3に対し
ψ(w)ψ(w)|ψ(w)ψ(w)|=ww|ww|
が従う。これからψψ(y)=ay+bのような形式になることがわかるが、式(4)、つまり平均ゼロ、二次モーメントが単位的であるという仮定からa=1,b=0となることがわかる。よってψ=Idであり、これはf=gを表す。

他の等号成立もf=gで従うので、示したいことは言えた。

Step 8 次に主張2を示す。(中心極限定理の証明と似ているが)f0(v)|v|4 dv<のときに示せば十分である(そうでないf0に関しては1|f|v|4|nのようなcut-off functionを掛け、単調収束定理を用いてnとして今から考える場合に帰着させればよい。)。このとき少々の議論によってsupt0f(t,v)|v|4<であることがいえる。これとCauchy-Schwartzの不等式から
limKlim supt0|v|Kf(t,v)|v|2 dv=0
を得る。また主張1から分かる有界性から(Banach-Alaogruの定理の要領で)、部分列に降りて、あるμ0P(X)が存在しf(tk)kwμ0である。故に定理3からW2(f(tk),M)kW2(μ0,M)が従う。一方、μ(t)を初期値をμ0とするようなBoltzmann方程式の解とすると、以前remarkした解の初期値に対する安定性[ DiPerna+,89 ]からf(tk+1)kwμ(1)であり、上と同様の議論からW2(f(tk+1),M)kW2(μ(1),M)が従う。完備性からW2(f(t),M)tW2(μ0,M)と収束先は一意に決まるから、結局W2(μ0,M)=W2(μ(1),M)である。今までの議論で1とした部分は任意のt[0,1]で成り立つから、W2(μ(t),M)tに依らず一定である。これとStep 7からμ=Mが得られ、証明が終わる。

お疲れ様でした。初等的な主張の積み重ねと解析学の基礎的な議論が両方登場するので勉強になりますね。

Boltzmann方程式を"線形化"する

前節でBoltzmann方程式がMaxwell分布に収束していくことがわかりました。しかしその証明はcollison operaterが(特異)積分作用素だったのでやや面倒でしたね。そこで苦労した意味があまりなくなってしまう気もしますが、以下では次のように"線形化"したQを考えましょう、すなわちBoltzmann方程式
ddtφ df(t)=φ dQ(f,f)
の右辺を取り替えて
(6)ddtφ df(t)=φ(v)φ(v)τ df
のようになっているものを考えます。ここでτは適当な係数です。vはBoltzmann方程式のときは衝突後の粒子の速度を表しました。しかし以下では衝突に限らない適当な粒子の運動則に従ってvからvが定まるとして、表現の幅を広げておきましょう。このようなある種の"線形化"は例えば[ Mathiaud+,16 ]等によってもう少し複雑なモデルが提案されていますが、今回参照している[ Herty+,20 ]では上記のように非常にシンプルなモデルを考えています。

このような線形化を施しても田中の定理同様にtrend to equilibriumの性質があることがわかっています[ Villani,06 ]。

ResNetの情報伝達をtrend to equilibriumとして理解する

さて、前節の内容をまとめて言い換えると、粒子の運動則が定まるとそれら粒子の分布の発展がBoltzmann方程式(6)が記述でき、そのBoltzmann方程式はtrend to equilibriumという漸近的な性質を満たすのでした。

ここで、粒子というのを素子ないしと読み替えると、Neural Networkと関連しそうな気がしてきます。Neural Network、特にResidual Neural Networkの概要については Alicia Solidさんの動画 がわかりやすいですが、一番簡単で基本的な構成は前の層からの隠れ変数xを入力として、出力xを重みW、バイアスb、そして活性化関数σを用いて
x=x+ϵσ(Wx+b)
で表されます。ここでxは位置を表すものではなくϵ>0は十分小さいパラメータとして便宜的に導入します。今回重みやバイアスはすべての層で共通としますが、実際は重みやバイアスは確率的勾配法によって学習されます。そこでさらに、上式を確率微分方程式とした
(7)x=x+ϵσ(Wx+b)+ϵK(x)η
をResNetのモデル化として採用することにします。ここでηは標準正規分布に従う確率変数で、K(x)を拡散効果を表す適当な関数とします。
 
そこで式(7)をResNetの粒子が従う運動則だとして、それら粒子が従う分布fが従う発展方程式をBoltzmann方程式(5)を用いておおらかに(細かいことを気にせず)求めてみます。すなわち"伊藤の公式"ないしEuler-丸山スキームを用いてφ(x)=φ(x)+ϵσ(Wx+b)xφ(x)+ϵK(x)ηxφ(x)+ϵ2K2(x)xxφ(x)とし、式(6)にτ=ϵとして代入してηに関しては期待値を取ることにすると、次のBoltzmann方程式が導出できます。
(8)ft=x(σ(Wx+b)f+x(12K2(x)f))

このような方程式はFokker-Planck方程式と呼ばれ、やはりtrend to equilibriumを有します。特に今回のResNet(8)の場合は、平衡解fが式(8)から計算でき

f(x)=CK2(x)exp(2σ(Wx+b)K2(x) dx)

となります。Cは正規化定数です。ここでさらに簡単のため、隠れ層の次元を1、活性化関数をReLU(もどき)σI(x)=xK(x)=1とすると、fはMaxwell分布
f(x)=Cexp(Wx22bx)
となります。

この結果は何を示唆しているのでしょうか。

equilibrium、つまり最終的なResNetの出力というのは、確率分布を学習したいようなResNetにとっては推定したい分布であって欲しいはずです。その推定したい分布に応じてパラメータW,bを学習していくわけですが、例えば標準正規分布を学習したい場合なら上の計算結果よりパラメータはW=1/2,b=0と学習するのがベストです。そこで、ResNetのパラメータをW=1/2,b=0とし、適当な入力(例えば一様分布)を入れて各層の様子を観察すると、次図のように推定したい分布に入力が近づいていくことがわかります。

推定したい分布をequilibriumとみてそこからパラメータを選択し、ResNetで推定を進めた様子 推定したい分布をequilibriumとみてそこからパラメータを選択し、ResNetで推定を進めた様子
図1:推定したい分布をequilibriumとみてそこからパラメータを選択し、ResNetで推定を進めた様子。[ Herty+,20 ]から引用。

つまり、適切に学習された(推定対象から適切にパラメータが定められた)ResNetの層方向への情報伝達は、運動則(8)に基づくBoltzmann方程式のtrend to equilibriumだと理解できる(再掲)ということになります!

終わりに

以上長くなったりアヤシイ議論があったりしましたが、なんとか最後まで書ききることができました。何かヤバイ箇所があればお気軽にコメントしてください。Boltzmann方程式についても深層学習についてもホントの専門家ではないのでたくさん不備があると思います。

2020年は本当にイレギュラーな年で、個人的には全くやりたいことができなかった嫌な年となってしまいましたが、最後の一ヶ月の一番はじめにこのようなoutputを残せたのは少し良かったなと思います。

航空も応物もこれからドンドンおもしろ記事が公開されていくと思いますし、最後の一ヶ月くらいは楽しんで終わりたいですね!!

それでは皆さん、よい2020年の12月を〜〜〜

投稿日:20201130
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

ShinKu
ShinKu
3
1228

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中
  1. 自己紹介と概要
  2. Wasserstein距離とその性質速習
  3. Boltzmann方程式とそのtrend to equilibrium〜田中の定理〜
  4. Boltzmann方程式を"線形化"する
  5. ResNetの情報伝達をtrend to equilibriumとして理解する
  6. 終わりに