ぱらぱら めくる『現代の量子力学 量子情報・量子測定を中心として』

まえがき

  • 情報理論の観点からの最小限の実験事実に基づいた論理展開」
  • 「確率解釈のボルン則や量子的重ね合わせ状態の存在を証明」
  • 「情報が書き込まれている量子系に対する物理操作の考察からシュレディンガー方程式を一般的な形で導出」
  • 量子力学は、古典力学に出てくる粒子の位置や運動量の値のように測定以前から存在している物理的実在を扱う理論ではなく」
  • 「(量子力学は)物理量の確率分布に基づいた一種の情報理論であると正しく認識させる」
  • 複素数の値をとる波動関数の正体が量子系に関する情報の集まりに過ぎない」
  • 「なぜ自然が量子力学の実装を選択したのかについて考察」
  • 「本書の理解に必要な主な前提知識は、力学、電磁気学複素数も取り入れた線形代数および多変数関数の微積分」
  • 構成

第1章 隠れた変数の理論と量子力学

  • 物理量の期待値
  • 2つの物理量の期待値には、独立な関係もあり、相関する関係もある。相関係数は「期待値の相関の程度を表した値」
  • 期待値を考えるときには、確率分布を想定している。期待値の相関を考えるときには、同時確率分布を想定している
  • しかしこの同時確率分布が確定していると考えること(〜隠れた変数理論が相当する)と相容れない物理事象が観測される
  • それが量子揺らぎの話と繋がる。「チレルソン不等式」→こちら

第2章 二準位系の量子力学

  • 量子状態は、密度行列という表現を持つと考える(もしくは、密度行列によって表現できるようなものが、量子力学で言うところの状態である)
  • 密度行列が状態なので、固有値固有ベクトルは状態に関する大事な情報となる
  • また、ブラ・ケット、演算子をサンドイッチする線形代数計算が量子状態に関する情報や期待値・物理量と関係するのは、量子状態が行列表現を持つから
  • エルミート行列はこの文脈で、密度行列として振舞うための条件を満足する
  • 密度演算子から物理量の観測確率が直接計算できる(ボルン則)ことも、この線形代数計算により導かれる
  • ユニタリー行列は空間回転であるが、複素振幅ベクトル(確率密度の状態を持つベクトル)を変化させる行列の条件を満足する
  • 量子状態の重ね合わせの係数も物理量の期待値に影響を与え、期待値を大きくしたり小さくしたりする。これが、素朴な「線形結合(の延長)」としての理解と異なること(らしく)、干渉効果と呼ぶ

第3章 多準位系の量子力学

  • 自由度を上げた話
  • 物理量であるエルミート行列が2つあって、それらが可換な場合には、それぞれの固有値固有ベクトルをそれぞれ用いて表して、ドッキングできる
  • 異なる固有状態が同じ固有値を持つと「縮退がある」と言う
  • 純粋状態は密度演算子固有値が1で残りの固有値が全て0であるような場合

第4章 合成系の量子状態

  • 数学的概念であるテンソル積は、物理的に独立な量子系を複数考えるときに、その合成系全体の量子状態を記述するのに役立つ
  • 独立な量子系を「独立に」組み合わせること

第5章 物理量の相関と量子もつれ

  • 量子コンピュータなどの様々な量子的デバイスの重要なリソースとなる量子もつれは、古典力学にはなかった物理量の相関の一種である」
  • 古典的情報(01二進法情報)をやり取りし、その情報に基づいて局所操作をすることで、2箇所の状態は、独立から有相関状態にできる。これは「古典相関」
  • 古典相関は、線形式・テンソル積で表現できる
  • 古典相関の式で表現できない「相関」もありえて、それは「量子相関〜量子もつれ
  • 量子もつれがどうやったら作れるか・・・情報のやり取りが古典的ではなく、量子的であるか、局所操作ではない操作をするか、と言うことになろうか・・・
  • 状態とその相関は、情報学的にはエントロピー
  • したがって量子もつれには、エンタングルメントエントロピーの存在が見えてくる

第6章 量子操作および時間発展

  • 「全ての物理操作は必ず対象系と外部系の合成系の状態空間に作用するユニタリー行列で記述できる」
  • 「この事実から量子系の時間発展を記述するシュレーディンガー方程式が導かれる」
  • 「この時間発展における対称性と保存則」
  • アフィン性、トレース保存性、完全正値性、トレース保存完全正値写像(tpcp写像)
  • tcpc写像は、ある補助系を使うと、きれいに書けて、「シュタインスプリング表現」できる
  • トレース保存完全正値写像は、その線形代数的要請から構成するとごちゃごちゃした式表現になるが、それを簡潔に表しており、また、その写像がシンプルな性質を持つことを示しやすくもしてくれる
  • そんなシンプルな性質を表している表現に「クラウス表現」がある
  • この表現から、シュレーディンガー方程式が導出される
  • そして、固有状態、最小固有値に対応する固有状態=基底状態、エネルギー準位などの概念も出てくる

第7章 量子測定

  • 測定にも色々ある
  • 量子測定は物理操作の一つ
  • 物理操作としての特徴は、「系の情報の読み出しを伴う」こと
  • 注目系の量子状態を変化させて「測定できる強さ」に集約することで、非注目系の量子状態が別の状態に変化する
  • 特にその変化においては、「相互に独立」だった2系に量子もつれが発生する
  • 測定は「測定演算子」として記述される
  • 量子測定の分類
    • 一般測定 > 正確な測定 > 理想測定
  • 量子測定に関係すること
    • 量子揺らぎ
    • 演算子の可換性・非可換性と不確定性関係の不等式
    • 小澤不等式

第8章 一次元空間の粒子の量子力学

第9章 量子調和振動子

第10章 磁場中の荷電粒子

第11章 粒子の量子的挙動

  • 自分自身と干渉する
  • 電場や磁場に触れずとも感じる
  • トンネル効果
  • ポテンシャル勾配による反射
  • 離散的束縛状態
  • 連続準位と離散準位の共存

第12章 空間回転と角運動量演算子

第13章 三次元球対称ポテンシャル問題

第14章 量子情報物理学

  • 複製禁止定理:純粋状態に含まれる情報は特別な場合を除いて複製を作れない。。。量子暗号にも使われている原理
  • 量子テレポーテーション量子もつれさせておけば、量子通信によって何かを送らなくても、遠隔地側の状態変化を起こし、結果として情報を伝えることができる
  • 量子計算
    • 回路型量子計算
    • 測定型量子計算

第15章 なぜ自然は「量子力学」を選んだのだろうか

  • 量子力学は、隠れた変数理論の理論よりも強い相関を持つ」
  • 量子力学以外にも、隠れた変数の理論よりも強い相関を持つ数学的な理論は無数にあることが知られている」
  • チレルソン不等式(量子力学
  • ポペスク=ローリッヒ箱:チレルソン限界を超えた、無信号条件を満たす箱
    • 情報因果律というタイプの相対論的な因果律を破ることが知られている
    • 「一般に情報因果律とは、Mを任意の自然数としてアリスがボブにMビットのメッセージを送るとき、そのメッセージからボブが知ることができるアリスのデータに関する情報量はMビットを超えないこと」
  • 量子力学はたくさんある情報や確率の数学理論の一つに過ぎない。なぜ自然がその中から量子力学という体系を選んで自分に実装したのかは現在わかっていない。しかし情報因果律という概念が、もしかしたら量子力学を導出する重要な原理となる可能性がある」
    • 量子力学とその他の情報・確率の理論との違いが「情報因果律」の保持の有無で弁別できるから、このように述べているらしい

ぱらぱら めくる『Projective geometry, toric algebra and tropical computations』のIntroduction

Projective geometry, toric algebra and tropical computations

  • 代数幾何は連立多項式の零点集合を扱う、求解の話
  • トーリック幾何・多様体代数多様体の特別な部分クラスであって、離散データや凸多面体と関係が深い
  • トロピカル幾何は埋め込まれた多様体の組み合わせ的な側面と関係する。そして、埋め込まれた多様体の特定条件下での極限的性質を明らかにする
  • 代数統計・代数計算機計算が可能になるにつれ、シンボル演算を用いた計算機的取り組みが現実的な方法となってきている
  • 代数幾何計算機科学」への着目、と言い換えられる
  • 代数幾何計算機科学」において注目されている2つのトピックがある
  • その理由は代数多様体全般よりも、組み合わせ論的な特徴を持っていることによって計算がしやすいことにある
  • トーリック多様体は解きやすいサブクラスを与える
  • トロピカル化は、トーリック多様体でないために解きにくい問題をトーリック多様体にdegenerateしつつ、大事な不変量を維持してくれると言う意味で、両者は関係する
  • 具体的にこのペイパーが扱っているのは・・・
    • 次元削減が大事である時に、トーリック多様体は、次元削減しやすいと言う特徴がある。組み合わせ構造とそれは関係する
    • トロピカル化による、トーリックdegenerationについて述べる
    • トロピカル化してトーリックdegenerationmするための計算機実装について述べる
    • トーリック多様体の基底を、組み合わせ構造の視点で捉えて、計算機実装が改善されるらしい

代数幾何と量子計算で素数分解

www.nature.com
arxiv.org

  • 具体的な課題として、素数p,qの積がMになるかどうかの判定問題を扱っている
  • 自然数p,qを二進法で表すことで、{0,1}の二値制約のある変数のセットによって、満足すべき式を書き下している
  • その変数セットをy_1,....,y_mとすると、それらに対して、新たにy_i - x_i = 0という制約がある、と考えることで、y_i-x_iイデアルの生成元とする
  • また、制約多項式に登場する、\prod y_i^{a_i}なる単項式については、y_i \times y_jの組み合わせ的に取り扱うことにしている
  • 制約式に現れる単項式の中に登場するすべてのペアy_i \times y_jに対して、追加のx_ky_i y_j - x_k = 0という制約として入れ込む
  • このyとxとからなる制約式はいずれも、二項の式で、単項の差になっている。ここから求まるラジカル・イデアルも同様で、トーリックイデアルの特徴をもっている
  • これに対して、グレブナー基底を計算してやることで、求める解が「理論的」には得られる
  • グレブナー基底では、変数順序を入れて、掃き出し法を適用することにより、y,xの混合生成元のうち、yのみでできた「部分グレブナー基底(とそれに対応するイデアル)を求めることができるから
  • しかしながら、この方式だと、追加変数 x の個数がどんどん増えてしまうので、このままやるのは得策ではない
  • ちなみに、変数 x の個数に応じて量子計算機のビット数が増えてしまうのが、その理由
  • どうするか。。。
  • 制約多項式を「最適化問題的には同じ」だが、字数が低い多項式に変形する作戦を取る。これをNormal formを取る、という。Normal formを取るにあたり、適当な基底多項式を用いるが、このときグレブナー基底を用いることができる
  • また、Normal formを取って、制約式が簡素になっても、変数 x の数が多ければ、量子ビット数負荷は変わらないが、グレブナー基底を参照することで、xの取り換えを行って、現れる x の個数を減らすことができる。特に、トーリックイデアルになっており、この取り換えが容易に進む
  • 結局、トーリックイデアルの都合よさ、グレブナー基底の都合よさを用いて、制約を二次の項の差の式のセットに落とせて、しかも、追加した変数 x を含まない y のみの制約も判明し、最適化問題の解にたどり着く
  • 実際には、問題設定をこのようにした後、量子回路埋め込み問題でさらに工夫をする必要がある模様だが、その点は、現在の興味の対象外

グレブナー基底で連立多項式を解く、量子計算機でグレブナー基底を探す

https://arxiv.org/pdf/1903.08270.pdf

from sympy import *
x,y,z = symbols('x y z')
eqs =[x**2 + y**2 + z**2 - 4, x**2 + 2 * y**2 - 5, x*z-1]
result = groebner(eqs,x,y,z,order='lex')
for eq in list(result):
    print(eq)
    print('\n')
x + 2*z**3 - 3*z
y**2 - z**2 - 1
2*z**4 - 3*z**2 + 1
  • これにより、x^2 + y^2 + z^2=0,x^2 + 2 y^2-5=0,xz-1=0を満足する零点集合がx + 2z^3 -3z =0,y^2-z^2-1=0,2z^4-3z^2+1=0の零点しゅうごうであることがわかる
  • sagemathではどうなるか
R = PolynomialRing(ZZ,3,"xyz",order="lex") # 3変数の整数係数多項式環を作る。3変数はx,y,zでlex(辞書式)順序
x,y,z = R.gens() # x,y,zという変数をpython/sagemathで使うときに、作成した環 R の生成変数として指定する
eq1 = x^2 + y^2 + z^2 - 4 # イデアルの生成式の1番
eq2 = x^2 + 2 * y^2 - 5 # 同2番
eq3 = x * z -1 # 同3番
I = (eq1,eq2,eq3) * R  # イデアル I は、生成式に多項式環の要素すべてをかけたものなので、このようにする
B = I.groebner_basis() # イデアルIのグレブナー基底を計算する
B
[x + 2*z^3 - 3*z, y^2 - z^2 - 1, 2*z^4 - 3*z^2 + 1]
  • これを「見て」みる
  • Rを使って、xyzグリッド点を発生し、連立方程式をだいたい満足する点がかさなることを図示し、また、zの値が0.5のときに、3つの方程式が0に近いかどうかを絶対値で表したときの値が、2つの連立方程式でどのような関係になるかを図示する。値は違うが、0に近い(x,y,z=0.5)座標は共有されることがわかる

f:id:ryamada22:20210602112707p:plain

x <- y <- z <- seq(from=-2,to=2,length=50)
xyz <- as.matrix(expand.grid(x,y,z))
v1 <- xyz[,1]^2 + xyz[,2]^2 + xyz[,3]^2 -4
v2 <- xyz[,1]^2 + 2 *xyz[,2]^2 -5
v3 <- xyz[,1] * xyz[,3] -1

V <- v1**2 + v2**2 + v3**2

library(rgl)

#plot3d(xyz[which(V.<1),])

#plot3d(xyz[which(v1 < 0.0001),])

v1. <- xyz[,1] + 2 * xyz[,3]^2 -3 * xyz[,3]
v2. <- xyz[,2]^2 - xyz[,3]^2 - 1
v3. <- 2 * xyz[,3]^4 - 3 * xyz[,3]^2 + 1

V. <- v1.**2 + v2.**2 + v3.**2

plot(V[which(V<0.5)],V.[which(V<0.5)])

plot3d(xyz[which(V.<0.5),])
spheres3d(xyz[which(V<1),],radius=0.01,color="green")

f:id:ryamada22:20210602112729p:plain

x <- y <- seq(from=-2,to=2,length=50)
xy <- as.matrix(expand.grid(x,y))
z <- 0.5

xyz <- cbind(xy,rep(z,length(xy[,1])))
v1 <- xyz[,1]^2 + xyz[,2]^2 + xyz[,3]^2 -4
v2 <- xyz[,1]^2 + 2 *xyz[,2]^2 -5
v3 <- xyz[,1] * xyz[,3] -1

V <- v1**2 + v2**2 + v3**2

library(rgl)

#plot3d(xyz[which(V.<1),])

#plot3d(xyz[which(v1 < 0.0001),])

v1. <- xyz[,1] + 2 * xyz[,3]^2 -3 * xyz[,3]
v2. <- xyz[,2]^2 - xyz[,3]^2 - 1
v3. <- 2 * xyz[,3]^4 - 3 * xyz[,3]^2 + 1

V. <- v1.**2 + v2.**2 + v3.**2

plot(V[which(V<0.5)],V.[which(V<0.5)])

plot3d(cbind(xyz[,1:2],V))
spheres3d(cbind(xyz[,1:2],V.),radius=0.1,color="green")
  • {0,1}を取る変数があるときに、それを満足する解を探すには、x(x-1)=0を零点集合の満足条件に加えればよい
    • sagemathでやってみる
R = PolynomialRing(ZZ,6,"x1,x2,x3,a2,b1,b2",order="lex")
x1,x2,x3,a2,b1,b2 = R.gens()
eqs = [x1+x2+x3-b1,x1+a2*x2-b2]
eqs = eqs + [x*(x-1) for x in [x1,x2,x3]] # 3変数 x1,x2,x3につき xi(xi-1)=0の条件を付与
eqst = tuple(eqs) # リストをタプルにする
I = eqst * R 
B = I.groebner_basis()
for eq in list(B):
    print(str(eq)+",")
    • グレブナー基底は「変数順序での掃き出し」になっているので、後半には、xi変数は入っていない(最後の7つの式)。これが、x1,x2,x3 \in \{0,1\}を満足する条件の下での、a2,b1,b2の満足条件となる
x1 + x2 + x3 - b1,
x2^2 - x2,
x2*x3 - x2*b1 + x2*b2 - x3 + b1 - b2,
x2*a2 - x2 - x3 + b1 - b2,
x2*b1^2 - 3*x2*b1 + 2*x2 - 4*x3*b1 + 4*x3*b2 + 4*x3 + 2*a2*b1^2 - 4*a2*b1*b2 - 2*a2*b1 + 4*a2*b2 + b1^3 - 4*b1^2*b2 - b1^2 + 4*b1*b2^2 + 4*b1*b2 - 4*b2^2,
x2*b2^2 + x2*b2 - 2*x2 - 4*x3*b1 + 6*x3*b2 + 2*x3 + 3*a2*b1^2 - 6*a2*b1*b2 - 3*a2*b1 + 6*a2*b2 + 2*b1^3 - 6*b1^2*b2 - 4*b1^2 + 6*b1*b2^2 + 6*b1*b2 + 4*b1 - 7*b2^2 - b2,
2*x2*b2 - 2*x2 + 2*x3*b1 - 4*x3 - b1^2 + 3*b1 - 2*b2,
x3^2 - x3,
x3*a2 + 2*x3*b1 - 2*x3*b2 - 2*x3 - a2*b1 + a2*b2 - b1^2 + 2*b1*b2 + b1 - b2^2 - b2,
x3*b1^2 - x3*b1 - 2*x3*b2 - a2*b1^2 + 2*a2*b1*b2 + a2*b1 - 2*a2*b2 - b1^3 + 2*b1^2*b2 + 2*b1^2 - 2*b1*b2^2 - 2*b1*b2 - b1 + 2*b2^2,
2*x3*b1*b2 - 4*x3*b2 - b1^2*b2 + 3*b1*b2 - 2*b2,
6*x3*b1 - 6*x3*b2 - 6*x3 - 3*a2*b1^2 + 6*a2*b1*b2 + 3*a2*b1 - 6*a2*b2 - 2*b1^3 + 6*b1^2*b2 + 3*b1^2 - 6*b1*b2^2 - 6*b1*b2 - b1 + 6*b2^2,
x3*b2^2 - x3*b2 - a2*b2^2 + a2*b2 - b1*b2^2 + b1*b2 + b2^3 - b2,
a2^2*b1^2 - 2*a2^2*b1*b2 - a2^2*b1 + 2*a2^2*b2 + a2*b1^2 - 2*a2*b1*b2 - a2*b1 + 4*a2*b2^2 - 2*a2*b2 - 3*b1^2*b2^2 + 3*b1^2*b2 + 2*b1*b2^3 + 9*b1*b2^2 - 11*b1*b2 - 6*b2^3 - 2*b2^2 + 8*b2,
a2^2*b2^2 - a2^2*b2 - 2*a2*b2^3 + 3*a2*b2^2 - a2*b2 + b2^4 - 2*b2^3 + b2^2,
a2*b1^3 - 3*a2*b1^2 + 2*a2*b1 + b1^3 - 3*b1^2*b2 - 3*b1^2 + 9*b1*b2 + 2*b1 - 6*b2,
a2*b1^2*b2 - 3*a2*b1*b2 + 2*a2*b2 - b1^2*b2^2 + b1^2*b2 + 3*b1*b2^2 - 3*b1*b2 - 2*b2^2 + 2*b2,
2*a2*b1*b2^2 - 2*a2*b1*b2 - 4*a2*b2^2 + 4*a2*b2 + b1^2*b2^2 - b1^2*b2 - 2*b1*b2^3 - b1*b2^2 + 3*b1*b2 + 4*b2^3 - 2*b2^2 - 2*b2,
b1^4 - 6*b1^3 + 11*b1^2 - 6*b1,
b1^3*b2 - 6*b1^2*b2 + 11*b1*b2 - 6*b2,
  • y1+2y2+3y3+3y4-z=0,y1+y+2y3+y4-3=0,yi \in \{0,1\}を満足するような整数zを求め、その最小値を知りたい…
R = PolynomialRing(QQ,5,"y1,y2,y3,y4,z",order="lex")
y1,y2,y3,y4,z = R.gens()
eqs = [y1+2*y2+3*y3+3*y4-z,y1+y2+2*y3+y4-3]
eqs = eqs + [x*(x-1) for x in [y1,y2,y3,y4]]
eqst = tuple(eqs)
I = eqst * R 
B = I.groebner_basis()
lasteq = B[-1]
lasteq
Z = var("z")
solve(Z^3-15*Z^2+74*Z-120,Z)
[y1 + y3 - 1/2*z^2 + 11/2*z - 16, y2 + y3 + z^2 - 10*z + 23, y3^2 - y3, y3*z - 6*y3 - z + 6, y4 - 1/2*z^2 + 9/2*z - 10, z^3 - 15*z^2 + 74*z - 120]

z^3 - 15*z^2 + 74*z - 120

[z == 4, z == 5, z == 6]
    • なので、満足するzのうち、最小なのは4
  • トーリックイデアルグレブナー基底を探す
    • 行列A= \begin{pmatrix} 4 & 5 & 1 & 0\\ 2 & 3 & 0 & 1 \end{pmatrix}が与えられたとき、これがトーリックイデアルを指定する。Aは配置と呼ばれる
    • A \begin{pmatrix}x \\ y \\ z \\ w \end{pmatrix} = \begin{pmatrix} 4x+5y + z \\ 2x + 3y + w \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \end{pmatrix}を考える
    • このような(x,y,z,w)(x,y,z,w) = a(1,0,-4,-2) + b(0,1,-5,-3)=(a,b,-4a-5b,-2a-3b)と、a,bを使って表せる。a,bを整数に取れば、特定の格子点であって、式を満足する点ということになる
    • ここで、(a,b,-4a-5b,-2a-3b)が、例えば、(-2,1,3,1)だったときに、この長さ4のベクトルの正の要素と負の要素を別々に扱って、y z ^3 w - x^2というような2個の単項式の差の形をとる多項式に対応付けることにする
    • このような多項式(が複数あるときに、そ)の零点集合を考えることがトーリックイデアル
    • 整数ベクトルはその要素の符号を気にすることで、2個の単項式の差の式を取れることが、トーリックイデアルの特徴である
    • 今、このように制約のある多項式集合(イデアル)を、いい感じの生成元多項式のセットに結び付けたい
    • グレブナー基底はそういういい感じの生成元多項式のセット
    • グレブナー基底は、単項式に順序をつけることで、取られ方が変わる
  • 量子計算機では、この探索を、整数格子点最適化問題にして、探索する(らしい)
    • 格子点を量子ビット表現して、あるコスト関数を最小にするような格子点を探す問題として求解する
    • コスト関数としては、変数(x,y,z,w)に重みをつけることで、単項式の辞書式順序がコストになるようにする。また、量子計算機が計算しやすいように、辞書式順序がコストになるような値を、(x,y,z,w)の重みベクトルに行列を掛けて変換し、その変換してできたベクトルの二乗ノルムをコスト関数とする
    • この話が、本記事の冒頭で引用したペイパーの節6の話
    • ちなみに、この配置Aにまつわるグレブナー基底をパイソン計算するコードは以下。w,z,y,xの順のグレブナー基底多項式セットとしてw,z,y,x順でのグレブナー基底を求めると、グレブナー基底そのものが得られるし、その多項式セットに、元のイデアルに含まれる多項式を付け加えても同じこと。x,y,z,wの順のグレブナー基底を求めると、もとの設定が単純だったこともあり、2つの多項式が基底として得られている
from sympy import *
x,y,z,w = symbols('x y z w')
eqs =[x*z*w - y,y**2*z**2-x**3,x**4*w-y**3*z,z**4*w**2 - x,y*z**3*w -x**2]
eqs1 = eqs + [x - z**4 * w**2,y - z**5 * w**3,x * y - z**9 * w**5,y - x*z*w]
result = groebner(eqs,w,z,y,x,order='lex')
result1 = groebner(eqs1,w,z,y,x,order='lex')
for eq in list(result):
    print(eq)
    print('\n')

print("----")
for eq in list(result1):
    print(eq)
    print('\n')
print("=====")
result = groebner(eqs,x,y,z,w,order='lex')
result1 = groebner(eqs1,x,y,z,w,order='lex')
for eq in list(result):
    print(eq)
    print('\n')
print("----")
for eq in list(result1):
    print(eq)
    print('\n')
w**2*z**4 - x


w*y*z**3 - x**2


w*x*z - y


w*x**4 - y**3*z


-x**3 + y**2*z**2


----
w**2*z**4 - x


w*y*z**3 - x**2


w*x*z - y


w*x**4 - y**3*z

続きを読む

指数型分布族・クロネッカー積・トロピカル化で極限、指数型分布族と射影空間、トロピカル多様体・指数和

  • 文献メモ
  • Dimension of Marginals of Kronecker Product Models Geometry of hidden-visible products of exponential families

arxiv.org

  • TROPICAL VARIETIES FOR EXPONENTIAL SUMS

https://www.math.tamu.edu/~rojas/c.pdf

  • Exponential Varieties

https://arxiv.org/pdf/1412.6185.pdf

  • A geometry on the space of probabilities II. Projective spaces and exponential families

ems.press

ぱらぱらめくる『トーリックイデアルの20年』

http://www.math.sci.hokudai.ac.jp/sympo/100809/pdf/osugi.pdf

  • トーリックイデアルが興味深い対象として挙げられる理由3つ
    • 凸多面体の三角形分割が、トーリックイデアルのイニシャルイデアルと対応する(三角形分割には団代数が付随し、そこにはローラン多項式な団変数があるが、トーリックイデアルの構成にもローラン多項式が登場する。コーラン多項式は「多項式環」の仲間ということで、「環」の「部分集合」で「代数的性質をもつもの」。この話にはルート系なども出てくるが、そもそも団代数はルート系の本体のような意味もあり、そういう意味でもつながっている
    • トーリックイデアルにはグレブナー基底が取れて、これにより、整数計画問題の解法がもたらされた
    • 同じくグレブナー基底をマルコフ基底(空間をうろうろするための一歩の集合)として分割表の取りうる空間をうろうろすることができて、それによって分割表検定のための情報が得られる
  • 1 トーリックイデアル
    • そもそも、イデアルって…
    • 「数」の抽象的な概念なので、なじみの深い「数」における「イデアル」の位置づけを確認する
    • 整数全体の集合として「部分集合に z=3の倍数の集合」というようなものが取れる。この部分集合はそれなりに演算に関して閉じている(3の倍数を足し合わせても、相変わらず3の倍数である、とか)。そういういい感じの性質を持った部分集合を考えたい
    • z=3の倍数の集合を考えた時、zとして素数を取るのも悪くない発想。なので、イデアルには、「いい感じの取り方・取られ方」があって、それは素数的な意味合いもあるらしい
    • 整数全体の部分集合を考えた。そのとき、いい感じの性質・演算で閉じているというものを考えた。その代数的性質が「環」なので、「倍数のようなものの一般化したもの」を作り出すことは、「環」に対して行うのがよい。…とそういうことらしい
    • 大きな環としてローラン多項式環 X[T,T^{-1}] = K[t_1^{\pm 1},t_2^{\pm 1},...,t_d^{\pm 1}]を取る
    • その部分多項式集合を構成する種として、特定の単項式の集合\{T^{a1},T^{a2},...T^{an}\}, (T^{ai} = \prod_{p=1}^d t_p^{ai_p}を取る。ただし、a_i = (ai_1,ai_2,...,ai_d) \in Z^dのようにaiはd次元空間の格子点
    • この種となる単項式を自由に決めると、「いい感じの取り方」になっていないので、「制約」が必要
    • その制約として、n個のd次元格子点\{a1,...an\}は原点を通らないd次元空間超平面上にあるというものを定める。w \cdot ai=1;i=1,2,...,nとなるw(d次元実ベクトル)が存在する、とも言い換えられる制約である
    • このような制約のことを、\{ai\}\subset Z^dR^dの配置であると呼ぶ
    • このような制約を持った種になる単項式が構成する多項式集合は semigroup ringになると言う。これをトーリック環K[A]と呼ぶ(Aは配置の要素 aiの集合
    • このトーリック環に伴うイデアル、「トーリックイデアル」を定義するにあたり、もう一つ別の多項式環を準備する
    • Tを使った多項式環はd変数だったが、トーリック環の構成に用いられた、もう一つの自然数、n(格子点の数n)

を用いて、n変数多項式環K[X]考える(x_1,...,x_n)

    • このn変数多項式環の要素をトーリック環の要素に対応付ける。\pi (x_i) = T^{a_1}なる関係にする
    • n変数多項式環はn変数の多項式の全体であるのに対して、トーリック環の要素は制約を持つ単項式が種となった多項式の集合なので、対応を取るにも1対1対応は取れない。うまく取ると、K[X]からK[A]への全射になる。全射なので、K[A]の原点に対応するK[X]は集合になる(カーネル)。この全射カーネルのことをAのトーリックイデアルと言う
    • 具体例を考える
    • A = \begin{pmatrix}1 & 1 & 1 & 0 & 0 & 0  \\ 0 & 0 & 0 & 1 & 1 & 1 \\ 1 & 0 & 0 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & 1 & 0 & 0 & 1 \end{pmatrix} ... d = 5, n=6
      • 配置であることを確認。w = (0.5,0.5,...,0.5)を取ると、 w A = (1,1,1,1,1,1)となっている
      • また、d=5次元座標を (t1,...,t5)とすれば、Aの6個の列ベクトルはすべてt1 + t2 + ... + t5 = 2を満足するという意味で、d次元超平面上の点である
    • このAに対して、トーリック環 K [ A ] = K [ t_1t_3,t_1t_4,t_1t_5,t_2t_3,t_2t_4,t_2t_5 ] が定まる(Aの第1列ベクトルでは、第1、第3成分がそれぞれ1なのでt_1^1t_3^1となっている)
    • このトーリック環のトーリックイデアルI_A = < x_1x_5-x_2x_4,x_1x_6-x_3x_4,x_2x_6-x_3x_5>だと言う
      • x_1x_5-x_2x_4を例に取る。\pi(x_1) = T^{a1} = t_1t_3, \pi(x_5) = t_2t_4,\pi(x_2) = t_1t_4,\pi(x_4) = t_2t_3であるから、多項式環K[X]の要素x_1x_5 - x_2x_4に対応するトーリック環の要素はt_1t_3 \times t_2t_4 - t_1t_4 \times t_2t_3 = 0となっており、確かに、x_1x_5- x_2x_4全射\piカーネルに含まれている
      • トーリクイデアルの性質として、次のことも知られる
        • トーリックイデアルは素イデアルである。また、2項式で生成される。その生成ルールはI_A = < p -q \in K[X] | \pi(p) - \pi(q)  >ただし、p,qは単項式。これは\pi(p) = \pi(x_1x_5) = t_1t_3t_2t_4であることに対応している
        • Aを行列とみなすと
          • I_A = < X^u - X^v \in K[X] | u,v \in Z^n_{\ge 0}, Au = Av>
          • I_A = < X^{u^+} -X^{u^-} \in K[X] | u \in Z^n, Au = 0>ただしu^+はuの正の部分、u^-はuの負の部分
          • これを実例でやってみる。 u= (1,0,0,0,1,0),v = (0,1,0,1,0,0)とすると、A u  = A v = (1,1,1,1,0)であり、これに対応するX^u-X^v = x_1x_5 - x_2x_4である。また、u=(1,-1,0,-1,1,0)とすると、Au=(0,0,0,0,0)であり、X^{u^+} - X^{u^-} = X^{(1,0,0,0,1,0)} - X^{(0,1,0,1,0,0)} = x_1x_5- x_2x_4となる。このベクトルの成分の符号で分配する計算は団代数の変数変異ルールと通じるものになっている。ちなみに、トーリックイデアルは、x_iとその像T^{ai}とを考えた時に、像がT^{ai}になるK[X]の要素とx_iとの差で表される多項式の集合でもあるらしい
  • 2 トーリックイデアルグレブナー基底
    • トーリックイデアルは多変数多項式。今、変数に順序を定めることで、単項式にも順序を定めることができる。それを「変数の順序の下での、単項式順序」と言う
    • 単項式順序が定まると、多項式の各項にも順序ができる
    • イデアル多項式のそれぞれにも、「一番」の単項式を選ぶことができる。この「一番」単項式(イニシャルな単項式)を集めたものを、イデアルのイニシャルイデアルと言う
    • イデアルの部分集合をとったときに、それぞれの要素のイニシャルな単項式を集めたものが、イデアルのイニシャルイデアルになっているとき、そのイデアルの部分集合をグレブナー基底と言う。そしてグレブナー基底イデアルを生成するのだと言う(ちゃんとイデアルの要素を全部取れば、そのどれかには、このイデアルを構成するための、単項がイニシャル単項式として使われていないとイデアルとしての振る舞いができない、ということの裏返し(だろう))
  • 3 凸多面体の三角形分割
    • 配置Aが張る凸包を考え、その三角形分割(単体的複体とみなす)を取る。そういう意味での「三角形」への分割が、配置Aに変数順序を定めて取り出したトーリックイデアルのイニシャルイデアルと対応づくごとが証明されているという
    • リンク先文書では細かいことが書いていないのだが…
  • 4 整数計画問題への応用
    • 整数最適化問題の条件を整数長方形行列として表現する
    • 必ずしもこの長方形行列は「配置」でなくてもよい
    • この長方形行列のトーリックイデアルは定義できる
    • したがってグレブナー基底も定まる
    • 多項式(変数の整数乗で表されたものになっている)なので、その割り算や余りを扱うことで、求めたい最適解が多項式の割り算・余りとして取り出せる
  • 5 分割表の検定への応用
    • 周辺度数を固定して分割表のセルの値(整数値)を色々と変えることは、モンテカルロな検定方法の1つ
    • 分割表のあるセルの値を増やすことと別のセルの値を減らすことは、周辺度数制約のために相互依存している
    • したがって、分割表のどのセルを増やしどのセルを減らすかのパターンが決まって来る
    • このパターンがマルコフ基底によって張られる
    • マルコフ基底はトーリックイデアルと関係しているという話
    • トーリックイデアルを表す2項の差の形をした多項式の情報を使って、マルコフ基底(分割表と同じ形をした、整数値アレイ)が決まる

ぱらぱらめくる『Algebraic Statistics, Graduate Studies in Mathematics 194』

bookstore.ams.org

  • 目次を眺めるとかなりのことがわかる

Chapter 1 Introduction (Discrete Markov Chain)

  • 大事なのは、次の対応を理解すること
確率・統計 代数・幾何
確率分布
統計モデル (Semi)Algebraic set
離散指数型分布族 トーリック多様体
Conditional Inference Lattice points in polytopes
最尤推定 Polynomial optimization
モデル選択 Geometry of singularities
多変量ガウス分布モデル Spectrahedral geometry
系統樹モデル テンソルネットワーク
MAP estimates トロピカル幾何
    • 確率分布 は 点
      • 特定の確率質量分布・確率密度分布は情報幾何的に点である。それと同じこと
    • 統計モデル は (Semi)-algebraic set
      • 例えばm変数の同時分布(全変数が{0,1}を取るような場合には、2^mの場合がある)。そこに、X_iの値が、X_{i-1}にのみ依存し、X_{j},j < i-1には依存しないというようなモデル(Markov chain model)を考えると、そのモデルには、2^mの場合の確率質量の間に等式(と不等式)が成立することが示せる。これが「モデル」を定めることで「式表現~algebraic」のセットを満足する点の集合が対象になる、という風に言い換えられる
    • 離散指数型分布族 は トーリック多様体
      • トーリック多様体は「強凸有理多面錐(cone)の集まりである扇(fan)(Wikipedia)

トーリック多様体 - Wikipedia

      • まったくわからないが・・・、多分、離散の場合は、有限個の連立線形不等式になっており、それがトーリック多様体だ、、、ということなのではないか
    • 最尤推定 は Polynomial optimization
      • Markov chain modelでは、P(X_i=x_i | X_{i-1} = x_{i-1}が重要になるが、この(1つ前の変数に条件づいた、条件付確率を、代数式の変数とすれば、確率は多項式になる。したがって、「確率~尤度」の最大化は多項式の最適化と同じ
      • しかも、最適化は(偏)微分して0が最尤解。これが連立有理式になり、それが解けることもあるが、解けない場合もある
      • "Amazingly a complete, beautiful, yet still mysterious classification of models with rational formulas for maximum likelihood estimates exists and has ermarkable connections to other areas in algebraic geometry" ... Chapter 7
      • Real Algebraic Varietyというのは、連立実等式のセット。Semi-real... は連立実等式と連立実不等式のセット・・・多面体になる
    • MAP estimates とトロピカル幾何・トロピカル代数
      • MAP 推定の中に、言語処理分野(音声を聞いて文字列に直す、とか)がある。その処理では、音素を辺にし、音素列をパスにしたようなグラフを構成し、ある音素列が与えられたときに、合致することを「適切なパス」の存在に対応付ける。そして、その「パスを選ぶ」ことが「対応する文字列」の出力に対応するように作ってある。例えば、"akada"という音素列(アルファベットが音素であるとする)に対して、a-k-a-d-aというパスが存在し、そのパスを通ったら「赤だ」という出力がなされるようなグラフのこと。実際には、同じ音素列を聞いても、どんな文字列が適切かは「選」ばないといけないが、その「選ぶ基準がMAP = Maximum a posteriori esimation」。これは、「最適パス」探索なのだが、この方法の良いところは、WFSTという仕組みがあって、音素列・文字列が長くなっても、グラフ自体を操作して簡約化できたりすることがある。また、このグラフ上で最適パスを見つけるアルゴリズム「Viterbi ビタビ」がある。ただし、ビタビアルゴリズムは優秀な動的計画法アルゴリズムだが、言語処理分野は巨大な探索空間を相手にするので、もっと効率化する必要がある。その効率化に現れるのが、ビタビの「尤度・確率」計算のトロピカル演算化である。トロピカル演算の軽さと、トロピカル演算の最適化問題が探索しやすいこととが、その「キモ」らしい
      • WFSTについてはこちら
      • ビタビとそのトロピカル演算についてはこちら
    • ちなみに、トロピカル化は量子力学古典力学的に引き戻す作用も持っている。量子力学では状態が複素関数であるところ、それを古典(実関数であり、理想気体のように要素間独立性が仮定できたり、絶対零度のような極限状態などへの近似を含む)にすることで、複素数に特有な「位相」を吹き飛ばすことができる。その位相を吹き飛ばす関数として、\log{複素数} = \log{|z|} + i \log{\theta}のような対数関数が活躍する。トロピカル化では、対数化関数が使われるが、それはそういう話。また、量子力学的な状態を「複素・代数的トーラス」がたくさん集まったもの(かけ合わせて作った、複素高次元トーラス)と見たときに、トロピカル化は、それを実高次元空間に移す関数として働く。また、機械学習の文脈では、(制限)ボルツマンマシンは学習を熱力学的に扱う仕組みだが、そこでもトロピカル化が使われるのは、熱力学~量子力学~そのトロピカル化による古典力学化と言う関係から理解することができる。また、トロピカル化によって、実格子とその上の凸包・整数問題化がなされることともつながる。その点でRBM(制限付きボルツマンマシン)とMAP推定との両方にトロピカル化が出てくることは、納得がいく・・・Geometry in the tropical limit参考ペイパー(Restricted Boltzmann Machine)

Chapter 2 Probability Primer (確率とは、ランダム変数とは…)

Chapter 3 Algebra Primer (代数多様体イデアルグレブナー基底、Computational Algebra、射影空間・射影幾何)

Chapter 4 Conditional Independence (CI) (CI models、Primary Decomposition)

Chapter 5 Statistics Primer (統計モデル、データの型、パラメタ推定・仮説検定・ベイズ統計)

Chapter 6 指数型(分布)族 (Exponential families、実代数幾何、代数的指数型(分布)族)

  • いわゆる指数型分布族表現を離散確率変数に用いる
  • 確率モデルは(r-1)-正単体内部に相当するとみることもできるが、指数型分布族にすると、(r-1)-次元実空間全体と見える
  • この空間が確率モデルの族であり、その点が特定の確率モデル
  • 確率モデルにおける、観測データの尤度は、離散型確率変数の場合、有理多項式になる。分母は確率質量の総和が1であるとの制約を満足するための式に相当する
  • 今、この分母の存在を射影幾何的に考えると、分子は斉次座標系のようなものになる
  • この分子の式は、変数の(非負)整数乗の掛け合わせになっており、「単項式」。すべての変数を等倍しても、同じモデルを表しているが、その特徴は、単項式イデアル。トーリックイデアルは、単項式の差によって構成されるイデアルのこと
    • ここで「単項式のセット」→「トーリックイデアル
    • この取り出しにおいて、「十分統計量が等しくなるような、2つの単項式の引き算に相当する式(単項式の差の式)」がトーリックイデアルを生成するという意味で、「統計」が「トーリックイデアル代数学」とつながる・・・ここに2x2小行列式が登場したりもする
  • トーリックイデアルグレブナー基底を与えると「よいこと」があり、代数アプリで実装されている

Chapter 7 Likelihood inference (スコア等式の代数的解法、尤度の幾何、凸尤度関数、尤度比検定)

Chapter 8 The Cone of Sufficient Statistics (多面体)

Chapter 9 Fisher's exact test (条件付き推定、マルコフ基底、Graver基底、格子酔歩とPrimary decomposition、サンプリング)

Chapter 10 Bounds on Cell Entries (Integer Programming、グレブナー基底、Quotient Ring、Linear programming relaxation)

Chapter 11 Exponential Random Graph Models

Chapter 12 Design of Experiments (Computations with the Ideal of Points、グレブナー扇)

Chapter 13 Graphical Models (CI Description of Graphical Models)

Chapter 14 Hidden Variables (EMアルゴリズム)

Chapter 15 Phylogenetic Models (木と分岐)

Chapter 16 Identifiability

Chapter 17 Model Selection and Bayesian Integrals (Bayesian integrals and sngularitiyes、Information criteria)

Chapter 18 MAP Estimation and Parametric Inference (HMM、Normal Fans、Polytope algebra・Polytope propagation)

Chapter 19 Finite Metric Spaces (Metric Space、Cut polytope、トーリック多様体)