1.背景
在上面介绍的方法中,我们将想要解决的问题看成了TN的收缩,例如iTEBD与iDMRG算法将基态的计算化成了TN的收缩计算,而MPS被用作为了计算TN收缩的工具,即一行张量构成的MPO的近似本征态。
实际上,张量收缩问题与变分(极值)问题具有一定的等价性,那么梯度法求解张量网络收缩(或求基态)也是TN领域一种常用的方法,特别是TN机器学习领域。
2.梯度更新法
问题:当我们波函数归一的前提下,极小化观测量(能量)
以使用MPS求解基态为例,需要解决的极值问题为(下图对于有无平移对称性的、有限或无限大的系统均成立):
解决方案:用梯度更新法解决就相当于求能量关于每一个局域张量的梯度
假设MPS中** **(区别于uMPS),则有:
A
(
n
)
←
A
(
n
)
−
η
∂
E
∂
A
(
n
)
A^{(n)} \leftarrow A^{(n)}-\eta \frac{\partial E}{\partial A^{(n)}}
A(n)←A(n)−η∂A(n)∂E
实际上,对于任意闭合张量网络(无开放指标),其关于某张量的导数,等于将该张量从张量网络中移除之后所得的张量网络。
代表导数的张量网络的开放指标即为被求导张量的指标,故计算导数张量网络的收缩后得到的张量与被求导张量同阶同维
因此,张量网络导数的计算,仍然是张量网络的收缩计算