2024年6月25日火曜日

STOC1日目の感想 (LLMの話とbest paper sessionのまとめ)

せっかくSTOCに参加しているので日記を書こうと思いたち, 勢いに任せて筆を進めています. 2日目以降は筆が乗らないかもしれません.

今回のSTOCは最初のワークショップではLLMなどのAI分野においてアルゴリズムの理論研究がどのように貢献できるのかという話をしていました. 以下に続く文章はそのWSを聞いて私が解釈したものですので, 内容の正確性は保証しません. あくまでも私が解釈したものなので, AIに関して何かを述べる際はこの記事を情報源にはしないでください.

例えば文章が途中まで与えられた「次の単語は何か?」を学習する際, まず単語ごとに区切りそれぞれの単語を高次元ベクトルに埋め込み (多分Word2Vecみたいな話), 次に出てくる単語の条件付き分布を推定するということをします. この条件付き分布は何らかの分布に従うと仮定しており, 通常はある高次元のパラメータ$\theta$を持ちます (例えば正規分布は平均と分散で二つのパラメータをもつ). 深層学習とはこの「何らかの分布」のテンプレートの一例にすぎず, そのテンプレの中で尤度関数を最適化するという作業に他なりません. 具体的には線形作用と成分毎の非線形作用を交互に組み合わせる分布を考えており, この線形作用の重みがパラメータに対応します. chatGPTとかをみるとあたかも魔法のようなことをしているように見えますが, 実際は次の単語の条件付き分布がある特定のテンプレに従うと仮定し, 与えられたデータセットに最も近いテンプレを見つけるにすぎません.

教師あり学習だと点とそのラベルの組があらかじめデータセットとして与えられ, 未知の点が当てられたときにその点のラベルは何かを推測するということを考えます. この問題点は高精度な推測をするためには多くのデータセットが必要になるという点です. しかしながら, 膨大な点とそれに対応するラベルの組を得るという作業は大変です.

ところが「次の単語は何か?」という問題の場合はインターネット上のデータ (wikiの記事など) から文を持ってくれば膨大なデータセットを容易に得ることができるので, 前段落の問題点は解消されます. あとはこの膨大なデータセットを用いていかに効率よく最適なパラメータを得るかというアルゴリズムのタスクが勝負になります. ここではスーパーコンピュータなどを用いて大規模な並列計算を行うことも視野に入れて「並列化しやすい」アルゴリズムを設計するみたいなことも視野に入れます.

ワークショップではdiffusion modelについての話も出ました. なんとなく「diffusion model」と聞くとたいそうに聞こえますが端的に言えば空間上のただのランダムウォークだと私は思っています. 例えば「子犬と遊ぶ子供」という文からそれに対応する画像を生成するタスクを考えてみましょう. このとき, 任意の画像全体の空間$\mathbb{R}^N$を考え, その上で点$x \in \mathbb{R}^N$に対し小さなランダムなノイズを加えるという操作を繰り返しましょう. $t$回繰り返して得られるベクトルを$x_t$とすると, 十分大きな$t$に対して$x_t$は標準正規分布$N(0,I)$に近いです. diffusion modelとはノイズを除去する過程のモデルであり, $x_t$が与えられたときの$x_{t-1}$の条件付き確率が平均$\mu_t(x_t,t)$, 分散$\sigma_t(x_t,t)$の正規分布に従うと仮定してこのパラメータを最適化するという作業に他なりません. このようにすることで「子犬と遊ぶ子供」という文から実際にそれを表現する画像をサンプリングすることができます. データセットは「子犬と遊ぶ子供」の画像からなります. このデータセットはまずネットサーフィングして画像と脚注の組を得ます. 次に脚注の文章を高次元に埋め込みます. この埋め込みは意味が似てる二つの文章は埋め込んだ後も何らかの意味で距離が近いものになっているとします. すると「子犬と遊ぶ子供」に対応する点に近い点に対応する脚注を持つ画像を抽出することで大量のデータセットを用意することができます (この辺は少し私の理解が曖昧なので不正確かもしれません).

ワークショップの二人目の発表はAtri Rudraでした. 彼はEssential Coding Theoryの著者の一人なので私の中では誤り訂正符号をやってる人というイメージだったので, このような分野で研究をされているというのは意外でした. 今日「Transformer」と呼ばれる技術を算術回路に落とし込み, 効率的な算術回路を提案することでより学習を効率的に行うという旨の話でした.

Transformerでは, まず与えられた文章を$N$個の単語に分解し, それぞれの単語を$d$次元ベクトルに埋め込みます. こうして得られた$N$個のベクトルを並べて得られる行列を$X \in \mathbb{R}^{N \times d}$ とします. 深層学習では各レイヤーで, $X$を$Nd$次元のベクトルとみなして$X_t \leftarrow \sigma (W_t X_{t-1})$という更新式に基づいて$X_T$を出力するときの行列$W_t$を最適化で求めるわけですが, TransformerのAttentionと呼ばれるプロセスでは
\[
X_t \leftarrow \sigma (Q_tX_{t-1}X_{t-1}^{\top} K_t)
\]
という更新式 (ここで$Q_t,K_t$は行列) を繰り返します (これが何でうまくいくかは分かりません). この$Q_t$と$K_t$がパラメータになっており, 学習ではこのパラメータを最適化します. あまりちゃんとわかっていませんがここでの行列がある種の対称性を持っていれば効率的に更新できるみたいな感じの話だと思います. ただしここでは行列への要請として対称性だけではなく, (勾配法の適用を念頭に)パラメータでの微分可能性も要請されていました (行列かけるだけだったら常に微分可能なんじゃないの?と思ったけどよくわからなかった). この辺の話では面白いことにSETH-hardnessの論文があったりするようです.

LLMのワークショップの後はbest paper sessionがありました. 今回のSTOCは3件のbest paperがあり, それぞれ

  • Single-Source Shortest Paths with Negative Real Weights in $\tilde{O}(mn^{8/9})$ Time, Jeremy Fineman.
  • Near Optimal Alphabet-Soundness Tradeoff PCPs, Dor Minzer and Kai Zhe Zheng.
  • Parameterized Inapproximability Hypothesis under Exponential Time Hypothesis, Venkatesan Guruswami, Bingkai Lin, Xuandi Ren, Yican Sun, Kewen Wu.
でした.

一つ目の論文は負辺持ちグラフ上の単一始点最短経路問題に対してBellman-Fordより速いアルゴリズムを提案するというものです. この問題は2022年のFOCSの論文で$\tilde{O}(m\cdot \mathrm{poly}\log W)$時間で解くアルゴリズム ($W$は最大絶対値重み) が提案されていましたが, このアルゴリズムは反復回数が$\mathrm{poly}\log W$に依存するためいわゆる「弱多項式」時間アルゴリズムです. 一方でこちらの論文は一反復の計算に$\tilde{O}(m n^{2/9})$時間かかる操作を$O(n^{2/3})$回繰り返すというものであり, いわゆる「強多項式」時間アルゴリズムです.

二つ目の論文はPCP定理のアルファベットサイズとsoundnessのトレードオフに関する論文です. PCP定理についてはこちらの記事で説明をしていますが, 「SATは確率的検証可能できる」ことを主張する定理です. SAT (より一般にクラスNPの問題) は, 入力がYesインスタンスのときにYesたりうる証拠たりうる文字列 (例えばSATなら充足割り当て) が存在しそれをみたときは受理し, Noインスタンスのときはどんな文字列が与えられても拒否する検証者(verifier)が存在します. 確率的検証とは証拠として与えられた文字列のうちランダムに選んだ$q=O(1)$個だけをみて受理/拒否を判定する検証を指します. 検証者の受理確率について, 入力がYesインスタンスならば確率$\approx 1$で受理し, Noインスタンスに対しては確率$\le \delta$で受理するものを考えます. ここのパラメータ$\delta$をsoundnessといいます. soundnessパラメータ$\delta$は小さければ小さいほどよいです.
PCPはそのアルファベットサイズ$|\Sigma|$を大きくすることによってクエリ数$q$を保ったままsoundnessを小さくしていく (Razのpararrel repetition) ことができますが, $|\Sigma|$と$\delta$の間のほぼ最適なトレードオフを見つけたというのが今回の論文の主張のようです.

三つ目の論文もPCP定理の改善の話で, パラメタ化計算量の文脈におけるPCP定理の話でした. PCP定理ではNPのwitnessを「符号化」して確率的検証できる証明に変換するのですが, この「符号化」で追加する冗長性をいかに短くできるかという文脈を考えます. パラメタ化計算量の文脈では考える入力のクラスを制限してより効率的なアルゴリズムを得るという研究をしますが, 一方でその困難性についてもいろいろわかってきており, 「NP困難性」に対応する概念として「W[1]困難性」という概念があります. 一般にW[1]困難な問題はFPT時間では解けないだろうと予想されており, 代表的な問題として$k$-クリーク問題があります. そしてW[1]困難な問題に対しても近似アルゴリズムを設計したり何らかの仮定の下での近似不可能性を示す研究もあります. この近似不可能性の文脈でよく出てくるのが PIH (parameterized inapproximatability hypothesis) という予想です. これはMAXSATのギャップ問題のようなパラメタ化問題がFPT時間で解けないという予想です. 今回の論文は指数時間仮説(ETH)の下でPIHが成り立つことを示しており, パラメタ化計算量における「PCP定理」を証明したという論文のようです. 普通のPCP定理の証明を考えるとNP証明を「符号化」するということを考えますが, この符号化によって対応するCSPのインスタンスのパラメタがめちゃくちゃになってしまうのが難しいポイントだと私は解釈しています. 代わりにW[1]困難な問題 vector CSPというものを考えるようです. 一般にNP証明からPCPに符号化する際のオーバーヘッドが定数倍で済むならば$\mathsf{ETH} \Rightarrow \mathsf{Gap}\text{-}\mathsf{ETH}\Rightarrow \mathsf{PIH}$が成り立つと思うのですが, このholy grailにはまだまだ遠いようです.

こうしてみるとbest paperのうち2/3はPCP定理なので今回はSymposium on Theory of pCp theorem (STOC) なのかもしれません.

best paper sessionの後はTCS4Allのイベントがありました. 本来ならばLuca Trevisanが話をする予定だったのですが残念なことに先週亡くなってしまったため, Pravesh KothariがLucaの作成したスライドに基づいてスペクトルグラフ理論の話をしていました. ほとんど知っている内容だったのですが改めて聞くとやはりLucaの偉大さが感じられる非常に素晴らしい内容でした.

coffee breakや懇親会ではいろんな人と話をしましたが, Yuhao Liとの雑談でTFNPにおけるPCP定理の話が興味深かったです (重要な未解決問題らしい). また, 私は加法的組合せ論に基づく平均時から最悪時への帰着が好きなので, その研究グループの一人のIgor Shinkarと話ができたのがとても良かったです. 大阪さんから聞いた遷移問題のPCPの話も面白かったです.

2024年6月20日木曜日

Luca Trevisanについて

Luca Trevisanが癌で52歳の若さで亡くなったという衝撃的なニュースが飛び込んできました.


直接の面識は全くないのですが, 彼の多くの論文や結果, それにまつわる深い洞察は私の数学に重要な影響を与えており, 来週のSTOCでのワークショップでの彼の講演を直接見れるのをものすごく楽しみにしていただけに非常に残念に思います. STOCのワークショップでのスライドは準備されていたとのことですので, まさに「生涯現役」の研究者であるといえるでしょう. 理論計算機科学は世界的に非常に重要なリーダーの一人を喪失してしまいました.

彼の有名なブログ in theory は計算量理論, 加法的組合せ論, エクスパンダーグラフなど幅広い理論の最近の動向や手法を概説してくれるとても素晴らしいものであり, Terrence TaoのWhat's new や Boaz Barak の Windows On Theory などと並んで私のブログのスタイルに大きな影響を与えた存在でです.

計算量理論では, 例えばこちらのページのランダム抽出器の節で紹介した[Trevisan, 2001]や, こちらのページで紹介しているHardness vs. Randomnessに対して誤り訂正符号のlocal list-decodingに基づくアプローチを提案した[Sudan, Trevisan, Vadhan, 2001]が非常に有名です (もちろん, これに限らずもっと色々ありますが). また, Bogdanovと一緒に平均時計算量の非常に有名な教科書も執筆しています.

他にもスペクトルグラフ理論の文脈でよく知られるhigher-order Cheeger inequality (普通のCheeger不等式はグラフの頂点集合を二分割したときのカット辺の本数に関する不等式だが, higher-orderではグラフを$k$分割したときのカット辺の本数に着目する) の論文[Lee, Gharan, Trevisan, 2014]も有名です. この話はTrevisanによる解説記事があります.

また, 加法的組合せ論とその理論計算機科学への応用にまつわる様々な解説記事や講義ノート

も出しており, 私はこれらから加法的組合せ論の多くを学びました.

最近ではBecchettiらの研究グループでグラフ上の合意ダイナミクスと呼ばれるマルコフ連鎖やそれに基づくコミュニティ検出についての研究も精力的に行っており, 私の研究分野に非常に近い論文

を出しており, その多くがSODAなどのトップ会議に採択されています.

私はTrevisanと直接交流したことはないのですが, 理論計算機科学の幅広い文脈でいつも見てよく資料で勉強させていただいた先生が若くして亡くなられたという事実に深い悲しみを覚え哀悼の意を捧げたいと思います.


2024年5月31日金曜日

高次元エクスパンダーの集中講義をしました

東北大数学科で高次元エクスパンダーに関する集中講義を行いました。講義資料は私のページから誰でも無料で見れるようになっています。集中講義ではランダムウォークを定義し、エクスパンダーグラフを定義しAlon-Boppanaの定理の証明概要を与えてラマヌジャングラフの話だけをして、単体複体の定義とそのエクスパンダー性を定義して、最後にマトロイドを定義し基交換ウォークの混交性を証明しました。高次元エクスパンダーに関する日本語のちゃんとした解説資料は自分の知る限り全くといって良いほどないので、この概念を日本に輸入する上で非常に大きな意義のある講義/講義資料になっていると自負しています。嬉しいことに資料も非常に多くの人に好評をいただけました。

そもそも集中講義を受講したことがなくどのようなものかすら全く知らなかったのですが、私が行った集中講義ではまず最初に談話会と呼ばれる1時間程度の講演を行い、その翌日から4日間、15時から19時くらいまで黒板を使って定理の証明とかキモチを語るというものでした。実際やってみるまでどのような雰囲気かわからなかったのでとりあえず全力で講義資料を準備したおかげで講義そのものは全体的にスムーズに進み、マトロイドの基交換ウォークの混交性の証明までちゃんと話せたのは非常に良かったです。ちなみに談話会では自己紹介的な側面もあるらしく、どんな内容でも良いもののある程度自分の研究トピックに絡んだものであるのが良さそうです。聴衆はピュアマスの人が多いでしょうから、やはりピュアマスのTCSにおける応用の話をするとものすごく食いつきが良かったです。

ピュアマスの方々は黒板での議論を好むというイメージは昔からなんとなくあったものの、予想以上でした。最適化理論のサマースクールという位置付けで毎年夏に行われる組合せ最適化セミナーでは3日間、各日にそれぞれ1名の講演者が計3時間の講義をスライドを用いて行うというものがあるのですが、私の集中講義は毎日4時間を4日間の計16時間あったわけですので時間の単純計算で組合せ最適化セミナーの講師を5回務めたことになったわけです(講義資料の準備も考えるともっとありそう)。

一方でスライドでの発表と違って聴衆の咀嚼のスピードに合わせてこちらの講義のスピードも調節できるというのが黒板発表の大きなメリットであるように感じました。もちろん、これは聴衆が忍耐強く頑張って咀嚼してくれるというのが前提の話になりますが。

聴衆はそれなりに多くの方に来ていただけました。何人かの学生にも積極的に核心をついた質問やご指摘をいただき、自分の講義資料のどの部分が良くないかなどを見直す良いきっかけになりました。

数学科で集中講義をするという機会はなかなかないかもしれませんが、やはり応用を見据えていくにつれこのような機会は将来的に他の方も経験するようなことがあるかもしれません。(当たり前なことも含まれていますが)板書で講義をする機会のある人のためにいくつか助言を残しておくと

  • 講義資料はちゃんと作った方がよい(特に、各日にどこからどこまで話すかは事前に決めるべき)
  • 私の資料の各章はある程度具体例をスキップしても話すと1日4時間くらいかかります。これが目安になると思います
  • やはり細かい証明を与える前にまずその概要とか道筋を話すと聴衆の食いつきが良い
  • 一方で直感的な説明や式変形だけを資料に書いてしまうと、厳密に式を追いたい人は満足しないので、資料には書いておいた方が良い
  • 既存結果は誰がいつ発表したものかはちゃんと把握しておいた方が良い (誰が証明したのか?と聞かれることもある)
  • 基本的に白と黄色で説明するのが多分良い (教室依存だけど赤とかだと場所によっては見づらくなりうる)
などでしょうか。おかげさまで講義終了後に飲んだビールと食べた牛タンはめちゃくちゃ美味しかったです。ありがとうございました。



2024年4月9日火曜日

凸共役と集中不等式

 凸解析のツールの一つとして凸共役という概念があります. $I\subseteq \mathbb{R}$上で定義された実関数$f$の凸共役とは
\[
f^*(a) = \sup_{x\in I}\{ax - f(x)\}
\]
で定義されます. 通常は$I=\mathbb{R}$や$I=(0,\infty)$を考えます. ここでは凸解析の理論には踏み込まず, この概念が確率集中不等式の文脈でどのように登場するかを説明します.

確率集中不等式とは, 実確率変数$X$がある点 (通常は期待値$\mathbb{E} X$) から離れる確率がどれくらい小さくなるかを評価する不等式です. (本記事では基本的に確率変数は全て期待値や分散が存在するものを考えます). 次の不等式を使います:

補題1 (マルコフの不等式).
$X$を非負確率変数と任意の正の数$z>0$に対し, $\Pr[X \ge z] \le \frac{\mathbb{E}X}{z}$.

本記事の目標は$\Pr[X \ge \mathbb{E} X  + a]$を上から抑えることです. 簡単な式変形により, 任意の$\lambda>0$に対し
\begin{align*}
\Pr[X \ge \mathbb{E} X + a] &= \Pr\left[ \mathrm{e}^{\lambda (X - \mathbb{E} X)} \ge \mathrm{e}^{\lambda a}\right] \\
&\le \mathrm{e}^{-\lambda a} \cdot \mathbb{E} \mathrm{e}^{\lambda ( X - \mathbb{E} X)  }
\end{align*}
を得ます (一つ目の不等式では$\lambda>0$を利用し, 二つ目の不等式でマルコフの不等式を用いた). ここで, $\lambda>0$に対し$\psi_X(\lambda):=\log\mathbb{E}\mathrm{e}^{\lambda (X - \mathbb{E} X)}$とおくと,
\begin{align*}
\log \Pr[X \ge \mathbb{E} X + a ] \le - (\lambda a - \psi_X(\lambda)).
\end{align*}
この不等号は任意の$\lambda > 0$で成り立つので, 最適な$\lambda>0$を選ぶと
\begin{align*}
\log \Pr[X \ge \mathbb{E} X + a ] \le - \sup_{\lambda > 0}\{\lambda a - \psi_X(\lambda)\}
\end{align*}
となり, 右辺はまさに凸共役 $\psi_X^*(a)$になっています. 従って以下を得ます:

命題2.
確率変数$X$に対し, そのlogMGFを$\psi_X$とする. このとき, $\Pr[X\ge \mathbb{E} X + a] \le \mathrm{e}^{ - \psi_X^*(a)}$.

以上より, 凸共役$\psi_X^*(a)$の下界が得られればそこから集中不等式を導出できます. なお, $\lambda \le 0$に対しても$\psi_X(\lambda)$を定義することは可能でそこからlower tailを得ることができます. また, $\psi_X$は凸関数であることが知られており (ヘルダーの不等式を用いると示せる), 凸共役の性質より凸共役を2回とると元に戻ります.

独立な確率変数$X_1,\dots,X_n$に対して$X=X_1+\dots+X_n$と表せたとします. このとき
\[
\mathbb{E}\mathrm{e}^{\lambda X} = \prod_{i=1}^n \mathbb{E}\mathrm{e}^{\lambda X_i}
\]
となることから$\psi_X(\lambda) = \sum_{i=1}^n \psi_{X_i}(\lambda)$を得ます.


例1. 劣ガウシアン性を持つ確率変数


劣ガウシアン性とは裾分布が正規分布のそれ以下のオーダーで減衰していく性質を意味し, 確率集中不等式の文脈では非常に重要なクラスをなします.

定義3 (劣ガウシアン分布).
パラメータ$v>0$に対し, $X$が$v$-sub-gaussianであるとは, 任意の$\lambda\in \mathbb{R}$に対して$\psi_X(\lambda) \le \frac{v\lambda^2}{2}$であることをいう.

簡単に言うと劣ガウシアン性は$\psi_X(\lambda) = O(\lambda^2)$となるような確率変数のクラスです. ちなみに$\psi_X(\lambda) = \log\frac{1}{1-\lambda/a}$の形になっているという性質を劣指数性と呼びます.

さて, 簡単な平方完成から
\begin{align*}
\psi_X^*(a) &= \sup_{\lambda > 0}\{a\lambda - \psi_X(\lambda)\} \\
&\ge \sup_{\lambda > 0}\left\{ a \lambda - \frac{v\lambda^2}{2} \right\} \\
&\ge \frac{a^2}{2v}
\end{align*}
を得ます (最後の等号では$\lambda = \frac{a}{v}$を代入).


例2. ポアソン分布

平均$v$のポアソン分布に従う確率変数$X\sim\mathrm{Po}(v)$を考えます. すなわち, 任意の非負整数$k$に対し
\begin{align*}
\Pr[ X = k ] = \mathrm{e}^{- v} \frac{v^k}{k!}
\end{align*}
です. このとき, $\psi_X(\lambda) = v(\mathrm{e}^{\lambda} - \lambda - 1)$であり, $\lambda = \log\left( 1+\frac{a}{v} \right)$を代入すると次の凸共役を得ます:
\begin{align*}
\psi_X^*(a) = v h\left(\frac{a}{v}\right).
\end{align*}
ただし$h(x) = (1+x)\log(1+x) - x$.

上記のバウンドはBennetの不等式でよく見る形の関数になっています. 有名な不等式として
\[
h(x) \ge \frac{x^2}{1+x/3}
\]
というものがあります (この形で表現される集中不等式としてBernsteinの不等式と呼ばれる非常に有名なものがあります).

例3. ベルヌーイ試行

$X$を成功確率$p$のベルヌーイ試行とします. すなわち, $X\in\{0,1\}$であり
\begin{align*}
\Pr[X = b] = \begin{cases}
1 & \text{with probability }p,\\
0 & \text{with probability }1-p.
\end{cases}
\end{align*}

導出過程は省略(自分で手計算すると簡単に確認できる)しますが,
\begin{align*}
\psi_X(\lambda)  = \lambda p + \log(p\mathrm{e}^\lambda + 1 - p)
\end{align*}
となり, $\lambda = \log\frac{(1-p)(p+a)}{p(1-p+a)}$を代入すると凸共役$\psi^*_X(a)$が得られ,
\begin{align*}
\psi_X^*(a) = (p+a)\log\frac{p+a}{p} + (1-p-a)\log\frac{1-p-a}{1-p}
\end{align*}
となります. この式の右辺はベルヌーイ試行のKLダイバージェンスと等しいです. $\mathrm{Ber}(p)$と$\mathrm{Ber}(q)$のKLダイバージェンスを$\mathrm{KL}(p||q)$と書くと, この値は
\[
\mathrm{KL}(\mathrm{Ber}(p) || \mathrm{Ber}(q)) = p\log\frac{p}{q} + (1-p)\log\frac{1-p}{1-q}
\]
で定義され, これを用いると$\psi_X^*(a) = \mathrm{KL}(p+a||p)$と書くことができます. このことから以下のChernoff bound (の特殊ケース)を得ます:

定理4 (Chernoff bound)
$X\sim\mathrm{Bin}(n,p)$のとき, $\Pr[X\ge np + n a] \le \mathrm{e}^{-n\mathrm{KL}(p+a||p)}$.

ここにPinskerの不等式$\mathrm{KL}(p||q)\ge 2(p-q)^2$を代入するとHoeffding boundになります.

2024年3月1日金曜日

解の個数を減らす帰着 (Valiant--Vaziraniの定理)

2月に冬のLAに参加してこれまで5,6年くらい常に取り組みようやく身を結んだ共同研究を発表してきました.

自分の発表には全く関係ないことですが, LAに参加していてValiant--Vaziraniの定理がいまいち知名度がないということを初めて認識しました. これまでもこの定理をブログ記事にしたいと常々思っていたので重い腰をあげて解説しようと思います.

充足可能性判定問題 (SAT)とUSAT

$n$個の変数$x_1,\dots,x_n$を持つ論理関数$\phi\colon\{0,1\}^n\to\{0,1\}$が与えられたときに$\phi(x)=1$を満たす$x$が存在するかを問う問題を充足可能性判定問題(SAT)と言います (ここでは論理式は回路として与えられると思ってください. CNFでもOKです.).

一般に充足可能性判定問題は解の存在性を判定するだけです. では特殊ケースとして「充足割当が高々一つしか存在しないことが保証されている論理関数」に対するSATは効率的に解けるのでしょうか?

このような判定問題をUSAT (unique SAT)と言います. 厳密にはUSATは約束問題です. すなわち, 与えられた論理関数$\phi$が以下で定義される二つの集合$U_{\mathrm{yes}},U_{\mathrm{no}}$のどちらに属するかを判定する問題です:
\begin{align*}
&U_{\mathrm{yes}} = \{\phi\colon \phi\text{ has a unique satisfying assignment}\},\\
&U_{\mathrm{no}} = \{\phi\colon \phi\text{ has no satisfying assignments}\}.
\end{align*}
与えられた$\phi$がこの二つの集合どちらにも属していない場合はYES/NOどちらを答えても正解としてみなします. $U_{\mathrm{yes}}, U_{\mathrm{no}}$はdisjointですが$U_{\mathrm{yes}}\cup U_{\mathrm{no}}$は必ずしも入力全体の集合になるわけではありません. yesインスタンス全体とnoインスタンス全体の和集合が入力全体になる決定問題を判定問題と呼び, そうとは限らない決定問題を計算量理論では約束問題 (promise problem)といいます (約束問題は判定問題を特殊ケースとして含んでいます). 細かい注意ですが, $\mathsf{P}$とか$\mathsf{NP}$は判定問題の計算量クラスなので「$\mathrm{USAT}\in\mathsf{P}$」という主張は文法がおかしく, 正しくは 「$\mathrm{USAT}\in\mathsf{prP}$」です (promise P).

Valiant--Vaziraniの定理

Valiant--Vaziraniの定理とは乱択を許したときにUSATがSATに帰着できることを主張する定理です. 例えばその帰結として

USATが多項式時間で解ける $\Rightarrow$ SATが乱択多項式時間で解ける

が得られますので, USATはいわば"乱択NP困難" (これはofficialな用語ではない!)ということになります. ValiantはPAC学習を定義したりマッチング数え上げの#P困難性を証明した方で, Vaziraniは近似アルゴリズムの本で有名なVaziraniです. どちらも非常に偉大な方です. 原著論文はこちらです.

定理1 (Valiant--Vaziraniの定理)
論理関数を別の論理関数に変換する多項式時間乱択アルゴリズム$R$とある多項式$p$が存在し, 任意の論理関数$\phi\colon\{0,1\}^n\to\{0,1\}$に対し, 
  • $\phi\in \mathrm{SAT}$ ならば, $\Pr[R(\phi)\in U_{\mathrm{yes}}]\ge \frac{1}{p(n)}$.
  • $\phi\not\in\mathrm{SAT}$ ならば, 確率1で$R(\phi)\in U_{\mathrm{no}}$.
ただし$\mathrm{SAT}$は充足可能な論理式全体を表す.

仮にUSATが多項式時間アルゴリズム$A$で解けたとしましょう. このアルゴリズム$A$を定理1のアルゴリズム$R$と組み合わせることで以下のようにしてSATを解くことができます:

  1. 与えられた論理関数$\phi$を入力として$R$を走らせ, 別の論理関数$\phi'$を得る.
  2. $\phi'$を入力として$A$を走らせ, YESを出力したらそのままYESを出力する.
  3. そうでなければステップ1に戻る. これを$100p(n)$回繰り返しても終わらない場合はNOを出力する.
上述の乱択アルゴリズムは任意のSATインスタンス$\phi$に対し99%の確率で正解を出力します. 元の$\phi$が$\phi\in\mathrm{SAT}$ならば, $100p(n)$回の繰り返しの中で全て$R(\phi)\not\in U_{\mathrm{no}}$となってしまう確率は$(1-1/p(n))^{100p(n)}\le \exp(-100)<0.01$だからです (ここでは$\forall x\in\mathbb{R},1+x\le \exp(x)$を使っている).

証明のアイデア


証明の直感を養うために, 効率性を無視した次の帰着を考えます:
  1. $\phi\colon\{0,1\}^n\to\{0,1\}$を与えられた論理関数とする.
  2. 適切に設定されたパラメータ$m$に対し, $f\colon\{0,1\}^n\to\{0,1\}^m$を一様ランダムな関数とする (すなわち, 各$x\in\{0,1\}^n$に対して$f(x)$は独立一様ランダムな$m$ビット文字列を出力する関数.
  3. $\phi'(x) = \phi(x) \land \langle f(x)=1^m \rangle$とする. ここで$\langle E \rangle$は事象$E$の指示関数とする.
明らかに, $\phi$が充足可能でないならば$\phi'$もまた充足可能ではありません. 一方で$\phi$が充足可能であるとき, 充足割当の個数を$N$とすると, $\phi'$の充足割当の個数$N'$は$\mathbb{E}[N']=N/2^m$を満たします. ですので, $m=\log_2 N$とすれば期待値が$1$になります. $N'$の実際の分布は二項分布$\mathrm{Bin}(N,1/N)$であり, $\Pr[\mathrm{Bin}(N,1/N)=1]\ge \mathrm{const}$が成り立つ ($N\to\infty$の極限では$\mathrm{Bin}(N,1/N)\to\mathrm{Po}(1)$に収束する). なお, ステップ3の$\langle f(x)=1^m \rangle$における$1^m$は特に$1^m$である必然性はありません.

この帰着では$N$の値を知る必要があるのですが, そこもまたランダムに与えれば良いです. 一様ランダムに$m\sim[n]$をとると確率$1/n$で$2^{m-1}\le N \le 2^m$を満たします. この$m$を用いて上の帰着を実行すれば, 同じようなポアソン近似により確率$\mathrm{const}\cdot (1/n) \ge \mathrm{poly}(n)$で$\phi'\in U_{\mathrm{yes}}$を満たすことが確認できます.

しかしながら, 上述の帰着では一様ランダムな関数$f$をサンプリングするには少なくとも$m2^n$ビットのランダムビットが必要なので, 指数時間かかってしまいます. そこでこのサンプリングに必要なランダムビット数を$\mathrm{poly}(n)$ビットまで削減することを目指していくことになります. すなわち, 一様ランダムな関数と同等の性質を持つ別のランダム関数を短いランダムシード長でサンプリングすることを目標にします.

これはpairwise independent hash functionという, 脱乱択化(derandomization)の分野では標準的な関数を考えることによって解決できます. まず, 確率変数のpairwise independent性について解説します. 

ペア独立性 


この記事では確率変数といえばデフォルトで離散値をとるものを考えます (計算機では全てが離散で処理されるので).

二つの確率変数$X,Y$は, 任意の$x,y$に対して$\Pr[X=x\text{ and }Y=y]=\Pr[X=x]\Pr[Y=y]$を満たすとき独立であると言います. より一般に確率変数$X_1,\dots,X_n$が独立であると言ったとき, それは任意の$x_1,\dots,x_n$に対して
\begin{align*}
\Pr[X_i = x_i \text{ for all }i\in [n]]=\prod_{i\in [n]}\Pr[X_i=x_i]
\end{align*}
を意味します. 独立という代わりに相互に独立(mutually indepedent)であると言うこともあります.

一方で, 任意の$1\le i<j\le n$と$x_i,x_j$に対し
\begin{align*}
\Pr[X_i=x_i\text{ and }X_j=x_j]=\Pr[X_i=x_i]\Pr[X_j=x_j]
\end{align*}
が成り立つとき, $X_1,\dots,X_n$はペア独立 (pairwise independent) であると言います. pairwise independenceにはこれといったスタンダードな和訳は(私の知る限り)ないと思いますが, ここではこちらのページから拝借しております. なお, 上の定義では$i\neq j$としていることに注意してください.

ペア独立ハッシュ関数

ハッシュ関数と聞くとPythonの辞書などを想起されますが, 計算量の文脈ではハッシュ関数と言ったらある分布に従って生成されたランダムな関数を指すものと思ってください.

ランダムな関数$f\colon\{0,1\}^n\to\{0,1\}^m$に対し, $2^n$個の確率変数$f(0^n),\dots,f(1^n)$がペア独立であるとき, $f$はペア独立ハッシュ関数であると言います.

単に$f$がペア独立ハッシュ関数であると言った場合は単にペア独立性だけを指しますが, しばしば, 任意に固定した$x\in\{0,1\}^n$に対して$f(x)$の分布は一様ランダムであることが多いです.

例えば, 証明のアイデアで考えた「各$x\in\{0,1\}^n$に対し独立一様ランダムな$m$ビット文字列を$f(x)$として出力する関数」はペア独立ハッシュ関数です. この例は生成に指数長のランダムシードを要しますが, よりrandomness-efficientなものも構成できます.

ランダムな直線

有限体$\mathbb{F}=\mathbb{F}_{2^n}$上の関数を考えます. ここでは$\mathbb{F}_{2^n}$の厳密な定義を理解しておく必要はありません. 掛け算と足し算ができて, 非ゼロな元では割り算ができて, これらの演算が$n$に関する多項式時間でできて, しかも$|\mathbb{F}_{2^n}|=2^n$になっているので$\{0,1\}^n$と一対一対応がある, という事実だけを使います. 一様ランダムに$a,b\sim\mathbb{F}$をサンプリングしてランダム関数$f\colon \mathbb{F}\to\mathbb{F}$を
\[f(x) = ax+b\]
で定めます. 有限体を$\mathbb{F}_{2^n}\cong \{0,1\}^n$で同一視すると$f$は$n$ビット文字列から$n$ビット文字列への関数とみなせます.

補題2.
一様ランダムな$a,b\sim\mathbb{F}$に対し, $f\colon x\mapsto ax+b$はペア独立ハッシュ関数である. すなわち, $|\mathbb{F}|$個の確率変数$(f(x))_{x\in \mathbb{F}}$はペア独立である. さらに, 固定した$x\in \mathbb{F}$に対して$f(x)$の分布は$\mathbb{F}$上一様ランダムである.

証明. 任意の$x_1\neq x_2\in \mathbb{F}$と$y_1,y_2\in\mathbb{F}$に対して
\[
\Pr[f(x_1)=y_1 \text{ and }f(x_2)=y_2] = \Pr[f(x_1)=y_1]\Pr[f(x_2)=y_2]
\]
を示せば良いです. $f(x_i)=y_i$ ($i=1,2$)という等式を行列を用いて表すと
\[
\begin{bmatrix}
x_1 & 1 \\
x_2 & 1 \\
\end{bmatrix}
\begin{bmatrix}
a \\
b
\end{bmatrix}
=
\begin{bmatrix}
y_1 \\
y_2
\end{bmatrix}
\]
となります. ヴァンデルモンドの行列式から係数行列は正則なので, $[a\,b]^{\top}$はある特定のベクトルになっていなければならず, $a,b\sim\mathbb{F}$は一様ランダムなのでこれが起こる確率は$1/|\mathbb{F}|^2$となります.

一方で$\Pr[f(x_i)=y_i]=1/|\mathbb{F}|$なので, 確かに$(f(x))_{x\in \mathbb{F}}$はペア独立であることが確認されました. (証明終)

補題2で構成したペア独立ハッシュ関数は$n$ビット文字列から$n$ビット文字列への写像でしたが, 出力の$n$ビットのうち最初の$m$ビットだけを取り出した ($m\le n$) 文字列を出力するようにすれば, 値域を$\{0,1\}^m$にしつつペア独立になるようにできます.

補題3.
ペア独立ハッシュ関数$f\colon \{0,1\}^n\to\{0,1\}^n$と固定したパラメータ$m\le n$に対し, $f'(x)\in\{0,1\}^m$を$f(x)$の先頭$m$ビットからなる文字列と定義する. このとき, $f'\colon\{0,1\}^n\to\{0,1\}^m$はペア独立ハッシュ関数である.

証明. 確率変数$(f(x))_{x\in\{0,1\}^n}$がペア独立であることを利用して$(f'(x))_{x\in\{0,1\}^n}$がペア独立であることを示します. ペア独立性の定義から, 任意の$x_1\neq x_2\in\{0,1\}^n$と$y_1,y_2\in\{0,1\}^m$に対して
\[
\Pr[f'(x_1)=y_1\text{ and }f'(x_2)=y_2]=\Pr[f'(x_1)=y_1]\Pr[f'(x_2)=y_2]
\]
が成り立つことを示せばよいです.

文字列$y\in\{0,1\}^m$に対して, 先頭$m$ビットが$y$になるような$n$ビット文字列の全体を$S(y)\subseteq\{0,1\}^n$とします. $f'(x)$は$f(x)$の先頭$m$文字を取り出すことから, $f'(x)=y \iff f(x)\in S(y)$です. 従って
\begin{align*}
\Pr[f'(x_1)=y_1\text{ and }f'(x_2)=y_2] &= \sum_{z_1\in S(y_1),z_2\in S(y_2)} \Pr[f(x_1)=z_1\text{ and }f(x_2)=z_2] \\
&= \sum_{z_1\in S(y_1),z_2\in S(y_2)} \Pr[f(x_1)=z_1]\Pr[f(x_2)=z_2] & & \text{pairwise independence of $f$} \\
&= \Pr[f(x_1) \in S(y_1)]\Pr[f(x_2)\in S(y_2)] \\
&= \Pr[f'(x_1)=y_1]\Pr[f'(x_2)=y_2]
\end{align*}
より主張が得られます. (証明終)

補題2,3を組み合わせると, 以下の命題が成り立つことがわかります.

補題4.
任意の$m\le n$に対し, $\{0,1\}^n$から$\{0,1\}^m$へのペア独立ハッシュ関数$f$であって, 全ての$x\in\{0,1\}^n$に対して$f(x)$の分布が$\{0,1\}^m$上一様ランダムになるようなものが存在する. さらに$x\mapsto f(x)$の計算は$\mathrm{poly}(n)$時間で計算できる.


Valiant--Vaziraniの定理の証明

いよいよ定理1を証明します. $\phi\colon\{0,1\}^n\to\{0,1\}$を与えられた論理関数とし, 以下の帰着を考えます:

  1. $m\sim\{1,\dots,n\}$を一様ランダムに選ぶ.
  2. $f\colon\{0,1\}^n\to\{0,1\}^m$を補題4で保証されるペア独立ハッシュとする.
  3. $\phi'(x)=\phi(x)\land \langle f(x)=1^m\rangle$で定義される論理関数$\phi'$を出力する.

ステップ3では, Cook-Levinの定理の証明からコンピュータで計算できるアルゴリズムはその内部(レジスタや読み込みテープの位置など)の動きを回路で表現できることを用います. すなわち, 補題4では$x\mapsto f(x)$は多項式時間で計算できるので, この計算を回路で表現することによってBoolean関数$x\mapsto \langle f(x)=1^m\rangle$を$n$に関する多項式サイズの回路で表現することができます (SATを考えると, このようにペア独立ハッシュ関数の計算過程を表現できるというuniversalityが役にたつというわけです!). 従って$\phi\mapsto \phi'$を計算する上記の乱択アルゴリズムは多項式時間アルゴリズムです.

正当性の証明

$\phi'$の正当性を証明します. 与えられた論理関数$\phi$が充足不可能ならば$\phi'$を充足する割当も存在しません. 従って$\phi$が充足可能であるときに$\phi'$が充足可能である確率を評価すればよいです.

$\phi$が充足可能であるとし, $1\le N \le 2^n$を$\phi$の充足割当の個数とします. 充足割当が非常に多く, 例えば$N\ge 2^{n-3}$を満たすならば一様ランダムな$x\sim\{0,1\}^n$に対して$\phi(x)=1$かどうかをチェックすれば$\phi$の充足可能性が簡単に解けて, $\phi$が充足可能ならば定数$1$を$\phi'$として出力すればよいので, $N\le 2^{n-3}$を仮定します.

$m\sim[n]$が一様ランダムに選ばれているので, 確率$1/n$で
\begin{align}
2^{m-3}\le N \le 2^{m-2}
\end{align}
を満たします. 以後は$m$が(1)を満たすと仮定して議論を進めます.

$\phi$の充足割当の全体を$a_1,\dots,a_N$ ($a_i\in\{0,1\}^n$) とし, 確率変数$X_i=\langle f(a_i)=1^m \rangle$を考えると, $X=\sum_{i\in[N]} X_i$は$\phi'$の充足割当の個数に等しいです. ですので $\Pr[X=1]\ge 1/\mathrm{poly}(n)$を示すのが目標です. $N$と$m$の関係(1)より, $1/8 \le \mathbb{E}[X] \le 1/4$です.

任意の$x\in\{0,1\}^n$に対して$\Pr[f(x)=1^m]=1/2^m$なので, $\mathbb{E}[X]=N/2^m$を満たします. 従って
\begin{align*}
\Pr[X=1] &= \Pr[\exists i,X_i=1\text{ and }\forall j\neq i,X_j=0] \\
&= \sum_i \Pr[X_i=1\text{ and }\forall j\neq i,X_j=0] \\
&= \sum_i \Pr[\forall j\neq i,X_j=0\,|\,X_i=1]\Pr[X_i=1] \\
&= \sum_i (1-\Pr[\exists j\neq i,X_j=1\,|\,X_i=1])\Pr[X_i=1] \\
&\ge \sum_i \Pr[X_i=1] (1-\sum_{j\neq i} \Pr[X_j=1\,|\,X_i=1]\Pr[X_i=1]) \\
&= \sum_{i}\Pr[X_i=1]-\sum_{i\neq j} \Pr[X_i=1]\Pr[X_j=1] & & \text{pairwise independence}\\
&\ge \mathbb{E}[X] - \mathbb{E}[X]^2 \\
&\ge \frac{1}{8} - \frac{1}{16} & & \text{(1)}\\
&\ge \frac{1}{16}
\end{align*}
を得ます. $m$が一様ランダムなので, (1)が成り立つ確率は$1/n$です. 従って, $\phi$が充足可能のときに$\phi'\in U_{\mathrm{yes}}$となる確率は少なくとも$\frac{1}{16n}$となります. (証明終)

グラフ問題に対するペア独立性の応用

Valiant--Vaziraniの定理はSATに対してペア独立な関数を制約に加えることによって解の個数を減らすという帰着でしたが, 似たようなアイデアに基づいてグラフ上の部分グラフ数え上げ問題に対して解の個数を減らす帰着を与えることができます (ただし帰着後の問題は元の問題とは違う問題になってしまう).

次の二つの問題を考えます:

  1. 与えられたグラフ$G=(V,E)$が三角形を含むかどうかを判定せよ ($\mathrm{TRI}$)
  2. 有限体$\mathbb{F}_q$に対し, 各辺$e\in E$が$\mathbb{F}_q$の元を重みとして持つ辺重みグラフ$\tilde{G}$を考え, 辺重みの総和が$0$になるような三角形(以後はゼロ三角形と呼ぶ) の存在性を判定せよ ($\mathrm{ZWT}_q$)
問題1は隣接行列の三乗を計算して対角成分を見ればよいので$O(n^{\omega})$時間で計算できます. 問題2は精緻な計算量 (fine-grained complexity) の文脈で難しい問題とされていて, $q$が十分大きいときは任意の定数$\varepsilon>0$に対して$O(n^{3-\varepsilon})$時間で解けないと予想されています. ですので, 本質的には$\mathrm{TRI}$と$\mathrm{ZWT}_q$の間にはギャップがありそうだと思われており, $\mathrm{ZWT}$の方が難しいと思われています.

ここで, 問題2においてゼロ三角形が高々一つであることを保証する問題を$\mathrm{UZWT}$とします. $q\approx 3\log n$のとき, $\mathrm{TRI}$から$\mathrm{UZWT}_q$への乱択帰着が存在します.

証明のアイデア. 与えられた$\mathrm{TRI}$のインスタンス$G=(V,E)$に対し, 各辺に$\mathbb{F}_q$上一様ランダムな重みを付与したグラフ$\tilde{G}=(V,\tilde{E})$を考えます. $G$の各三角形$(u,v,w)$に対し, この三角形が$\tilde{G}$においてゼロ三角形になる確率は$1/q^2$です. なので適当な範囲から$q$をランダムに選ぶと, ある程度の確率で$q^2$が$G$の三角形の個数と大体同じくらいになります. また, $G$の三角形$T$に対して$X_T$を三角形$T$が$\tilde{G}$においてゼロ三角形になるかどうかの指示関数とすると, $(X_T)_T$はペア独立になります!

この事実を確認するために, 相異なる二つの三角形$T\neq T'$を考えます. $T$と$T'$が辺を共有しない場合は$X_T$と$X_{T'}$は独立です. 仮にこの二つの三角形が辺を共有していたとしても, $T\neq T'$より共有している辺の本数は必ず$1$本になり, これ以外の辺の重みは独立に決まるので$X_T$と$X_{T'}$は独立になります.

従って, ランダムに重みを付与したZWTのインスタンス$\tilde{G}$はある程度の確率でゼロ三角形を唯一含みます.




2024年1月7日日曜日

最近使っているツール

あけましておめでとうございます. 年明け早々に大変な災害や事故が発生して色々大変なことになってしまいましたが私の方は何事もなく平穏に過ごしております. この状況下において災難に遭われた方々の一日も早い快復をお祈りします.

さて, 昨今はchatGPTなど, 我々の取り巻く技術的進歩の状況は目まぐるしく変化しており, かなり数学に近い分野にいる私はそのようなツールに対し必要性を感じなかったために特に利用していませんでした. 使っているのはせいぜいoverleafとgoodnoteくらいでした.

一方で便利なツールがあるのに使わないのは非常にもったいない気がするので去年くらいから徐々に色々と導入しています. 中には特に合わないものもあったのですが, 色々紹介したいと思います.

1. Logseq

Logseq は勉強した内容をメモしておくツールで, 2023年の4月から使っています. iCloud上にファイルを置いておくことで複数のデバイス間で同期することができ, iPadからもアクセスできます.

例えばこちらの記事を執筆する際は次のようなメモを作成していました.


特徴としては, 文章というよりかは箇条書きを駆使した階層構造でメモしていきます. 特にブロック記法というものの中にQuoteというものがあり, 上図のDefinitionのような枠を気軽に作れるのが使っていてよかったです. 読んだ論文をまとめる際にも使っており, このようなメモを残しています. メモ間にリンクもはっています.


日誌という機能もあり, 気軽に日記を残すことができます.



2. Notion

Notionはメモ, タスク管理, ドキュメント等を行うオンラインサービスです. Legseqと比べるとカラフルで機能が豊富です. 例えば海外旅行などにいくときにこのようなページを作っていました.


オンライン上でノートが保存されているため, デバイス間の共有も非常に楽です. これまでは生活で使っていたのですが, 論文執筆をする際にTODOやメモを書いたり関連研究をまとめておくのに便利だなぁと気づいたので最近は積極的に利用しています.



それぞれの既存研究のリンクにはそれらをまとめるサブページを設けることもできます.

自分の中では
  • Logseqは勉強する際に書く気軽なメモ
  • Notionは論文を書くときのメモ
という立ち位置です. Obsidianというのもあるらしいのですが, どちらの方が良いとかはわかりません.

3. Visual Studio Code

Visual Studio Code (VS Code)は統合開発エディタです. 要するにプログラムのソースコードを書くためのエディタです. 講義の時を除いて自分は普段はプログラミングをしないので必要性を感じなかったのですが, VS Codeには様々な拡張機能を追加することができ, 実は論文執筆にも利用することができます.

特にoverleafに繋げるプラグインが存在しており, これを使ってoverleaf上のファイルの編集も行えます. ほかのプラグインと併用してスペルチェックなどができる上に, LaTeXのコンパイル時間が早くなったりして便利です.

設定が少し面倒なのですが, 導入の解説をしてくれるページが色々あるので, VS Codeをインストールした初日になんとかoverleafと繋げて文章を編集するところまでもっていけました.

個人的にはCookieでログインする, という手順で少し詰まった (公式ドキュメントではFireFoxの画面で説明されてた) のですが, google chromeでは右上の3点が縦に並んでいるボタンから「その他のツール」→「デベロッパーツール」と進んでいき, 

ApplicationというタブにあるCookieのところから値をコピーしていけば良いです.

拡張機能の中にはDeepLやGithub Copilotなどがあり, これらと連携することで英語執筆が非常に楽になるそうです (自分はまだ試していない). 

今後使おうと思っているもの

最後に, 自分が気になっているものについて列挙しておきます. 「こういうのがオススメ」というのがありましたら教えていただけると嬉しいです.
  • draw.io
    • 今まではkeynoteで図を作ってたけど, いちいち開くのは面倒だと思っていた.
    • draw.ioを使えば気軽に図を描ける. グラフとかフローチャートが描きやすそう.
    • VS Codeにプラグインがある.
    • 軽く触ってみた感触だとオブジェクトとオブジェクトの間にいい感じで曲線をひくのがむずそう (本当はもっと楽な方法がありそうではある)
  • Github Copilot
    • プログラミングの支援サービスのように書いてあるが, 論文執筆にも有用そうなことが書いてある記事を見かけたので自分も使ってみようかなと.
    • どれくらい有用なのかを見極めたい.
    • VS Codeの拡張機能で導入できる.
  • ChatGPT

2023年12月20日水曜日

ランダムウォークの混交時間の解析(スペクトルギャップと修正された対数ソボレフ不等式)

スペクトルギャップを用いたランダムウォークの混交時間の解析は前々から知ってたけど対数ソボレフ不等式を用いた解析は知りたいなぁと長年思っていてようやく理解できてきたのでまとめてみました.

連結かつ非二部なグラフ上の離散時間単純ランダムウォーク(隣接点に一様ランダムに遷移するランダムウォーク)の分布は必ず定常分布と呼ばれる分布に収束することが知られており, その収束のレートを測る指標として混交時間(mixing time)が知られています. 時刻$t$においてランダムウォークが頂点$v$にいる確率を$p_t(v)$と書き, $\pi\in[0,1]^V$を定常分布とします (基本的にベクトルは行ベクトルとして扱います). 通常のランダムウォーク(一様ランダムな隣接点に遷移するランダムウォーク)では$\pi(v) = \frac{\deg(v)}{2|E|}$となることが知られています.

より一般に, 頂点$u$から$v$への遷移確率$P(u,v)$を成分として持つ行列を遷移確率行列(transition matrix)と呼び, $\pi P = \pi$を満たす分布$\pi$を定常分布(stationary distribution)と呼び, 定常分布が存在するランダムウォークを可逆(reversible)であると言います. 時刻$t$におけるランダムウォークの分布ベクトル$p_t$は$p_t = p_{t-1}P$を満たすので, この等式の両辺を$t\to\infty$をとれば確かに$p_t$が収束するとしたらそれは定常分布になりそうな感じがします. 

可逆なランダムウォークは非常に重要なクラスであり, 定常分布が誘導するある計量を考えると遷移確率行列を対称行列として扱えるのが嬉しい性質で, 例えば$P$が実固有値を持つのでエクスパンダー性の議論などと相性が良いです (例えばこの記事参照). 基本的に無向グラフ上のランダムウォーク(辺重みがあっても良い)はこのクラスに属しますが, 有向グラフにすると可逆性が失われます. 本記事では主に可逆なランダムウォークを扱います.

$P(u,v)>0$のときに有向辺$(u,v)$を張って得られる有向グラフ$G$が強連結ならば$P$は既約(irreducible)であると言い, $G$の全ての有向閉路の長さのgcdが$1$であるならば非周期的(aperiodicity)であると言います (例えば二部グラフなら閉路長が偶数なので周期的). 既約ならば定常分布は一意に存在し, 非周期的ならばランダムウォークの分布は$\pi$に収束することが知られています (二部グラフ上のランダムウォークはステップ数の偶奇で分かれるので収束しない). ランダムウォークの文脈では確率$1/2$の自己ループによって長さ1の閉路を付与することで必ず非周期性を持たせられます. また, 連続時間ランダムウォークを考えると既約性だけで定常分布への収束性を保証できます. 自己ループ確率を$1/2$にすると遷移確率行列$P$が半正定値性を持ち, 例えば$\sqrt{P}$といった行列を考えることができるのが嬉しいポイントで, 例えば[Oliveira and Peres, 2019]ではこの分解を巧妙に使って到達時間(hitting time)のバウンドを証明しています.

混交時間の話に戻ります. 二つの分布$p_t,\pi\in[0,1]^V$の統計距離$d_{\mathrm{TV}}(p_t,\pi):=\frac{1}{2}\|p_t - \pi\|_1$を考え, 任意の初期分布$p_0$に対しこの値が$\epsilon$以下になるような最小の$t$を$\epsilon$-混交時間と呼び, $t_{\mathrm{mix}}(\epsilon)$で表します. すなわち
\begin{align*}
t_{\mathrm{mix}}(\epsilon) = \inf\{t\geq 0\colon d_{\mathrm{TV}}(p_t,\pi)\leq\epsilon\text{ for any }p_0\}.
\end{align*}
なお, 初期分布$p_0$は各頂点上のDirac測度の凸結合で表せるので, 最悪の頂点からスタートした場合の混交スピードを測るという意味で最悪時の指標になっています. 例えば初期状態が定常分布だった場合は$0$ステップで混交しているので平均時みたいなものはあまり考えません.

ランダムウォークとはグラフ上を局所的に遷移する過程ですので一般に解析が難しそうに見えますが, 時刻$1$から$T$を長さ$t_{\mathrm{mix}}(\epsilon)$の区間で区切るとそれぞれで分布が$\pi$に収束するため, それぞれの区間の最後では$\pi$からランダムに頂点を選んだものとみなすことができます. 例えば正則グラフを考えると$\pi$は一様分布となるので, $100n\log n$個の区間を考えるとそれぞれで固定した頂点$v$に行き着く確率はおおよそ$\pi(v)=1/n$なので, ランダムウォークが一度も頂点$v$を訪れない確率は$(1-1/n)^{100\log n}\leq n^{-100}$となり, $v$に関するunion boundをとれば全ての頂点を訪問することがわかります. すなわち混交時間を抑えることによって, 全訪問時間(cover time)も抑えることができます. こちらの記事で, このトピックに関する簡単なサーベイをまとめています.

このように, 混交時間を抑えることによって到達時間や全訪問時間といった他のパラメータに対する上界も得ることができるため, 混交時間の解析はランダムウォークにおいては非常に重要な研究課題となっています. 現代はマルコフ連鎖モンテカルロ法(MCMC)の解析, 特にIsing modelやPotts modelに対するGlauber dynamicsなどの混交時間の解析が大きな注目を集めています. また, Langevin dynamicsによって最適化問題を表現し, その混交時間が抑えられればその最適化問題に対するアルゴリズムを与えることができます.

混交時間を抑えるためには$d_{\mathrm{TV}}(p_t,\pi)$を上から抑える必要があります. 本記事では, 

  • Cauchy-Schwarzの不等式を使って$\chi^2$-ダイバージェンスで上から抑える (スペクトルギャップ)
  • Pinskerの不等式を使ってKL-ダイバージェンスで上から抑える (修正された対数ソボレフ不等式)
という二つのよく知られる方法について, ダイバージェンスの観点から紹介します. スペクトルバウンドのみを理解したい場合はダイバージェンスを介さずとも良いのですが, 修正された対数ソボレフ不等式に基づく解析も理解するならば両方をダイバージェンスの縮小という観点で理解した方が見通しがよくなると思ったからです.

なお, オリジナルの対数ソボレフ不等式は元々は関数解析の分野の概念ですが, 本稿では関数解析には触れず, マルコル連鎖に焦点を絞って解説していきます.

スペクトルギャップに基づくバウンド

線形代数です. アイデアとしては, $\ell^1$ノルムを$\ell^2$ノルムで抑えて$\ell^2$ノルムをバウンドするためにスペクトルを使うというものです. $p_t-\pi = (p_{t-1} - \pi)P$であり, $p_{t-1}-\pi$は$P$の第一固有ベクトル$\mathbf{1}$と直交するので, $P$の第二固有値を見ることが肝要になります.

この議論をダイバージェンスの観点からと述べるために, $\chi^2$-ダイバージェンスと呼ばれる値を定義します. 確率変数$X$の台を$\mathsf{supp}(X)=\{x\colon \Pr[X=x]>0\}$で定めます.

定義1 ($\chi^2$-ダイバージェンス)
離散値をとり, $\mathsf{supp}(X) \subseteq \mathsf{supp}(Y)$を満たす二つの確率変数$X,Y$の$\chi^2$-ダイバージェンス$\chi^2(X||Y)$を以下で定義する:
\begin{align*}
\chi^2(X||Y) &= \sum_{a\in \mathsf{supp}(Y)} \Pr[Y=a]\left(\frac{\Pr[X=a]}{\Pr[Y=a]}-1\right)^2 \\
&= \mathbb{E}_{a\sim Y}\left[ \left( \frac{\Pr[X=a]}{\Pr[Y=a]} - 1 \right)^2 \right].
\end{align*}
また, $\mathsf{supp}(X)\not\subseteq \mathsf{supp}(Y)$であった場合は$\chi^2(X||Y)=\infty$と定める.

この量は二つの分布の乖離度を測る指標として知られているのですが, 距離の公理は満たしません (そもそも$\chi^2(X||Y) = \chi^2(Y||X)$は一般に成り立たない). イメージとしては確率変数$X,Y$がどれくらい識別しにくいかを表す指標だと思ってもらえれば十分です.

今回の記事では特に扱いませんが, ダイバージェンス全般において特筆すべき性質としては

  • 非負性: $\chi^2(X||Y)\geq 0$.
  • データ処理不等式: 任意の決定的アルゴリズム(関数)$f$に対し, $\chi^2(f(X)||f(X))\leq \chi^2(X||Y)$.
  • 凸性: 確率変数をその分布ベクトルとみなし, $\chi^2$を二つの分布から実数値を返す関数とみなしたときに$\chi^2$は凸関数.

がよく知られています. 特に凸性はJensenの不等式との相性が良いので非常によく使います. また, $\chi^2$ダイバージェンスと統計距離との間には以下の関係が成り立ちます.

補題2.
離散値をとる二つの確率変数$X,Y$に対して
\begin{align*}
d_{\mathrm{TV}}(X,Y) \leq \frac{1}{2}\sqrt{\chi^2(X||Y)}.
\end{align*}

証明.
$Y$の台を$\Omega$とし, $x(a)=\Pr[X=a],y(a)=\Pr[Y=a]$とします. $\mathsf{supp}(X)\not\subseteq\mathsf{supp}(X)$の場合は右辺が$\infty$となり自明なので, $\mathsf{supp}(X)\subseteq\mathsf{supp}(Y)$を仮定すると,
\begin{align*}
d_{\mathrm{TV}}(X,Y) &= \frac{1}{2}\sum_{a\in \Omega}\left| x(a) - y(a) \right| \\
&= \frac{1}{2}\sum_{a\in\Omega} \sqrt{y(a)}\cdot \sqrt{y(a)} \left| \frac{x(a)}{y(a)} - 1 \right| \\
&\leq \frac{1}{2}\sqrt{\sum_{a\in\Omega}y(a)}\cdot \sqrt{\sum_{a\in\Omega}y(a)\left(\frac{x(a)}{y(a)} - 1 \right)^2} & & \text{the Cauchy--Schwarz inequality} \\
&= \frac{1}{2}\sqrt{\chi^2(X||Y)}.
\end{align*}
より主張を得ます. (証明終)

ランダムウォークに話を戻すと, 補題2より$\chi^2(p_t||\pi)$の上界が得られれば混交時間のバウンドを得ることができます. 以下の補題で$\chi^2(p_t||\pi)$を$\ell^2$ノルムで抑えます.

補題3.
定常分布$\pi$を持つ可逆なランダムウォークに対して, $\pi_{\min}:=\min_{v\in V}\pi(v)$とすると,
\begin{align*}
\chi^2(p_t||\pi) \leq \pi_{\min}^{-1}\cdot \|p_t - \pi\|_2^2.
\end{align*}

証明.

\begin{align*}
\chi^2(p_t||\pi) &= \sum_{v\in V}\pi(v)\cdot \left(\frac{p_t(v)}{\pi(v)}-1\right)^2 \\
&= \sum_{v\in V}\pi(v)\cdot\left(\frac{p_t(v)^2}{\pi(v)^2} - \frac{2 p_t(v)}{\pi(v)} + 1\right) \\
&= \sum_{v\in V}\pi(v)\left(\frac{p_t(v)}{\pi(v)} - 1\right)^2 \\
&= \sum_{v\in V}\frac{1}{\pi(v)}\cdot \left( p_t(v) - \pi(v) \right)^2 \\
&\leq \pi_{\min}^{-1}\cdot \|p_t - \pi\|_2^2.
\end{align*}
よって主張を得る. (証明終)

最後に行列$P$のスペクトルを用いた混交時間の上界を導出します.

定理4.
遷移確率行列$P$に従い, 定常分布$\pi$を持つ可逆なランダムウォークを考える. $\lambda(P)=\max_{\|x\|_2=1,x\bot \mathbf{1}}\|Px\|$とする. $\lambda(P)<1$ならば,
\begin{align*}
d_{\mathrm{TV}}(p_t,\pi) \leq \frac{\lambda(P)^t}{\sqrt{2\pi_{\min}}}.
\end{align*}
特に, スペクトルギャップ$\gamma:=1-\lambda(P)$に対し, $\tau_{\mathrm{mix}}(\epsilon) = O\left(\gamma^{-1}(\log(1/\epsilon) + \log(1/\pi_{\min}))\right)$.

Remark. $\lambda(P)$は$P$の非自明な第二固有値になります. すなわち, $P$の固有値を$1=\lambda_1 \geq \lambda_2\geq \dots \geq \lambda_{|V|}$としたときに$\lambda(P) = \max\{\lambda_2,|\lambda_{|V|}|\}$です. これはCourant-Fischerの定理(行列の固有値に関するmin-max定理)からわかります. エクスパンダーグラフの文脈では$\lambda(P)$が小さいグラフ (言い換えると$\gamma\approx 1$) を考えるのに対し, 例えば混交時間が多項式かどうかを気にするMCMCの文脈では$\gamma \geq 1/\mathrm{poly}(n)$かどうかを気にするので, $\gamma\to 0$の時の漸近挙動におけるオーダーを考えます.

証明. 分布$p_t$は等式$p_t = p_{t-1}P$を満たすので,
\begin{align*}
\|p_t - \pi\|_2 = \|(p_{t-1} - \pi) P\|_2 \leq \|p_{t-1} - \pi\|_2\cdot \lambda(P)
\end{align*}
を得る (最後の不等式ではベクトル$p_t-\pi$がall-one ベクトル$\mathbf{1}$に直交することを用いた).

補題2,3より,
\begin{align*}
d_{\mathrm{TV}}(p_t,\pi) &\leq \frac{1}{2\sqrt{\pi_{\min}}}\cdot \|p_t - \pi\|_2 \\
&\leq \frac{1}{2\sqrt{\pi_{\min}}} \cdot \lambda(P)^t \|p_0 - \pi\|_2 \\
&\leq \frac{\lambda(P)^t}{\sqrt{2\pi_{\min}}}
\end{align*}
特に, $\lambda(P)\leq 1-\gamma\leq\mathrm{e}^{-\gamma}$ならば$d_{\mathrm{TV}}(p_t,\pi) \leq \frac{\exp(-\gamma t)}{\sqrt{2\pi_{\min}}}\leq \epsilon$とおくと混交時間のバウンドを得る. (証明終)


修正された対数ソボレフ不等式

スペクトルギャップの章は線形代数でしたが, こちらは情報理論です. Pinskerの不等式を使って統計距離をKLダイバージェンスで抑え, KLダイバージェンス$\mathrm{KL}(p_t||\pi)$がexponentialにdecayする議論を紹介します. この時の指数のrateが修正された対数ソボレフ不等式となります. このことを述べるためにまず, Dirichlet形式と連続時間マルコフ連鎖を導入します.

KLダイバージェンスについて. 二つの分布$\mu,\nu\in[0,1]^V$に対し, それらのKLダイバージェンスを, $\mathsf{supp}(\mu)\subseteq\mathsf{supp}(\nu)$のとき
\begin{align*}
\mathrm{KL}(\mu||\nu) = \mathbb{E}_{v\sim\mu}\left[ \log \frac{\mu(v)}{\nu(v)}\right],
\end{align*}
$\mathsf{supp}(\mu)\not\subseteq\mathsf{supp}(\nu)$のとき, $\mathrm{KL}(\mu||\nu)=\infty$と定義します. すると, Pinskerの不等式より, $d_{\mathrm{TV}}(\mu,\nu)\leq \frac{1}{2}\sqrt{\mathrm{KL}(\mu||\nu)}$が成り立ちます. 混交時間の文脈では$d_{\mathrm{TV}}(p_t,\pi)\leq \frac{1}{2}\sqrt{\mathrm{KL}(p_t || \pi)}$より, $p_t$と$\pi$のKLダイバージェンスを抑えれば混交時間も抑えることができます.

Dirichlet形式について. 行列$M\in\mathbb{R}^{V\times V}$を線形作用素$M\colon\mathbb{R}^V\to\mathbb{R}^V$ととらえます. 定常分布$\pi$を持つ遷移確率行列$P$を考えます. 空間$\mathbb{R}^V$に内積$\langle \cdot,\cdot\rangle$を
\begin{align*}
\langle f,g\rangle = \sum_{v\in V}f(v)g(v)\pi(v) = \mathbb{E}_{v\sim\pi}[f(v)g(v)]
\end{align*}
を定めます.

定義5.
定常分布$\pi$を持つ$V$上の可逆なマルコフ連鎖$P$に対し, そのDirichlet形式$\mathcal{E}\colon \mathbb{R}^V\times\mathbb{R}^V\to\mathbb{R}$を
\begin{align*}
\mathcal{E}(f,g) = \langle (I-P)f,g\rangle =\sum_{v\in V}\pi(v) (I-P)f(v) g(v)
\end{align*}
で定める.

正規化されたラプラシアン$L=I-P$を用いると, $\mathcal{E}(f,g)=\langle Lf,g \rangle$と表すことができます. 特に$f=g$のとき,
\begin{align*}
\mathcal{E}(f,f) &= \langle f,f\rangle - \langle Pf,f\rangle \\
&= \frac{1}{2}\mathbb{E}_{x\sim \pi,y\sim P(x,\cdot)}[f(x)^2 - 2f(x)f(y) + f(y)^2] \\
&= \frac{1}{2}\mathbb{E}_{x\sim\pi,y\sim P(x,\cdot)}[(f(x) - f(y))^2]
\end{align*}
となり, ランダムな辺$xy$を選んだときの$f$の二乗差の平均となります. これを, $\mathcal{E}(f,f)$は関数$f$のエネルギーのようなものだと思ってください. 

連続時間マルコフ連鎖について. 可逆な遷移確率行列$P$に従う離散時間ランダムウォークを$(X_t)_{t=0,1,\dots}$とします. これを連続時間ランダムウォークに拡張します. 一般に状態空間が離散であるような連続時間のランダムウォークでは遷移時刻の間隔は平均$1$の指数分布$\mathrm{Exp}(1)$に従うものを考えます (指数分布とは$\Pr[\mathrm{Exp}(1)\geq t]=\mathrm{e}^{-t}$を満たす連続値をとる確率分布です). 以下でもう少しフォーマルに定義します. 確率変数$T_1,T_2,\dots$を$\mathrm{Exp}(1)$の独立なサンプルとし, $T_0=0$と定義します. 各$t$に対し$T_i \leq t < T_{i+1}$を満たす$i$を$i(t)$と書くことにします. 連続時間マルコフ連鎖とは, $Y_t=X_{i(t)}$で定義される連続時刻$t\in\mathbb{R}_{\geq 0}$で添字づけられた確率変数の族$(Y_t)_{t\in\mathbb{R}_{\geq 0}}$です. 連続時間ランダムウォークについても時刻$t$における分布$q_t\in[0,1]^V$を定義できます.

熱核について. $H_t = \mathrm{e}^{-t}\cdot \sum_{i=0}^\infty \frac{(tP)^i}{i!} = \mathrm{e}^{-t(I-P)}$とします. この行列はランダムウォークの分野では熱核(heat kernel)と呼ばれます (おそらく物理や微分方程式の文脈からきているのでしょうが私は専門外なので知りません). 証明は[Levin and Peres, 2017; Chapter 20]に譲りますが, $H_t(u,v)$は頂点$u$からスタートした連続時間ランダムウォークが時刻$t$において頂点$v$にいる確率を表します. 初期頂点の分布を$q_0$とすると, 時刻$t$におけるランダムウォークの分布は$q_t=q_0 H_t$と表すことができます. これを用いると連続時間ランダムウォークの$\epsilon$-混交時間$t^{\mathrm{cont}}_{\mathrm{mix}}(\epsilon)$を, 離散時間の場合と同様に
\begin{align*}
t^{\mathrm{cont}}_{\mathrm{mix}}(\epsilon) = \inf\{t\geq 0\colon d_{\mathrm{TV}}(q_t,\pi)\leq \epsilon \text{ for any $q_0$}\}
\end{align*}
で定義できます.

連続時間と離散時間の比較. 連続時間と離散時間は期待値の意味では時刻$T\in\mathbb{N}$においてどちらも$T$回の遷移を行うため, その時点でのランダムウォークの分布$p_T,q_T$はほぼ同じ性質を有します. 従って混交時間についても離散時間と連続時間でほぼ同じになります. このことは遷移回数の集中性を使って簡単に説明できます. 離散時間ランダムウォークの$(\epsilon/2)$-混交時間を$t^*$とおき, $10t^*$回目の遷移が発生した瞬間の時刻$T^*:=T_{10t^*}$を考えます. 時刻$T^*$は$10t^*$個の独立な指数分布$\mathrm{Exp}(1)$の和となり, この値は期待値$10t^*$に集中するため, 確率$1-2^{-\Theta(t^*)}$で$T^*\geq t^*$が成り立ちます. 従って
\begin{align*}
d_{\mathrm{TV}}(Y_{T^*},\pi) \leq d_{\mathrm{TV}}(X_{t^*},\pi) + \Pr[T^*<t^*] \leq \frac{\epsilon}{2} + 2^{-\Theta(t^*)}.
\end{align*}
を得ます. 適当な定数$c>0$に対して$t^*\geq c\log(1/\epsilon)$であれば$d_{\mathrm{TV}}(Y_{T^*},\pi)\leq\epsilon$が成り立つので, $t^{\mathrm{cont}}_{\mathrm{mix}}(\epsilon) = O(t_{\mathrm{mix}}(\epsilon/2) + \log(1/\epsilon))$を得ます ($\log(1/\epsilon)$の項は$t^*\ll \log(1/\epsilon)$の場合をケア). 逆方向の不等式も同様に証明できます.

修正された対数ソボレフ定数について. 上記の議論から, 連続時間における$\mathrm{KL}(q_t||\pi)$を抑えることによって元の離散時間における混交時間をバウンドできます. $\mathrm{KL}(q_t||\pi)$の減少を知りたいので, KLダイバージェンスを$t$で微分してみます. 関数$\phi_t \colon v\mapsto  \frac{q_t(v)}{\pi(v)}$とすると,

\begin{align*}
\frac{\mathrm{d}}{\mathrm{d}t} \mathrm{KL}(q_t||\pi) &= -\mathcal{E}(\phi_t,\log \phi_t)
\end{align*}
を得ます. この式の右辺の減少スピードは, 以下で定義される修正された対数ソボレフ定数によって与えられます.

定義6.
定常分布$\pi$を持つ$V$上の可逆なマルコフ連鎖$P$を考える. 関数$\phi\colon V\to\mathbb{R}_{>0}$に対し, $\mathrm{Ent}[\phi]$を
\begin{align*}
\mathrm{Ent}[\phi] = \mathbb{E}_{v\sim\pi}\left[ \phi(v) \log\frac{\phi(v)}{\mathbb{E}_{\pi}[\phi]} \right]
\end{align*}
とし, 修正された対数ソボレフ定数 (modified log-Sobolev constant) $\rho$を
\begin{align*}
\rho = \inf\left\{ \frac{\mathcal{E}(\phi, \log \phi)}{\mathrm{Ent}(\phi)} \colon \phi\geq 0,\mathrm{Ent}[\phi]\neq 0 \right\}
\end{align*}
で定める.

分布$q,\pi$のKLダイバージェンス$\mathrm{KL}(q||\pi)$は$\mathrm{KL}(q||\pi)=\mathrm{Ent}\left[\frac{q}{\pi}\right]$という関係が成り立ちます (このことからKLダイバージェンスを相対エントロピーと呼ぶのも納得ですね!). これを先ほどの微分の式に代入すると, $\rho$の定義より
\begin{align*}
\frac{\mathrm{d}}{\mathrm{d}t} \mathrm{Ent}[\phi_t] = -\mathcal{E}(\phi_t,\log \phi_t) \leq -\rho\cdot \mathrm{Ent}[\phi_t]
\end{align*}
を得ます. この微分方程式を解きます. $g(t) = \mathrm{Ent}[\phi_t]$とすると, 両辺を$g(t)$で割って
\[
\frac{\mathrm{d}}{\mathrm{d}t}\log g(t) \leq -\rho.
\]
積分定数$C_0$を使うと
\[
\log g(t) \leq -\rho t + C_0.
\]
従って$g(t) \leq \mathrm{e}^{-\rho t}\cdot g(0)$と表せます. 元々$g(t)=\mathrm{Ent}[\phi_t]=\mathrm{KL}(q_t||\pi)$だったので,
\[
\mathrm{KL}(q_t||\pi) \leq \mathrm{e}^{-\rho t}\mathrm{KL}(q_0||\pi)
\]
を得ます. 

定理7.
定常分布$\pi$を持つ$V$上の可逆なマルコフ連鎖$P$を考え, $\rho$を修正された対数ソボレフ定数とする. このとき,
\begin{align*}
t_{\mathrm{mix}}(\epsilon) = O(\rho^{-1}(\log(1/\epsilon) + \log\log(1/\pi_{\min}))).
\end{align*}
で定める.

証明.
ここでは, 離散時間と連続時間のランダムウォークの比較で主張していた関係を認め, $t_{\mathrm{mix}}(\epsilon) = O(t^{\mathrm{cont}}_\mathrm{mix}(\epsilon/2))$を認めることとします. 以後では$t^{\mathrm{cont}}_{\mathrm{mix}}(\epsilon/2)$を抑えるために, $q_t$を連続時間ランダムウォークの時刻$t$における分布とします. Pinskerの不等式および前段落の議論から
\begin{align*}
d_{\mathrm{TV}}(q_t,\pi) &\leq \frac{1}{2}\sqrt{\mathrm{KL}(q_t||\pi)} \\
 &\leq \frac{1}{2}\mathrm{e}^{-\rho t / 2}\sqrt{\mathrm{KL}(q_0||\pi)} \\
&\leq \frac{1}{2}\mathrm{e}^{-\rho t / 2}\sqrt{\log(1/\pi_{\min})}.
\end{align*}
なお, 最後の式はKLダイバージェンスの定義から任意の分布$q$に対して$\mathrm{KL}(q||\pi)\leq \log(1/\pi_{\min})$が成り立つことを用いています. 従って, 適当な$t=O(\rho^{-1}(\log(1/\epsilon) + \log\log(1/\pi_{\min})))$に対して, この値は$\epsilon/2$以下になるので主張を得ます. (証明終)

スペクトルギャップと修正された対数ソボレフ定数の関係については以下の結果が知られています

定常分布$\pi$を持つ$V$上の可逆なマルコフ連鎖$P$を考え, $\gamma$をスペクトルギャップ, $\rho$を修正された対数ソボレフ定数とする. このとき,
\begin{align*}
\rho \leq 2\gamma
\end{align*}
が成り立つ.

したがって修正された対数ソボレフ定数の下界を得るのはスペクトルギャップ以上に難しいことが分かります. しかしながら定理4と定理7を比較すると, $1/\pi_{\min}$に対する依存が大きく異なっていることが分かります. 例えば$n$頂点のグラフ上での解析を考えると$\log n$と$\log\log n$の差しかないのでそこまで大きくはなさそうなのですが, イジングモデルなど状態空間が指数的に膨大ならばその差は非常に大きくなってくるので, 修正された対数ソボレフ不等式のテクニックが有用になってきます.


参考文献


STOC26参加記

STOC2026に参加して4日目にこれを書いている。開催場所はソルトレイキシティで、日本との時差は15時間ある。基本的には夜中の2時に目が覚めて、15時くらいからめちゃくちゃ眠くなる生活が続いている。今回はありがたいことに2本通って2回発表する機会を得たのだが、最後の二日間の夕方...