このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

マルコフ核の随伴公式とフビニの定理

昨日の「拡張スタイルのジリィモナド」にて:

随伴公式は積分のフビニの定理です。ただし、マルコフ核が絡むと、単純なフビニの定理と少し違った形になります。単純なテンソル積測度ではなくて、依存テンソル積とでも呼ぶべき構成が必要です。が、この話題は別な機会にします。

こいうことを書いてよくあるパターンは、「別な機会」が2年後になったり、永久に書かなかったり(たち消え)。間をおかずに書いてしまうのが吉です。

マルコフ核の随伴公式は、フビニの定理に帰着されます。そのフビニの定理も、ある種の随伴公式だということを説明します。が、大ざっぱな説明です。

昨日の記事は読んでなくてもかまいませんが、次の記事に目を通しておくとよいかと思います。

内容:

概要

X, Y が可測空間で、μがX上の測度、ψがY上の非負実数値可測関数*1、f:X → Y が可測写像のとき、次の等式が成立します。

{\displaystyle
\int_{x\in X} f^\ast(\psi)(x) \,\mu(dx) = \int_{y\in Y} \psi(y) \,f_\ast(\mu)(dy)
}

ここで、

  • f*(ψ) は、非負実数値関数ψのfによる引き戻し: x∈X に対して、f*(ψ)(x) := ψ(f(x))
  • f*(μ) は、測度μのfによる前送り: Yの可測集合Bに対して、f*(μ)(B) := μ(f-1(B)) (f-1 は逆像)

X上の関数φの、測度μによる積分 \langle \mu \mid \phi \rangle_X と書くことにすると、上の等式は次のように書けます。


\langle \mu \mid f^\ast(\psi) \rangle_X = \langle f_\ast(\mu) \mid \psi \rangle_Y

積分  \langle \mbox{-} \mid \mbox{-}\rangle を測度と関数のペアリングと考えると、この等式は、f* と f* がペアリングに関して“随伴ペア”になっていることを主張しています。よって、このタイプの等式を随伴公式〈{adjunction | adjointness} {formula | equation}〉と呼ぶことにします*2

随伴公式に出てくる可測写像 f:X → Y in MeasMeasは可測空間と可測写像の圏)を、マルコフ核 F:X → Y in StocStoc は可測空間とマルコフ核の圏)に一般化することができます。


\langle \mu \mid F^\ast(\psi) \rangle_X = \langle F_\ast(\mu) \mid \psi \rangle_Y

マルコフ核の随伴公式を証明するには、フビニの定理が使われます。フビニの定理は、X×Y上の積分とX上の積分を結び付けるもので、次の形の随伴公式として書けます。


\langle \mu \mid Agg(F)(\psi) \rangle_X = \langle \mu\vec{\otimes}F \mid \psi \rangle_{X\times Y}

ここに出てくる Agg と \vec\otimes を、この記事内で説明します。

用語と記号の約束

これから扱う測度は一般の測度ではなくて確率測度です。非負実数値可測関数も値が区間 [0, 1] に入るものだけ考えることにします。[0, 1] に値を取る可測関数をファジー述語〈fuzzy predicate〉と呼びます。ジェイコブス達の定式化(「ベイズ確率論、ジェイコブス達の新しい風」参照)では、確率測度を“状態”、ファジー述語を単に“述語”と呼んで、状態と述語を双対的に扱います。ここでも同様な考え方をするので、混乱の心配がなければファジー述語を単に述語〈predicate〉と呼びます。

可測空間X上の確率測度の集合をP(X)とします。必要があれば、P(X)とシグマ集合代数ΣP(X)(「拡張スタイルのジリィモナド // 確率測度達の可測空間」参照)を一緒にして可測空間と考えます。可測空間X上の述語〈ファジー述語〉の集合をPred(X)とします。

可測空間と可測写像の圏をMeas、可測空間とマルコフ核の圏をStoc(またはStoch)と書きます。P(-) も Pred(-) もMeas上の関手に拡張できます -- f:X → Y in Meas に対する P(f) は確率測度の前送り、Pred(f) は述語の引き戻しとします。ジェイコブスが注意しているように、関手Pと関手Predは性格が異なるものです。

  • Pは、MeasSet という共変関手である。
  • Pを、MeasMeas という自己共変関手に仕立てることができる。これは、ジリィモナドの台関手となる。
  • Predは、MeasSet という反変関手である。
  • Predの値を単なる集合ではなくて代数構造にすることがある。例えば、P(X)を効果代数〈effect algebra〉とみなせば、Predは、MeasEffAlg という反変関手になる。

P(X)×Pred(X) 上に積分によるペアリング〈pairing〉が存在します。


\langle \mbox{-}\mid \mbox{-}\rangle_X:P(X)\times Pred(X) \to [0, 1] \:\mbox{ in }{\bf Set}\\
\langle \mu \mid p \rangle_X := {\displaystyle \int_{x\in X} p(x)\,\mu(dx)}

積分によるペアリングを、真偽評価であると論理的に解釈するときは、次の記法を使います。

 (\mu \models_X p) := \langle \mu \mid p  \rangle_X

もう少し積分らしい書き方をしたいときは:


\int_X \mu [p] = (\mu \models_X p) = \langle \mu \mid p  \rangle_X

このペアリングに関する随伴ペア〈adjoint pair〉とは*3、j:P(X) → P(Y), k:Pred(Y) → Pred(X) in Set という写像のペア j, k で次を満たすものです。

 \forall \mu \in P(X), q \in Pred(Y).\\
\:\:   \langle \mu \mid k(q) \rangle_X = \langle j(\mu) \mid q \rangle_Y \:\mbox{ on }[0, 1]

f:X → Y in Meas から導かれる P(f):P(X) → P(Y), Pred(f):Pred(Y) → Pred(X) は随伴ペアになります。

 \forall \mu \in P(X), q \in Pred(Y).\\
\:\:   \langle \mu \mid Pred(f)(q) \rangle_X = \langle P(f)(\mu) \mid q \rangle_Y \:\mbox{ on }[0, 1]

P(f) = f*, Pred(f) = f* と略記する習慣があるので:

 \forall \mu \in P(X), q \in Pred(Y).\\
\:\:   \langle \mu \mid f^\ast(q) \rangle_X = \langle f_\ast(\mu) \mid q \rangle_Y \:\mbox{ on }[0, 1]

これは、前節冒頭の可測写像の随伴公式を、確率測度と述語に関して述べたものです。

圏として、集合圏Set、可測空間と可測写像の圏Meas、可測空間とマルコフ核の圏Stocが登場します。これらの圏のホムセットを、次のようにも書きます。

  • Map(A, B) := Set(A, B)
  • MMap(X, Y) := Meas(X, Y) (MMap = MeasurableMap)
  • MKer(X, Y) := Stoc(X, Y) (MKer = MarkovKernel)

忘却関手と埋め込み関手による同一視をすれば、次の包含関係があるとみなせます。

  • MMap(X, Y) ⊆ Map(X, Y)
  • MKer(X, Y) ⊆ MMap(X, P(Y)) ⊆ Map(X, P(Y))

確率測度とマルコフ核の依存テンソル

2つの確率測度 μ∈P(X) と ν∈P(Y) に対して、これらのテンソル積を定義できます。

  • A∈P(X), B∈P(Y) に対して、(μ\otimesν)(A×B) := μ(A)ν(B)

一般的な可測集合 S∈Σ(X×Y) に対する (μ\otimesν)(S) は、上の定義を拡張して定義します。

2つの確率測度のテンソル積をとる操作は、次のような写像となります。

  • (-\otimes-):P(X)×P(Y) → P(X×Y) in Set

必要なら、「in Set」を「in Meas」になるように定義することもできます(今は使わない)。

次に、確率測度とマルコフ核のテンソル積を定義しましょう。μ∈P(X) と F∈MKer(X, Y) に対して、次の定義をします。

  • μ∈P(X), F∈MKer(X, Y) に対して、(μ\vec\otimesF)(A×B) :=  \int_{x\in A}F(x)(B)\,\mu(dx)

確率測度どうしのテンソル積と同様に、S∈Σ(X×Y) に対する (μ\vec\otimesF)(S) まで拡張できます。確率測度どうしのテンソル積 μ\otimesν では、μと組み合わせるY上の測度は点 x∈X に依存しません(常にνです)が、μ\vec\otimesF では x ごとに F(x) が違うかも知れません。この事情から、μ\vec\otimesF をμとFの依存テンソル〈dependent tensor product〉と呼ぶことにします。

確率測度とマルコフ核の依存テンソル積をとる操作は、次のような写像となります。

  • (-\vec\otimes-):P(X)×MKer(X, Y) → P(X×Y) in Set

二変数の (-\vec\otimes-) を左変数でカリー化する(左肩の'∩'で示す)と、次の形になることは心に留めておいてください。

  • (-\vec\otimes-):MKer(X, Y) → Map(P(X), P(X×Y)) in Set

マルコフ核からの集計子

F:X → Y in Stoc (あるいは F∈MKer(X, Y))をマルコフ核として、Fから Agg(F):Pred(X×Y) → Pred(X) in Set という写像を作ります。Agg(F) の定義は次のとおりです。

  • \mbox{For }s\in P(X\times Y),\: {\displaystyle Agg(F)(s) := \lambda\, x\in X.\int_{y \in Y} s(x, y) \,F(x)(dy) }

Agg(F)(s) は、X×Y上の述語を、点xごとにY方向に集計〈aggregation〉した関数です。“集計”とは、確率測度F(x)を使ったY方向への積分です。Agg(F)を、Fから作られた集計子〈aggregator〉と呼びましょう。

集計子により集計〈aggregate〉する操作は、同時確率分布(直積可測空間上の確率測度)の周辺化〈marginalize〉と似てますが、集計する相手は確率測度ではなくて述語(実数値関数)です。

マルコフ核から集計子を作る操作は、次のような写像となります。

  • Agg:MKer(X, Y) → Map(Pred(X×Y), Pred(X)) in Set

Aggは、マルコフ核から集計子を作り出すコンビネータです(「コンビネータ」という言葉については、「圏論的コンストラクタと圏論的オペレータ: 関手性・自然性の呪縛からの脱却」を参照)。

依存テンソル積と集計子コンビネータの随伴ペア

依存テンソル積(の左カリー化)と集計子コンビネータのプロファイルをもう一度並べて書いてみます。

  • Agg:MKer(X, Y) → Map(Pred(X×Y), Pred(X)) in Set
  • (-\vec\otimes-):MKer(X, Y) → Map(P(X), P(X×Y)) in Set

F∈MKer(X, Y) を取ったとき、

  • Agg(F):Pred(X×Y) → Pred(X) in Set
  • (-\vec\otimesF):P(X) → P(X×Y) in Set

となります。

「Agg(F) と (-\vec\otimesF) が随伴ペアになる」という命題を(真偽はともかくとして)書き下してみると:

 \forall \mu \in P(X), s \in Pred(X\times Y).\\
\:\:   \langle \mu \mid Agg(F)(s) \rangle_X = \langle \mu \vec\otimes F \mid s \rangle_{X\times Y} \:\mbox{ on }[0, 1]

実際にこの命題は成立し、内容的にはフビニの定理です(次節で説明)。

マルコフ核の随伴公式は、関数の随伴公式とフビニの随伴公式(フビニの定理の随伴公式バージョン)を組み合わせると出てきます。第二射影 π2:X×Y → Y は関数〈可測関数〉なので、関数の随伴公式が成立します。

 \forall \omega \in P(X\times Y), q \in Pred(Y).\\
\:\:   \langle \omega \mid (\pi^2)^\ast(q) \rangle_{X\times Y} = \langle (\pi^2)_\ast(\omega) \mid q \rangle_Y \:\mbox{ on }[0, 1]

 \omega = \mu\vec\otimes F, \; s = (\pi^2)^\ast(q) として2つの随伴公式を書くと:

  • \langle \mu \mid Agg(F)( (\pi^2)^\ast(q) ) \rangle_X = \langle \mu \vec\otimes F \mid (\pi^2)^\ast(q) \rangle_{X\times Y}
  •  \langle \mu \vec\otimes F \mid (\pi^2)^\ast(q) \rangle_{X\times Y} = \langle (\pi^2)_\ast(\mu \vec\otimes F) \mid q \rangle_Y

これより、次の等式が得られます。

  •  \langle \mu \mid Agg(F)( (\pi^2)^\ast(q) ) \rangle_X = \langle (\pi^2)_\ast(\mu \vec\otimes F) \mid q \rangle_Y

この等式はマルコフ核の随伴公式です。それを確認するには、次の等式を示せばいいですね。

  •  Agg(F)( (\pi^2)^\ast(q) )  = F^\ast(q)
  •  (\pi^2)_\ast(\mu \vec\otimes F) = F_\ast(\mu)

これらは、定義に従って計算すれば出てきます。

フビニの定理

随伴公式  \langle \mu \mid Agg(F)(s) \rangle_X = \langle \mu \vec\otimes F \mid s \rangle_{X\times Y} が、一見フビニの定理に見えないかも知れませんが、それは書き方の問題です。見慣れた書き方に翻訳すれば、見慣れたフビニの定理になります。

マルコフ核Fが F(x) = ν と定数(単一の確率測度)で与えられるときを考えましょう。事情が単純になり、「繰り返し積分 = 重積分」の形になります。

まず、Agg(F)(s) の定義は次のようでした。

  •  Agg(F)(s) = \lambda\, x\in X.\int_{y\in Y}s(x, y) \,F(x)(dy)

F(x) = ν としたので、

  •  Agg(F)(s) = \lambda\, x\in X.\int_{y\in Y}s(x, y) \,\nu(dy)

これを代入して、随伴公式の左辺を展開します。


\:\:\:\: \langle \mu \mid Agg(F)(s) \rangle_X \\
= \langle \mu \mid \lambda\, x\in X.\int_{y\in Y}s(x, y) \,\nu(dy) \rangle_X \\
= \int_{X} \mu \left[ \lambda\, x\in X.\int_{y\in Y}s(x, y) \,\nu(dy) \right] \\
= \int_{x\in X} \left( \int_{y\in Y}s(x, y) \,\nu(dy) \right)\mu(dx) \\

これは、二変数関数sの繰り返し積分です。

次に、随伴公式の右辺。 \mu \vec\otimes F = \mu \otimes \nu となるので、


\:\:\:\: \langle \mu \vec\otimes F \mid s \rangle_{X\times Y} \\
= \langle \mu \otimes \nu \mid s \rangle_{X\times Y} \\
= \int_{(x, y)\in X\times Y}s(x, y) \,(\mu \otimes \nu)(dx, dy)

これは重積分です。

結局、随伴公式の言っていることは、繰り返し積分が重積分に等しいということです。


\int_{x\in X} \left( \int_{y\in Y}s(x, y) \,\nu(dy) \right)\mu(dx) 
= \int_{(x, y)\in X\times Y}s(x, y) \,(\mu \otimes \nu)(dx, dy)

F(x) = ν のときは、X方向の積分とY方向の積分が独立で、X×Y上の積分は独立なテンソル積で与えられます。一般のマルコフ核Fを使った場合の公式が  \langle \mu \mid Agg(F)(s) \rangle_X = \langle \mu \vec\otimes F \mid s \rangle_{X\times Y} です。

*1:非負実数値の条件をはずすと話がめんどうになるので、実数値やベクトル値の関数は考えません。

*2:adjunction formula は代数幾何の用語で、adjoint equation は微分方程式論で出てくるようです。ここでの随伴公式は、2つの写像がペアリングに関して互いに随伴であることを示す等式のことです。

*3:関手の随伴ペアとまったく無関係とも言えませんが、用語のコンフリクト〈衝突〉だと思って気にしないほうがいいです。