当量子计算遇上神经网络与深度学习,QNN初探( Quantum Neural Networks)

465 阅读3分钟

上世纪60年代哲学界有一场关于存在主义结构主义存在主义自由意识结构主义结构性因素

究竟是什么塑造了一个人也许难以确定。而对于Nonequbit(量子比特)的状态变化概率和扰动最终观测状态大量抽样

在细讲QNN前(量子神经网络其实是一个量子系统)量子计算

首先,量子计算与传统计算机的不同,可从qubit“0”“1”相比同时介于“0”和“1”之间

即所谓的“薛定谔的猫叠加态(superposition):

NoneNone|x>

你们可能会问David,为什么状态系数是 1/zz平方和等于1

 α^2+β^2=1

其中αβ系数

是的,在量子物理中可以把qubit想象成粒子球体(叠加或非叠加态):

三维世界中qubit的自旋状态非常灵活,可以上自旋(|0>)下自旋(|1>)斜着自旋

None

当然也可以叠加态自旋(

有了这么多种qubit

传统的2个bit位None, None, None, Nonen个bit位能编码的信息只有2^n (即

而如果一个量子计算机有2个qubit00, 01, 10, 11这些状态就可以同时出现这4个状态本身变为4个自由度

这就导致它能编码2^4=16种状态00, 01, 10, 11n个qubit能编码的信息有2^(2^n) (即

这样的计算量级,使得2018年google的None

有了以上这些基本知识,跟着再在来看Google的这篇QNN设计的论文深度学习(神经网络

首先看基本QNN架构:

输入输出和一般的神经网络(深度学习)相似。唯一区别是QNN的输入|ψ, 1>是n+1位qubit的状态事先根据输入样本编码准备Y轴None

为了容错并得到可靠输出,None多次观测得到0或1的输出“label”

接下来看U权重小方块“与或”“或”“否”unitary归一门(unitary operations)通过unitary转换之后,两组qubit状态的内积值不变

即如果两组状态的内积用<Φ|Ψ>

那么:

即经过NoneU+U共轭矩阵

内积值不变不仅可以帮助我们之前提到的归一化约定: α^2+β^2=1天然地防止了传统神经网络中的“梯度爆炸”

其中z是样本编码,l(z)

这样,QNN通过不断对最后一个qubit的 的观测,与真实样本label比较,得到一个修正值,修正神经网络中的 参数,并且根据 参数调整每个unitary归一门操作 ,不断进行迭代并更新每个unitary归一门 ,直到QNN每次预测的 与真实样本的label一致。

另外,传统深度学习的成功更多地是归功于引入非线性的激活函数(Tanh, ReLu, softmax)QNN非线性

如上图,每一层UU非线性U

最后,值得注意的是,对于整个量子神经网络的容错文章也做了探讨和考虑,在U门操作中加入了奇偶校验和reed-muller编码

对于文章不合理以及解释不当的地方希望大家积极指出。愿在新的一年David可以和大家继续探索量子计算世界,特别是结合机器学习与深度学习的领域,以及一些实际的量子计算项目与代码。

新年快乐 !!!

 

 

 

 

参考文献: