六、物理中的张量问题
1. 经典热力学基础 对于经典平衡态,系综理论的核心是:对于一个全同粒子构成的系统,该系统处于某一种状态(或称为构型,记为( s 1 , s 2 , ? s_1,s_2,\cdots s1?,s2?,?),表示由多个粒子的状态组成的一个整体的状态)的概率P P P ,由该状态的能量E E E 决定(设玻尔兹曼常数与普朗克常数为 1),也就是处于状态 ( s 1 , s 2 , ? s_1,s_2,\cdots s1?,s2?,?) 的概率满足:
P ( s 1 , s 2 , ? ? ;
β ) = e ? β E ( s 1 , s 2 , … ) Z P\left(s_{1}, s_{2}, \cdots ;
\beta\right) =\frac{e^{-\beta E\left(s_{1}, s_{2}, \ldots\right)}} {Z} P(s1?,s2?,?;
β)=Ze?βE(s1?,s2?,…)?
其中的参数:
- β = 1 T \beta=\frac{1}{T} β=T1? 为倒温度,在机器学习中也称为超参数,通过人为控制,选择最优的超参数可以 获得最优的结果
- Z Z Z 为配分函数,是所有可能状态的概率之和,即Z = ∑ s 1 , s 2 , ? e ? β E ( s 1 , s 2 , ? ? ) Z=\sum_{s_1,s_2,\cdots} e^{-\beta E(s_1,s_2,\cdots)} Z=∑s1?,s2?,??e?βE(s1?,s2?,?)
- E ( s 1 , s 2 , ? ? ) E(s_1,s_2,\cdots) E(s1?,s2?,?) 表示能量和状态之间的函数关系,这个能量和我们平常说的不一样,它只是表示处于某种状态的模型,该模型可以表示这些状态之间的关系
O ( β ) = ∑ s 1 , s 2 , ? P ( s 1 , s 2 , ? ? ; β ) O ( s 1 , s 2 , ? ? ) O(\beta)= \sum_{s_{1}, s_{2}, \cdots} P\left(s_{1}, s_{2}, \cdots ; \beta\right) O\left(s_{1}, s_{2}, \cdots\right) O(β)=s1?,s2?,?∑?P(s1?,s2?,?; β)O(s1?,s2?,?)
其中:
- P ( s 1 , s 2 , ? ? ; β ) P\left(s_{1}, s_{2}, \cdots ; \beta\right) P(s1?,s2?,?; β) 表示处于该状态下的概率
- O ( s 1 , s 2 , ? ? ) O\left(s_{1}, s_{2}, \cdots\right) O(s1?,s2?,?) 表示在当前状态下物理观测量的值
推出 推出 推出 关于状态的函数 E 配分函数 Z 关于状态的概率 P 物理观测量 O 的平均值 可见,我们建立描述给定物理系统热力学性质的关键就是建立能量E E E 与状态的之间的函数关系,即建立函数E ( s 1 , s 2 , ? ? ) E(s_1,s_2,\cdots) E(s1?,s2?,?)
下面我们来看一个关于能量和状态的函数模型的实例:ISING 模型。
Ising模型的提出是为了解释铁磁物质的相变,即磁铁在加热到一定临界温度以上会出现磁性消失的现象,而降温到临界温度以下又会表现出磁性。
Ising模型假设铁磁物质是由一堆规则排列的小磁针构成,每个磁针只有上下两个方向(自旋)。相邻的小磁针之间通过能量约束发生相互作用,同时又会由于环境热噪声的干扰而发生磁性的随机转变(上变为下或反之)。涨落的大小由关键的温度参数决定,温度越高,随机涨落干扰越强,小磁针越容易发生无序而剧烈地状态转变,从而让上下两个方向的磁性相互抵消,整个系统消失磁性,如果温度很低,则小磁针相对宁静,系统处于能量约束高的状态,大量的小磁针方向一致,铁磁系统展现出磁性。
由于Ising模型的高度抽象,人们可以很容易地将它应用到其他领域之中。例如,人们将每个小磁针比喻为某个村落中的村民,而将小磁针上、下的两种状态比喻成个体所具备的两种政治观点(例如对A,B两个不同候选人的选举),相邻小磁针之间的相互作用比喻成村民之间观点的影响。环境的温度比喻成每个村民对自己意见不坚持的程度。这样,整个Ising模型就可以建模该村落中不同政治见解的动态演化。
例如,对于如下所示的铁磁模型,假设第i i i 个节点是一个小磁针(或者一个村民),每个小磁针有上下两种状态(村民有两种相反的意见),我们用s i s_i si? 表示这个状态,我们用+ 1 +1 +1 表示向上 , ? 1 -1 ?1 表示向下,相邻的两个小磁铁可以互相作用,即
s i = { + 1 ? 1 s_{i}=\left\{\begin{array}{l} +1 \\ -1 \end{array}\right. si?={+1?1?
文章图片
我们可以用总能量的概念来刻画这种相互作用,我们假设,如果两个相邻的小磁针状态一致,系统的总能量减一;如果状态不一致,总能量加一。外界还可能存在磁场,如果小磁针方向和磁场一致,系统的能量也会降低,那么总能量可以表示为:
E { s i } = ? J ∑ ? i , j ? s i s j ? H ∑ i N s i E_{\left\{s_{i}\right\}}= -J \sum_{\langle i, j\rangle} s_{i} s_{j} -H \sum_{i}^{N} s_{i} E{si?}?=?J?i,j?∑?si?sj??Hi∑N?si?
其中J J J 称为对应连接的耦合系数, E { s i } E_{\left\{s_{i}\right\}} E{si?}? 表示系统处于状态组合{ s i } \{s_i\} {si?} 下的总能量。H H H 为外界磁场的方向,如果外界磁场向上H H H 为正,否则为负。如果小磁针的方向与外场一致,则总能量减少一个单位。
上面三角铁磁的所有可能状态的组合为:
{ s i } = { + 1 + 1 + 1 , + 1 + 1 ? 1 , + 1 ? 1 + 1 , + 1 ? 1 ? 1 , ? 1 ? 1 + 1 , ? 1 + 1 + 1 , ? 1 + 1 ? 1 , ? 1 ? 1 ? 1 } \begin{aligned}\left\{s_{i}\right\}=\{ &+1+1+1,+1+1-1,+1-1+1,\\ &+1-1-1,-1-1+1,-1+1+1,\\ &-1+1-1,-1-1-1\} \end{aligned} {si?}={?+1+1+1,+1+1?1,+1?1+1,+1?1?1,?1?1+1,?1+1+1,?1+1?1,?1?1?1}?
这八种状态组合,每个都对应一个唯一的能量值,他们分别为:
E { + 1 + 1 + 1 } = ? J ( 1 × 1 + 1 × 1 + 1 × 1 ) ? H ( 1 + 1 + 1 ) = ? 3 J ? 3 H , E { + 1 + 1 ? 1 } = ? J ( ( 1 × 1 ) + ( 1 × ( ? 1 ) ) + ( ( ? 1 ) × 1 ) ) ? H ( 1 + 1 ? 1 ) = J ? H E { + 1 ? 1 + 1 } = J ? H , E { + 1 ? 1 ? 1 } = J + H , E { ? 1 + 1 + 1 } = J ? H , E { ? 1 + 1 ? 1 } = J + H , E { ? 1 ? 1 + 1 } = J + H , E { ? 1 ? 1 ? 1 } = ? 3 J + 3 H \begin{array}{l} E_{\{+1+1+1\}}=-J(1 \times 1+1 \times 1+1 \times 1)-H(1+1+1)=-3 J-3 H, \\E_{\{+1+1-1\}}=-J((1 \times 1)+(1 \times(-1))+((-1) \times 1))-H(1+1-1)=J-H \\ E_{\{+1-1+1\}}=J-H, \\ E_{\{+1-1-1\}}=J+H, \\ E_{\{-1+1+1\}}=J-H, \\ E_{\{-1+1-1\}}=J+H, \\ E_{\{-1-1+1\}}=J+H, \\ E_{\{-1-1-1\}}=-3 J+3 H \end{array} E{+1+1+1}?=?J(1×1+1×1+1×1)?H(1+1+1)=?3J?3H,E{+1+1?1}?=?J((1×1)+(1×(?1))+((?1)×1))?H(1+1?1)=J?HE{+1?1+1}?=J?H,E{+1?1?1}?=J+H,E{?1+1+1}?=J?H,E{?1+1?1}?=J+H,E{?1?1+1}?=J+H,E{?1?1?1}?=?3J+3H?
系统中小磁针的相互之间以及与外场方向一致的话,系统的能量最低,用村民的比喻来说,系统的能量相当于村民观点存在冲突的数量,外场可以看成是外界的宣传效果对村民观点的影响,所以整体的能量越低,系统越和谐。
通过对 ISING 模型的简单介绍,我们可以理解到,能量和状态的函数反映了不同状态之间的关联度,可以呈现出整个系统的某种特征。
2. 量子格点模型 量子系统的热力学由 有限温密度算子 给出,其表示为一个算符:
ρ ^ ( β ) = e ? β H ^ Z \hat{\rho}(\beta)=\frac{e^{-\beta \hat{H}} }{Z} ρ^?(β)=Ze?βH^?
其中:
- H ^ \hat{H} H^ 为系统哈密顿量,是一个算子
- Z Z Z 为量子配分函数,且Z = ∑ s 1 , s 2 , ? e ? β E ( s 1 , s 2 , ? ? ) Z=\sum_{s_{1}, s_{2}, \cdots} e^{-\beta E\left(s_{1}, s_{2}, \cdots\right)} Z=∑s1?,s2?,??e?βE(s1?,s2?,?)
E ( s 1 , s 2 , ? ? ) = ? s 1 s 2 ? ∣ H ^ ∣ s 1 s 2 ? ? ? E\left(s_{1}, s_{2}, \cdots\right)= \left\langle s_{1} s_{2} \cdots |\widehat{H}| s_{1} s_{2} \cdots\right\rangle E(s1?,s2?,?)=?s1?s2??∣H ∣s1?s2???
与经典热力学相同,定义处于状态∣ s 1 s 2 ? ? ? |s_1s_2\cdots\rangle ∣s1?s2??? 的概率为:
P ( s 1 , s 2 , ? ? ; β ) = e ? β E ( s 1 , s 2 , ? ? ) Z P\left(s_{1}, s_{2}, \cdots ; \beta\right)= \frac{e^{-\beta E\left(s_{1}, s_{2}, \cdots\right)}} {Z} P(s1?,s2?,?; β)=Ze?βE(s1?,s2?,?)?
我们将能量表达式代入得到量子配分函数:
Z = ∑ s 1 s 2 ? e ? β ( s 1 s 2 ? ∣ H ^ ∣ s 1 s 2 ? ? ) Z= \sum_{s_{1} s_{2} \cdots} e^{-\beta\left(s_{1} s_{2} \cdots|\hat{H}| s_{1} s_{2} \cdots\right)} Z=s1?s2??∑?e?β(s1?s2??∣H^∣s1?s2??)
根据基矢的正交完备性∑ s 1 s 2 ? ∣ s 1 s 2 ? ? ? ? s 1 s 2 ? ? ∣ = I \sum_{s_{1} s_{2} \cdots} \left|s_{1} s_{2} \cdots\right\rangle \left\langle s_{1} s_{2} \cdots\right|=I ∑s1?s2???∣s1?s2????s1?s2??∣=I 可得:
Z = ∑ s 1 s 2 ? ? s 1 s 2 ? ∣ e ? β H ^ ∣ s 1 s 2 ? ? ? = Tr ? ( e ? β H ^ ) Z=\sum_{s_{1} s_{2} \cdots} \left\langle s_{1} s_{2} \cdots \left|e^{-\beta \hat{H}} \right| s_{1} s_{2} \cdots\right\rangle =\operatorname{Tr}\left(e^{-\beta \hat{H}}\right) Z=s1?s2??∑??s1?s2??∣∣∣?e?βH^∣∣∣?s1?s2???=Tr(e?βH^)
多个热力学量可由配分函数关于温度的导数求得,因此,求解配分函数是求解热力学问题的关键。
当系统温度极低时( β = 1 T → ∞ \beta=\frac{1}{T}\rightarrow\infty β=T1?→∞,即T → 0 T \rightarrow 0 T→0),系统密度算符ρ ^ ( β ) \hat{\rho}(\beta) ρ^?(β) 由哈密顿量最小本征值对应的本征态给出(也是密度算符本征值最大的态),该本征态称为系统的 基态 ,记为∣ g ? |g\rangle ∣g? ,其对应的本征值称为 基态能 ,记为E g E_g Eg?。即
lim ? β → ∞ e ? β H ^ Z = ∣ g ? ? g ∣ \lim _{\beta \rightarrow \infty} \frac{e^{-\beta \hat{H}} }{Z} =|g\rangle\langle g| β→∞lim?Ze?βH^?=∣g??g∣
其中H ^ ∣ g ? = E g ∣ g ? \hat{H}|g\rangle=E_{g}|g\rangle H^∣g?=Eg?∣g? 。
从上面我们可以推导出,基态的观测量满足:
O ( β ) = Tr ? ( O ^ e ? β H ^ Z ) = ? g ∣ O ^ ∣ g ? O(\beta)=\operatorname{Tr}\left(\frac{\hat{O} e^{-\beta \hat{H}} }{Z}\right)=\langle g|\hat{O}| g\rangle O(β)=Tr(ZO^e?βH^?)=?g∣O^∣g?
我们定义基态求解问题为:求解哈密顿量对应矩阵的最低本征态及其本征值,对应于如下的优化问题:
E g = min ? ? g ∣ g ? = 1 ? g ∣ H ^ ∣ g ? E_{g}= \min _{\langle g \mid g\rangle=1} \langle g|\widehat{H}| g\rangle Eg?=?g∣g?=1min??g∣H ∣g?
所以我们的问题就转换成为怎么求得哈密顿量对应的最低本征态及本征值。
3. 基态计算 通过完整的哈密顿量计算基态 我们定义磁场中二自旋的海森堡模型,其哈密顿量为:
H ( h α ) = ∑ α = x , y , z [ s ^ 1 α s ^ 2 α + h α ( s ^ 1 α + s ^ 2 α ) ] H\left(h^{\alpha}\right)= \sum_{\alpha=x, y, z} \left[\hat{s}_{1}^{\alpha} \hat{s}_{2}^{\alpha}+ h^{\alpha}\left(\hat{s}_{1}^{\alpha}+ \hat{s}_{2}^{\alpha}\right)\right] H(hα)=α=x,y,z∑?[s^1α?s^2α?+hα(s^1α?+s^2α?)]
其中h α h^\alpha hα 定义为沿自旋α \alpha α 方向的外磁场的大小。
我们考虑自旋1 2 \frac{1}{2} 21? ,选择本征态s ^ 2 z \hat{s}_{2}^{z} s^2z? 为本征态作为基矢,设h x = h y = 0 , h z = h h^x=h^y=0,h^z=h hx=hy=0,hz=h , H ^ \hat{H} H^ 不能写成多个单体算符的直积。我们将每个算符都带入,计算整个哈密顿算符的系数,那么其系数为2 × 2 × 2 × 2 2 \times 2 \times 2 \times 2 2×2×2×2 的张量或4 × 4 4\times 4 4×4 的矩阵,其基态的计算步骤为:
- 获得各个自旋算符的矩阵。
- 计算s ^ 1 α s ^ 2 α \hat{s}_{1}^{\alpha} \hat{s}_{2}^{\alpha} s^1α?s^2α? ,其结果为2 × 2 × 2 × 2 2 \times 2 \times 2 \times 2 2×2×2×2 , s ^ 1 α \hat{s}_{1}^{\alpha} s^1α? 与s ^ 2 α \hat{s}_{2}^{\alpha} s^2α?代表分别作用到第一个粒子和第二个粒子的算符。
- 计算s ^ 1 α I 2 \hat{s}_{1}^{\alpha}I_2 s^1α?I2? 与I 1 s ^ 2 α I_1\hat{s}_{2}^{\alpha} I1?s^2α? , I n I_n In? 表示作用到第n n n 个粒子上的单位矩阵。其结果为2 × 2 × 2 × 2 2 \times 2 \times 2 \times 2 2×2×2×2 的张量。
- 将各项求和得到哈密顿量的系数张量,我们可以对该张量求解其本征值最低的本征态。
退火算法计算基态 想要计算基态,我们不一定要获得完整的哈密顿量,我们可以使用退火算法通过一次一次增大倒温度得到基态。退火算法计算基态的原理为当倒温度趋于无穷大(即温度趋于零)时,将密度算子对任意初态∣ φ ? |\varphi\rangle ∣φ? 进行投影,可以得到基态∣ g ? |g\rangle ∣g? ,即:
lim ? β → ∞ e ? β H ^ ∣ φ ? → ∣ g ? \lim _{\beta \rightarrow \infty} e^{-\beta \hat{H}}|\varphi\rangle \rightarrow|g\rangle β→∞lim?e?βH^∣φ?→∣g?
因此我们可以初始选择一个一定量大小的β \beta β,然后将密度算符不断的作用到∣ φ ? |\varphi\rangle ∣φ? 上面直到收敛,每次一作用都表示增加一倍的β \beta β,当作用的次数够多时,也就是倒温度趋于无穷大,那么得到的这个状态就是基态∣ g ? |g\rangle ∣g? 。
对于一个大的哈密顿量,我们可以将其转换为若干个局域哈密顿量相加,通过上面的密度算符,我们使用数学原理Trotter-Suzuki 将一个大的哈密顿量转换为几个密度算符相乘,例如,对于算符A ^ \hat{A} A^ 与B ^ \hat{B} B^ ,有如下关系:
e τ ( A ^ + B ^ ) = e τ A ^ e τ B ^ + τ 2 [ A ^ , B ^ ] + ? e^{\tau(\hat{A}+\hat{B})} =e^{\tau \hat{A}} e^{\tau \hat{B}}+ \tau^{2}[\hat{A}, \hat{B}] +\cdots eτ(A^+B^)=eτA^eτB^+τ2[A^,B^]+?
当A ^ \hat{A} A^ 与B ^ \hat{B} B^ 对易时,有e τ ( A ^ + B ^ ) = e τ A ^ e τ B ^ e^{\tau(\hat{A}+\hat{B})}=e^{\tau \widehat{A}} e^{\tau \hat{B}} eτ(A^+B^)=eτA eτB^
当τ \tau τ 为小量时,有e τ ( A ^ + B ^ ) ? e τ A ^ e τ B ^ = O ( τ 2 ) e^{\tau(\hat{A}+\hat{B})}-e^{\tau \hat{A}} e^{\tau \hat{B}}=O\left(\tau^{2}\right) eτ(A^+B^)?eτA^eτB^=O(τ2)
因此,当τ \tau τ 为特别小时,有
e ? τ H ^ ≈ e ? τ ( H ^ 12 + H ^ 34 ) e ? τ H ^ 23 = e ? τ H ^ 12 e ? τ H ^ 34 e ? τ H ^ 23 e^{-\tau \widehat{H}} \approx e^{-\tau\left(\widehat{H}_{12}+\widehat{H}_{34}\right)} e^{-\tau \widehat{H}_{23}} =e^{-\tau \widehat{H}_{12}} e^{-\tau \widehat{H}_{34}} e^{-\tau \widehat{H}_{23}} e?τH ≈e?τ(H 12?+H 34?)e?τH 23?=e?τH 12?e?τH 34?e?τH 23?
也就是我们可以把多个相加的局域哈密顿算符转换为为若干个密度算符的乘积。从上面完整的哈密顿量计算基态的过程我们可以知道,一个哈密顿量是若干个局域哈密顿量的累加,如:
H ^ = H ^ 12 + H ^ 23 + H ^ 34 \widehat{H}=\widehat{H}_{12}+\widehat{H}_{23}+\widehat{H}_{34} H =H 12?+H 23?+H 34?
那么e ? β H ^ ∣ φ ? e^{-\beta \widehat{H}}|\varphi\rangle e?βH ∣φ? 将变成e ? τ H ^ 12 e ? τ H ^ 34 e ? τ H ^ 23 ∣ φ ? e^{-\tau \widehat{H}_{12}} e^{-\tau \widehat{H}_{34}} e^{-\tau \widehat{H}_{23}}|\varphi\rangle e?τH 12?e?τH 34?e?τH 23?∣φ? ,然后计算就转换为了将三个算符依次作用到状态∣ φ ? |\varphi\rangle ∣φ?。
我们以四个自旋构成的一维海森堡链为例,退火算法的具体步骤为:
- 随机初始化一个量子态∣ g 0 ? |g_0\rangle ∣g0??
- 计算∣ g t + 1 ′ ? = e ? τ H ^ 12 e ? τ H ^ 34 ∣ g t ? \left|g_{t+1}^{\prime}\right\rangle=e^{-\tau \widehat{H}_{12}} e^{-\tau \widehat{H}_{34}}\left|g_{t}\right\rangle ∣∣?gt+1′??=e?τH 12?e?τH 34?∣gt?? 并归一化结果
- 计算∣ g t + 1 ? = e ? τ H ^ 23 ∣ g t + 1 ′ ? \left|g_{t+1}\right\rangle=e^{-\tau \widehat{H}_{23}}\left|g_{t+1}^{\prime}\right\rangle ∣gt+1??=e?τH 23?∣∣?gt+1′?? 并归一化结果
- 检查∣ g t + 1 ? |g_{t+1}\rangle ∣gt+1?? 是否收敛,否则返回到第二步,再一次将密度算符作用到量子态上
文章图片
严格对角化计算基态 在小尺度可严格计算的体系中,我们用退火算符计算基态时会产生误差,因为在进行 Trotter - Suzuke 分解时会引入额外误差。
下面我们引入一种更加直接的计算方法,即严格对角化算法:
- 定义线性映射
f ( ∣ φ ? ) : ∣ φ ? → ( I ? τ H ^ ) ∣ φ ? = ∣ φ ? ? τ ∑ ? i , j ? H ^ i j ∣ φ ? f(|\varphi\rangle) : |\varphi\rangle \rightarrow (I-\tau \widehat{H})|\varphi\rangle =|\varphi\rangle - \tau\sum_{\langle i,j \rangle} \widehat{H}_{ij} |\varphi\rangle f(∣φ?):∣φ?→(I?τH )∣φ?=∣φ??τ?i,j?∑?H ij?∣φ? - 求解线性映射f f f 的最大本征值与本征态
文章图片
通过图示我们可以看出,严格对角化算法将大的哈密顿量的作用转换为若干个局域哈密顿量依次作用,其中的τ \tau τ 为小量,其保证绝对值最大的本征值在I ? τ H ^ I-\tau \widehat{H} I?τH中代数值最大。当τ \tau τ 足够小的时候, H ^ \widehat{H} H的最小本征态转换为了I ? τ H ^ I-\tau \widehat{H} I?τH的最大本征态,该操作相当于对本征能量进行了平移,但是不会改变本征态。
推荐阅读
- 论文|利用树结构的张量网络进行机器学习
- 七、矩阵乘积态
- 二、张量 CP 分解
- 张量网络算法基础|张量网络算法基础(五、TEBD算法和DMRG算法)
- 张量网络算法基础|张量网络算法基础(三、格点模型)
- 张量网络算法基础|张量网络算法基础(一、张量和线性代数基础)
- 张量网络算法基础|张量网络基础算法(四、TT分解和矩阵乘积态)