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

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

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

参照用 記事

ワイヤーベンディングと条件化オペレーター

ストリング図と相性が良いテンソル計算 2/2」において:

マルコフ行列/マルコフテンソルのときは、確率に特有なワイヤーベンディング・オペレーターが登場します。それは条件化〈conditionalization〉オペレーターです。

条件化オペレーターもワイヤーベンディングとして描かれますが、行列・テンソルのプロファイルを変えるだけのワイヤーベンディング・オペレーターと条件化オペレーターは別物です。

...[snp]...

別物に同じ記号を流用するのは混乱の弊害がありますが、構造的類似性を示唆するというメリットもあります。

混乱を招くというデメリット、構造的類似性を示唆するというメリットに折り合いを付ける方法を考えましょう。$`\newcommand{\Idx}[2]{ {\scriptsize \begin{pmatrix} #1 \\ \downarrow\\ #2\end{pmatrix} } }
\newcommand{\I}{\mathrm{I}}
\require{color}
\newcommand{\C}{\mathop{;}} % composition
\newcommand{\Keyword}[1]{ \textcolor{green}{\text{#1}} }%
\newcommand{\For}{\Keyword{For } }%
\newcommand{\Define}{\Keyword{Define } }%
\newcommand{\Where}{\Keyword{Where } }%
%`$

単純なワイヤーベンディング・オペレーターとマルコフテンソルの条件化オペレーターが一緒に出てくるときは、使う記号を別にするしかありません。lower left bending を次のように定義します。

$`\For Q : () \to (X, Y)\\
\For x\in X, y\in Y\\
\Define {_\vee Q}\Idx{x}{y} := Q\Idx{*}{x, y}\\
\Define {_\cup Q} := \mathrm{Norm}({_\vee Q})`$

$`{_\vee Q}`$ の場合、ワイヤーのベンド〈bend | 曲がり目〉部分にはテンソルが居ます。それは以下のテンソル(名前は象形文字)です。

$`\quad \vee_X : (X, X) \to ()\\
\Where\\
\quad \vee_X\Idx{x, x'}{*} = \delta(x, x')`$

$`\vee_X `$ とペアになるテンソルは $`\wedge_X`$ で次のように定義します。

$`\quad \wedge_X : () \to (X, X)\\
\Where\\
\quad \wedge_X\Idx{*}{x, x'} = \delta(x, x')`$

次のニョロニョロ関係式〈snake {relation | equation | identity} 〉が成立します。

$`\quad (\wedge_X \otimes \I_X)\C (\I_X \otimes \vee_X) = \I_X\\
\quad (\I_X \otimes \wedge_X )\C (\vee_X \otimes \I_X) = \I_X
`$

*1

ニョロニョロ関係式の証明は、クロネッカーのデルタの練習問題として適切です。

$`\vee_X`$ を使って $`{_\vee Q}`$ を定義すれば:

$`\For Q : () \to (X, Y)\\
\Define {_\vee Q} := (\I_X \otimes Q)\C (\vee_X \otimes \I_Y)
`$

条件化オペレーターの場合は、$`\vee_X`$ のような曲がりを表すテンソルは存在しません。しかし、$`\wedge_X`$ に近いテンソルは存在します。それは、$`P:() \to X`$ に対して次のように定義されます。

$`\For P:() \to (X)\\
\Define \overset{\frown}{P} := P_\Delta = P\C \Delta_X \: :() \to (X, X)
`$

$`\overset{\frown}{P}`$ も実は象形文字で、マルコフテンソル(確率的テンソル)$`F:X \to Y`$ の $`P`$ による同時化を次のように書きます。

$`\For P:() \to (X)\\
\For F:(X) \to (Y)\\
\Define {^{P\cap}F} := \overset{\frown}{P}\C ( \I_X \otimes F) =
(P\C \Delta_X)\C (\I_X \otimes F)
`$

そして、次のように描きます(この描き方が象形文字 $`\overset{\frown}{P}`$ の由来)。

ワイヤーのベンド部分に横線を引いています。

さて、この記事で言いたいことですが、条件化オペレーターのベンドにも横線を引いたらいいだろう、ということです。与えられた同時分布 $`Q:() \to (X,Y)`$ に対して、

$`\Define P := Q\C (\I_X \otimes\,!_X)`$

とします。このとき、ニョロニョロ関係式に少し類似した次のワイヤーストレッチング公式が成立します。

ストリング図計算のコツと小技」では同じことを次の絵にしています。

フリッツ〈Tobias Fritz〉の"A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics"にあるストリング図は、上下が逆で使っている記号・記法も少し違います。

でも、同じ内容を主張しています。