张量网络算法基础(九、张量网络机器学习【下】)

   日期:2020-09-02     浏览:152    评论:0    
核心提示:张量网络图片生成与压缩一、监督/非监督张量网络机器学习二、张量网络图片生成与压缩三、监督性张量网络机器学习一、监督/非监督张量网络机器学习∣ψ⟩\\left| \\psi \\right\\rangle∣ψ⟩ 是一个L-qubit的量子态,它的参数复杂度会随着特征个数L呈指数上升,张量网络机器学习的中心思想之一就是将∣ψ⟩\\left| \\psi \\right\\rangle∣ψ⟩用张量网络表示,从而使参数复杂度降低到多项式级。在给定N个训练样本{X[n]}\\left\\{ {{X}^{[n]}

张量网络图片生成与压缩

  • 一、监督/非监督张量网络机器学习
  • 二、张量网络图片生成与压缩
  • 三、监督性张量网络机器学习

暑假的接近尾声,这个系列也要结束了,这是这个系列的最后一篇。我们接着上篇继续讲!

一、监督/非监督张量网络机器学习

∣ ψ \left| \psi \right\rangle ψ 是一个L-qubit的量子态,它的参数复杂度会随着特征个数 L 呈指数上升,张量网络机器学习的中心思想之一就是将 ∣ ψ \left| \psi \right\rangle ψ用张量网络表示,从而使参数复杂度降低到多项式级。

在给定N个训练样本 { X [ n ] } \left\{ {{X}^{[n]}} \right\} {X[n]}后,我们可以训练量子态,使其满足等概率假设:

P ( X [ 1 ] ) = P ( X [ 2 ] ) = ⋯ \boldsymbol{P}\left(\boldsymbol{X}^{[\mathbf{1}]}\right)=\boldsymbol{P}\left(\boldsymbol{X}^{[2]}\right)=\cdots P(X[1])=P(X[2])=

这被称为MPS非监督机器学习。

定义交叉熵损失函数

f ( { X [ n ] } ) = − 1 N ∑ n = 1 N ln ⁡ P ( X [ n ] ) = − 1 N ∑ n = 1 N ln ⁡ ( ∏ ⊗ l = 1 L ∣ x l [ n ] ∣ ψ ∣ ) 2 f\left(\left\{X^{[n]}\right\}\right)=-\frac{1}{N} \sum_{n=1}^{N} \ln P\left(X^{[n]}\right)=-\frac{1}{N} \sum_{n=1}^{N} \ln \left(\prod_{\otimes l=1}^{L}\left|\left\langle x_{l}^{[n]} \mid \psi\right\rangle\right|\right)^{2} f({X[n]})=N1n=1NlnP(X[n])=N1n=1Nln(l=1Lxl[n]ψ)2

其中N为训练集样本个数,当且仅当 P ( X [ 1 ] ) = P ( X [ 2 ] ) = ⋯ \boldsymbol{P}\left(\boldsymbol{X}^{[\mathbf{1}]}\right)=\boldsymbol{P}\left(\boldsymbol{X}^{[2]}\right)=\cdots P(X[1])=P(X[2])=时, f f f达到极小。

在MPS表示下损失函数如下图所示:


定义损失函数后,我们可以通过梯度更新方法,更新张量网络中的张量,使得损失函数降到极低,梯度更新的公式为

A ( l ) ← A ( l ) − η ∂ f ∂ A ( l ) A^{(l)} \leftarrow A^{(l)}-\eta \frac{\partial f}{\partial A^{(l)}} A(l)A(l)ηA(l)f

使用MPS表示 ∣ ψ \left| \psi \right\rangle ψ时,可利用MPS中心正交形式,逐个更新各个张量,步骤如下:
a) 更新第 l l l 个张量 A ( l ) ← A ( l ) − η ∂ f ∂ A ( l ) A^{(l)} \leftarrow A^{(l)}-\eta \frac{\partial f}{\partial A^{(l)}} A(l)A(l)ηA(l)f时,将正交中心移动至该张量;
b) 利用张量网络的微分法则求出损失函数关于 A ( l ) ← A ( l ) − η ∂ f ∂ A ( l ) A^{(l)} \leftarrow A^{(l)}-\eta \frac{\partial f}{\partial A^{(l)}} A(l)A(l)ηA(l)f的梯度;


仔细看看上面这幅图,有用到之前学过的知识。忘记了?没事,再回顾下张量网络的梯度更新

二、张量网络图片生成与压缩

当得到量子态 ∣ ψ \left| \psi \right\rangle ψ后,可以求出像素的联合概率密度,还可以计算条件概率。将图片中部分已知像素记为 { x m [ A ] } \left\{ x_{m}^{[A]} \right\} {xm[A]},剩余未知像素记为 { x n [ B ] } \left\{ x_{n}^{[B]} \right\} {xn[B]},其概率分布可由条件概率给出:

P ( { x n [ B ] } ∣ { x m [ A ] } ) = ( ∏ ⊗ n x n [ B ] ∣ ψ ~ ) 2 \boldsymbol{P}\left(\left\{\boldsymbol{x}_{\boldsymbol{n}}^{[\boldsymbol{B}]}\right\} \mid\left\{\boldsymbol{x}_{\boldsymbol{m}}^{[\boldsymbol{A}]}\right\}\right)=\left(\prod_{\otimes \boldsymbol{n}}\left\langle\boldsymbol{x}_{\boldsymbol{n}}^{[\boldsymbol{B}]} \mid \tilde{\boldsymbol{\psi}}\right\rangle\right)^{2} P({xn[B]}{xm[A]})=(nxn[B]ψ~)2

其中,量子态 ∣ ψ ~ \left| {\tilde{\psi }} \right\rangle ψ~是通过对 ∣ ψ \left| \psi \right\rangle ψ的投影测量获得:

∣ ψ ~ = 1 Z ∏ ⊗ m x m [ A ] ∣ ψ |\tilde{\psi}\rangle=\frac{1}{Z} \prod_{\otimes m}\left\langle x_{m}^{[A]} \mid \psi\right\rangle ψ~=Z1mxm[A]ψ

其中Z为归一化系数,如下图所示:


上述条件概率的定义与之前子系统概率公式自洽。根据概率公式:

P ( { x n [ B ] } ) = ∑ { x m ( A ) } P ( { x m [ A ] } ∪ { x n [ B ] } ) = ∑ { x m ( A ) } P ( { x n [ B ] } ∣ { x m [ A ] } ) P ( { x m [ A ] } ) P\left(\left\{x_{n}^{[B]}\right\}\right)=\sum_{\left\{x_{m}^{(A)}\right\}} P\left(\left\{x_{m}^{[A]}\right\} \cup\left\{x_{n}^{[B]}\right\}\right)=\sum_{\left\{x_{m}^{(A)}\right\}} P\left(\left\{x_{n}^{[B]}\right\} \mid\left\{x_{m}^{[A]}\right\}\right) P\left(\left\{x_{m}^{[A]}\right\}\right) P({xn[B]})={xm(A)}P({xm[A]}{xn[B]})={xm(A)}P({xn[B]}{xm[A]})P({xm[A]})

上篇博客留下的证明题在这!

在等概率的先验分布前提下,先验分布近似为等概率分布,有:

P ( { x n [ B ] } ) = 1 Z ∑ { x m [ A ] } P ( { x n [ B ] } ∣ { x m [ A ] } ) P\left(\left\{x_{n}^{[B]}\right\}\right)=\frac{1}{Z} \sum_{\left\{x_{m}^{[A]}\right\}} P\left(\left\{x_{n}^{[B]}\right\} \mid\left\{x_{m}^{[A]}\right\}\right) P({xn[B]})=Z1{xm[A]}P({xn[B]}{xm[A]})

由于:
P ( { x n [ B ] } ∣ { x m [ A ] } ) = ( ∏ ⊗ n x n [ B ] ∣ ψ ~ ) 2 \boldsymbol{P}\left(\left\{\boldsymbol{x}_{\boldsymbol{n}}^{[\boldsymbol{B}]}\right\} \mid\left\{\boldsymbol{x}_{\boldsymbol{m}}^{[\boldsymbol{A}]}\right\}\right)=\left(\prod_{\otimes \boldsymbol{n}}\left\langle\boldsymbol{x}_{\boldsymbol{n}}^{[\boldsymbol{B}]} \mid \tilde{\boldsymbol{\psi}}\right\rangle\right)^{2} P({xn[B]}{xm[A]})=(nxn[B]ψ~)2

所以

P ( { x n [ B ] } ∣ { x m [ A ] } ) = 1 z ( Π ⊗ n x n [ B ] ∣ Π ⊗ m x m [ A ] ∣ ψ ) 2 P\left(\left\{x_{n}^{[B]}\right\} \mid\left\{x_{m}^{[A]}\right\}\right)=\frac{1}{z}\left(\Pi_{\otimes n}\left\langle x_{n}^{[B]}\left|\Pi_{\otimes m}\left\langle x_{m}^{[A]} \mid \psi\right\rangle\right)^{2}\right.\right. P({xn[B]}{xm[A]})=z1(Πnxn[B]Πmxm[A]ψ)2

代入条件概率公式得:

P ( { x n [ B ] } ) = ∏ ⊗ n Tr ⁡ { x m [ A ] } x n [ B ] ∣ φ φ ∣ x n [ B ] = ∏ ⊗ n x n [ B ] ∣ Tr ⁡ { x m ( A ) } ∣ φ φ ∣ x n [ B ] \mathrm{P}\left(\left\{x_{n}^{[\mathrm{B}]}\right\}\right)=\prod_{\otimes n} \operatorname{Tr}_{\left\{x_{m}^{[\mathrm{A}]}\right\}}\left\langle x_{n}^{[\mathrm{B}]} \mid \varphi\right\rangle\left\langle\varphi \mid x_{n}^{[\mathrm{B}]}\right\rangle=\prod_{\otimes n}\left\langle x_{n}^{[\mathrm{B}]}\left|\operatorname{Tr}_{\left\{x_{m}^{(\mathrm{A})}\right\}}\right| \varphi\right\rangle\left\langle\varphi \mid x_{n}^{[\mathrm{B}]}\right\rangle P({xn[B]})=nTr{xm[A]}xn[B]φφxn[B]=nxn[B]Tr{xm(A)}φφxn[B]

又因为

ρ ^ [ B ] = Tr ⁡ { x m [ A ] } ∣ φ φ ∣ \hat{\rho}^{[B]}=\operatorname{Tr}_{\left\{x_{m}^{[\mathrm{A}]}\right\}}|\varphi\rangle\langle\varphi| ρ^[B]=Tr{xm[A]}φφ

由此上篇学过的概率公式 P ( { x n [ B ] } ) = ∏ ⊗ n x n [ B ] ∣ ρ ^ [ B ] ∣ x n [ B ] \text{P}\left( \left\{ x_{n}^{[\text{B}]} \right\} \right)=\prod\limits_{\otimes n}{\left\langle x_{n}^{[\text{B}]}\left| {{{\hat{\rho }}}^{[B]}} \right|x_{n}^{[\text{B}]} \right\rangle } P({xn[B]})=nxn[B]ρ^[B]xn[B]得证。

采用逐点生成的方法避免指数级复杂度:

P ( { x n [ B ] } ∣ { x m [ A ] } ) = 1 z ( Π ⊗ n x n [ B ] ∣ Π ⊗ m x m [ A ] ∣ ψ ) 2 P\left(\left\{x_{n}^{[B]}\right\} \mid\left\{x_{m}^{[A]}\right\}\right)=\frac{1}{z}\left(\Pi_{\otimes n}\left\langle x_{n}^{[B]}\left|\Pi_{\otimes m}\left\langle x_{m}^{[A]} \mid \psi\right\rangle\right)^{2}\right.\right. P({xn[B]}{xm[A]})=z1(Πnxn[B]Πmxm[A]ψ)2

步骤如下:

  1. 通过 ∣ ψ \left| \psi \right\rangle ψ与已知像素 { x m [ A ] } \left\{ x_{m}^{[A]} \right\} {xm[A]},利用投影公式 ∣ ψ ~ = 1 Z ∏ ⊗ m x m [ A ] ∣ ψ |\tilde{\psi}\rangle=\frac{1}{Z} \prod_{\otimes m}\left\langle x_{m}^{[A]} \mid \psi\right\rangle ψ~=Z1mxm[A]ψ计算描述未知像素对应的量子态,记为 ∣ ψ ~ 0 \left| {{{\tilde{\psi }}}^{\text{0}}} \right\rangle ψ~0
  2. 利用 ∣ ψ ~ t − 1 \left| {{{\tilde{\psi }}}^{t-1}} \right\rangle ψ~t1计算第t个未知像素 x t [ B ] x_{t}^{[B]} xt[B]对应的qubit的约化密度矩阵 ρ ^ [ t − 1 ] \hat{\rho }_{{}}^{[t-1]} ρ^[t1],计算该像素的概率分布 P ( x ) = x ∣ ρ ^ [ t − 1 ] ∣ x P(x)=\left\langle x\left|\hat{\rho}^{[t-1]}\right| x\right\rangle P(x)=xρ^[t1]x,并根据该概率分布进行采样,生成该像素 x t [ B ] x_{t}^{[B]} xt[B]
  3. 如果仍有未知像素,则根据生成的像素对 ∣ ψ ~ t − 1 \left| {{{\tilde{\psi }}}^{t-1}} \right\rangle ψ~t1进行投影得到
    ∣ ψ ~ t = 1 z x t B ∣ ψ ~ ( t − 1 ) \left| {{{\tilde{\psi }}}^{t}} \right\rangle =\frac{1}{z}\left\langle x_{t}^{B} | {{{\tilde{\psi }}}^{(t-1)}} \right\rangle ψ~t=z1xtBψ~(t1),并执行步骤 2

建议:上面的的内容有点难懂,当某个地方没有看懂的时候建议往上看看相应的公式,或许这样能好懂许多。

如果仅知道 ∣ ψ \left| \psi \right\rangle ψ而不知道任何像素, { x m [ A ] } \left\{ x_{m}^{[A]} \right\} {xm[A]}可以把看成空集,也可以通过逐点生成法生成图片。每次通过约化密度矩阵计算出单个像素概率分布后,可通过随机采样生成该像素。可以在获得单个像素概率分布后,计算最概然的像素值作为生成的像素,采用此方法,每个量子态 ∣ ψ \left| \psi \right\rangle ψ仅生成一张最概然的图片,被称为量子平均图。

张量网络压缩感知:利用最概然生成法,对图片进行压缩采样,即通过保留尽量少的像素,利用量子态恢复重构出原始图片。其中采样的方法被称为纠缠次序采样协议(EOSP),核心思想是利用纠缠熵衡量不同像素携带的信息量的大小,以此采样纠缠熵大的像素。

三、监督性张量网络机器学习

以分类任务为例,我们需要使用张量网络建立从数据 { x } \{x\} {x}到分类标签 κ \kappa κ的的函数映射 f f f,对于概率模型而言,该映射可以由条件概率P给出:

f : { x } → κ ⇒ P ( κ ∣ { x } ) f:\{x\} \rightarrow \kappa \Rightarrow P(\kappa \mid\{x\}) f:{x}κP(κ{x})

利用张量网络建立条件概率,一种常用的方法就是采用非监督机器学习的方法获得 ∣ ψ ⌣ \left| {\overset{\scriptscriptstyle\smile}{\psi }} \right\rangle ψ并计算联合概率分布,再通过投影计算获得条件概率。 ∣ ψ ⌣ \left| {\overset{\scriptscriptstyle\smile}{\psi }} \right\rangle ψ中含有(L+1)个qubit,其中L个qubit对应于图片像素,一个qubit对应于分类标签,因此MPS中含有(L+1)个物理指标。

进行监督学习的具体方法:

  1. 将分类标签 κ \kappa κ也当作是特征量,利用训练集进行非监督机器学习,训练量子态 ∣ ψ ⌣ \left| {\overset{\scriptscriptstyle\smile}{\psi }} \right\rangle ψ
  2. 利用投影计算条件概率 P ( κ ∣ { x } ) = ( κ ∣ ∏ ⊗ n ( x n ∣ ψ ~ ) 2 P(\kappa \mid \{x\})=\left( \left\langle \kappa \right|\prod\limits_{\otimes n}{{{\left( {{x}_{n}}|\tilde{\psi }\rangle \right)}^{2}}} \right. P(κ{x})=(κn(xnψ~)2,分类结果即为最概然的标签值argmax κ _{\kappa } κ P ( κ ∣ { x } ) = ( ∏ ⊗ n ( x n ∣ ψ ~ ) 2 P(\kappa \mid\{x\})=\left(\prod_{\otimes n}\left(x_{n}|\tilde{\psi}\rangle\right)^{2}\right. P(κ{x})=(n(xnψ~)2

注意:量子态归一化条件是张量网络量子概率可解释性的核心

我是一只正在不断学习、希望早日成为小白的小小白,有什么错误欢迎大家批评指正,喜欢的请点个赞哦!

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服