郑 瑾 高 庆 吕颜轩 董道毅 潘 宇
(1.北京航空航天大学自动化科学与电气工程学院,北京 100191;2.德国杜伊斯堡埃森大学自动控制与复杂系统所,杜伊斯堡 47057;3.新南威尔士大学工程与信息技术学院,堪培拉2600;4.浙江大学控制科学与工程学院智能系统与控制研究所,浙江杭州 310027)
量子机器学习是融合了量子计算与机器学习算法的新兴交叉学科领域.一方面,量子机器学习利用量子计算的高并行性,提高传统机器学习的运算效率,如量子主成分分析和量子支持向量机算法;另一方面,量子机器学习从量子物理学的角度开发更加智能的机器学习算法,实现高效的信息提取和分类[1].量子机器学习的性能优势离不开量子计算硬件的支撑.因为量子计算机拥有指数级的存储能力和检索能力,所以在处理海量数据方面,它相比传统计算机有着显著的优势,正是由于这种优势,可为未来量子机器学习带来更广泛的应用能力[2].近年来,近期中等规模量子硬件取得了诸多重大突破,谷歌公司53个超导量子比特的“悬铃木”量子处理器被成功应用于随机线路取样[3];我国76个光子的量子计算原型机“九章”在200 s内成功获得5000万个样本的高斯玻色取样[4];IBM计划在2021年实现127个量子比特的量子处理器.足够强大的量子计算机为量子机器学习算法的实现提供了可能,例如数据拟合[5]、主成分分析[6]、贝叶斯推理[7]、蒙特卡罗方法[8]、支持向量机[9]、玻尔兹曼机[10]、神经网络[11]、强化学习[12-14]等,同时也进一步促进了基于真实量子线路的量子机器学习算法研究.
在量子机器学习的诸多领域中,量子神经网络融合了量子计算与神经网络模型的各自优势,有潜力显著提升经典神经网络的运算效率,以实现更强大的人工智能,因此得到了学界的广泛关注.量子神经网络的优势主要体现在利用量子计算并行处理的能力以获得量子加速[2],以较低的成本提取最优网络框架[3],提高网络的准确性、泛化性和鲁棒性等性能[4].量子神经网络现有的研究方法主要包括两种:一种为仿人工神经网络的线性和非线性操作;另一种利用参数化量子电路作为可训练的神经元并模仿人工神经网络的层次结构[15-16].Subhash Kak最先提出量子神经网络的概念[17],近年来,学者们广泛探索了基于中等规模量子处理器的多种量子神经网络模型[18-19],如量子感知机模型[20]、量子张量神经网络[21]等.这些量子神经网络模型在量子希尔伯特空间中模拟具有网络结构特征的经典量子系统,建立不同的量子电路逼近非线性函数,基于可泛化的模型框架实现任意非线性量子神经元[22].由于卷积神经网络在机器学习领域的广泛应用,Cong等人设计了一个与经典卷积神经网络具有相似层次结构的量子神经网络模型[23],通过处理量子数据可用于识别量子态的相位并设计量子纠错方案.之后,Henderson等人提出了一种新的量子滤波器,部署随机量子电路实现对输入数据的局部转换,将量子卷积滤波器嵌入到经典卷积神经网络中,形成量子经典混合结构[24].最近,Li等人提出了更复杂的量子卷积神经网络模型[25],采用更加精细的量子电路实现量子内积计算和激活函数的近似非线性映射.目前,有关量子神经网络的研究已取得重大进展,充分利用了量子的并行性提高计算性能,并在网络层之间构建有效的量子态转换以获得深层语义特征,实现机器学习任务[11].然而,对于如何处理不同类型的数据、如何设计更高效的量子态编码方式、如何构造更通用的量子电路模型体现卷积的特性,如何实现更有效的优化算法等问题仍亟待进一步研究.
本文提出了一种基于参数化量子电路的量子卷积神经网络模型,根据数据类型的不同,共分为量子卷积神经网络模型和量子图卷积神经网络模型,分别面向欧几里得结构数据和非欧几里得结构数据处理任务.首先,采用量子比特幅值编码和近似编码的方式将输入图像编码为量子态;然后采用一系列依赖参数的幺正变换构建量子卷积神经网络的模型结构,包括量子卷积层、量子池化层和量子全连接层,以实现相应的量子态演化;最后,对指定量子比特进行多次测量,获得类别标签,采用梯度下降法优化更新网络参数,使网络输出尽可能达到期望输出.在MNIST数据集上的实验结果表明量子卷积神经网络具有较强的学习能力和良好的泛化性能,可达到令人满意的精度.
本文提出的基于参数化量子电路的量子卷积神经网络模型具有以下优势:
1) 既能处理欧几里得结构数据,也能处理非欧几里得结构数据,拓展了量子机器学习的适用范围;
2) 保留了经典卷积神经网络中局部连接和权值共享的特点,即在量子卷积层中,单个量子门仅对相邻的量子比特施加运算,在同一个量子卷积层内部所有量子门具有相同的可调参数.这两个特性使得量子卷积神经网络能够有效地提取图像特征,降低网络模型复杂度,显著提升模型的运算效率;
3) 采用更具有表达能力的通用量子门设计量子卷积神经网络模型.能够实现对两量子比特和单量子比特量子态的任意操作,提高了网络的泛化性能;
4) 通用模型可在参数化量子电路上扩展其卷积层和池化层,处理更复杂的数据结构,实现更广泛的机器学习任务.
量子计算是一种利用量子力学的独特性质(如叠加、纠缠)对信息进行处理的计算模式,与基于二进制电路的经典计算有本质上的区别.本节将介绍量子计算中量子比特、量子门和量子测量等基本概念,以及经典机器学习中的卷积神经网络模型和图卷积神经网络模型.
量子比特是量子计算中信息存储和操作的基本单元,类似经典计算中作为信息载体的经典比特.量子比特有两个基态|0〉和|1〉,基于量子力学的叠加特性,量子比特可以同时处于两个基态的叠加态,表示为
多个量子比特构成复合量子系统,其量子态空间是各个量子比特的量子态空间{|ψ1〉,··· ,|ψn〉}的张量积,可表示为
同样的,任意n量子比特的量子态空间存在一组基{|00···0〉,|00···1〉, ··· ,|11···1〉},量子态|Ψ〉可表示为叠加态
基础量子门包括量子非门,量子旋转门和量子受控非门等,对应的矩阵表示和量子线路图如表1所示.
表1 基础量子门Table 1 Basic quantum gates
量子态中的信息需要通过量子测量来获取.在量子计算平台中,一般采用量子投影测量.此时,量子态会随机坍缩到测量算子所对应的基矢态上,同时得到对应的测量值.常用的量子测量包括Z测量,例如,对处于量子态|ψ〉=a|0〉+b|1〉的单个量子比特进行Z测量时,量子态坍缩到基态|0〉上的概率为|a|2,得到测量值1;坍缩到基态|1〉上的概率为|b|2,得到测量值−1.单次测量结果是随机的,为获取关于量子态更准确的信息,需要进行多次重复测量,用测量值的频率近似概率.多次Z测量结果的期望可表示为
人工神经网络是现代人工智能技术的核心模型,通常具有多层网络结构和非线性激活函数,能够从输入数据中提取高阶特征或者学习隐含的数据分布.针对不同的任务和数据,学者们提出了多种不同结构的人工神经网络模型,包括多层感知机、卷积神经网络、循环神经网络、残差神经网络等[26].
卷积神经网络是一种具有局部连接、权值共享等特点的深层前馈神经网络,尤其适用于处理具有网格结构的数据,例如图像数据和时间序列数据,是目前应用最广泛的模型之一.卷积与池化是卷积神经网络中的两个核心操作,大多数的卷积神经网络结构都是将它们进行组合而得到的.卷积层由一组卷积核组成,对输入数据进行“卷积”运算,类似信号处理领域的滤波器.每个卷积核可以视为二维矩阵,通过重复地对一组输入数据的局部元素作内积,得到一组输出数据.卷积核的参数可以学习,不同卷积核能够提取不同的特征.同时,多个卷积层的堆叠使得神经网络能够对输入数据的特征进行组合,从而学习到更高阶的特征.池化层的“池化”操作对输入数据进行降维采样,常用的运算有均值池化,最大池化等.卷积神经网络的两类网络层具有高效且强大的学习能力,一方面,卷积层具有局部连接和权值共享的特点;另一方面,池化操作能减少冗余特征和神经网络的参数量,两方面优势使得卷积神经网络具有更优的计算效率和泛化能力.
卷积神经网络主要处理网格结构的数据,而对于空间结构不规则的数据,其单个节点附近的邻域结构千差万别,数据之间的关系也较为复杂多样,需要使用图卷积神经网络来处理这些非结构化数据.图卷积神经网络通过不断学习新的特征来实现分类、表示和生成等任务.具体的学习过程为:将图定义为G=(V,E),V表示节点,E表示边.首先是对当前节点特征X进行变换学习WX;然后聚合邻居节点的特征,得到该节点的新特征AWX;最后采用激活函数增加非线性.学习过程的表达式为
其中:k指网络层数;H(k)表示网络第k层的特征,H(0)=X;W(k)为学习权重;A为邻接矩阵;σ为激活函数,如ReLU.进一步,上述在计算新特征时未考虑自身的特征,所以需给每个节点增加自连接˜A=A+I;聚合采用加法规则时,需对邻接矩阵进行归一化和对称归一化,避免网络在训练过程中出现梯度爆炸或消失的问题.因此,图卷积可以表达为更一般的式子
在“量子霸权”这一概念最初提出时表明,超过50个量子比特的量子计算机在生成特定分布的性能上超过了经典计算机.同时,研究表明,也可以利用“量子优势”,通过巧妙地选取模拟算法使经典计算机也产生相同的分布.“量子优势”相对于“量子霸权”而言,更注重量子算法及其实际的领域应用.相比于制造出一个逻辑比特可能需要数万个物理比特的容错计算机,充分体现量子优势的(noisy intermediate scale quantum,NISQ)量子计算机可在短期时间内被实现.
量子-经典混合神经网络是一类适用于NISQ量子计算机的算法[27],分别使用量子计算机和经典计算机处理算法的不同部分.如图2所示,经典神经网络包括输入数据的特征处理,具有神经元相互连接的神经网络层,可进行参数更新的优化算法.相应地,在量子-经典混合神经网络中,量子计算机首先将经典数据制备为量子态,然后处理一个包含多个参数的量子线路.量子计算机的测量结果被输入到经典计算机的优化器中,从而更新量子计算机中的参数再进行计算,直到达到设定的优化终止条件.
图1 图卷积神经网络Fig.1 Graph convolutional neural network
图2 经典神经网络模型与量子-经典混合神经网络模型Fig.2 The classical neural network model and the hybrid quantum-classical neural network model
本文提出的量子神经网络是指基于真实量子电路的具有网络结构和可训练参数的计算模型.利用量子计算的优势,结合神经网络强大的特征提取能力,所提出的网络模型可以完成机器学习中的图像分类任务.
卷积神经网络在神经网络的发展中扮演着极其重要的角色,由于其具有局部连接、权值共享和降采样的结构特点,使它在图像处理领域表现出色.局部连接不像传统神经网络那样,第n −1层的每一个神经元都与第n层的所有神经元连接,而是第n −1层的神经元只与第n层的部分神经元连接;权值共享是指在卷积层中整张图片使用同一卷积核内的参数,不会因为图像内位置的不同而改变卷积核内的权值系数;降采样即池化操作,通过降低图像的分辨率使网络训练时减少过拟合的风险,卷积神经网络的这3个特性有效的降低了神经网络模型的复杂度.量子卷积神经网络不仅利用了量子计算的优势,还保留了经典卷积神经网络的特性,能够并行处理高维度、多类型的数据,加速经典机器学习任务.
量子卷积神经网络的网络模型多种多样,一般由若干个卷积层、池化层和全连接层构成.通过对网络模型的训练,即数据预处理、量子态制备、量子卷积神经网络结构搭建和网络优化,可实现图像分类任务.量子卷积神经网络模型的整体架构如图3所示.
图3 量子卷积神经网络模型的整体架构Fig.3 The overall architecture of quantum convolutional neural network model
数据大致可以分为欧几里得结构数据和非欧几里得结构数据两大类.其中欧几里得结构数据排列整齐,对于某个节点很容易找出其邻居节点且邻居节点的数量相同,因此具有很好的平移不变性,易利用卷积操作进行局部特征的提取,如图像、文本和语音数据等.非欧几里得结构数据通常不整齐,对于数据中的某个点,难以定义出其邻居节点,或者不同节点的邻居节点的数量不同,不具有平移不变性.因为每个样本的节点排列可能都不同,所以难以在这类数据上定义出卷积操作,一般需要考虑节点之间的关联性,如知识图谱、社交网络和化学分子结构等.
根据不同数据类型的特点,量子卷积神经网络模型中网络结构设计部分有所差异,本文使用量子卷积神经网络处理欧几里得结构数据,量子图卷积神经网络处理非欧几里得结构数据,第3.4与第3.5节将分别详细介绍这两种神经网络结构.
图4 近似量子态制备电路Fig.4 Approximate quantum state preparation circuit
第1步 需要训练仿真线路将初始状态|xin〉转换为|1〉⊗n.这一过程在仿真电路中运行,对于给定的状态|xin〉,它产生一组特定的门参数θ.损失函数定义为
其中〈Zj〉是第j个量子比特上Z测量的期望值.训练过程中,通过迭代评估损失函数并使用梯度下降法调整参数以最小化式(10).假设损失函数可以最小化到−1,那么所有的测量期望值均为−1,表明测量前电路的最终量子态为eiφ|1〉⊗n.这意味着电路实际上执行了转换:U(θ∗)|xin〉=eiφ|1〉⊗n.
第2步 使用参数θ∗在真实的量子计算机上构造一个反向电路.反向电路在初始状态|0〉上应用变换U′(θ)=U(θ∗)†·(I⊗n−1⊗P(φ))·X⊗n,其中P(φ)代表相位门,最终输出所需的量子态|xin〉.
浅层量子电路可以实现对任意向量的近似编码,其所需的时间复杂度和深度都远小于精准制备量子态的幅值编码方法.但是,在实际应用中,由于低深度电路的逼近能力有限,损失函数通常不能足够接近−1.这使得重构量子态与期望态|xin〉在一定程度上可能存在差异,只能完成近似的量子态制备.不过,这种方法能够实现多项式门复杂度的任意量子态幅值编码,具有系统的设计方法和可离线训练的优点,是量子数据制备的有效工具.
类似经典的卷积神经网络结构,处理欧几里得结构数据的量子卷积神经网络由量子卷积层、量子池化层和量子全连接层组成,如图5所示,在量子线路中,量子卷积层和量子池化层交替放置,分别实现特征提取和特征降维,之后通过量子全连接层进行特征映射,最后利用量子测量提取输出结果.
图5 量子卷积神经网络结构Fig.5 Quantum convolutional neural network structure
3.4.1 量子卷积层
量子卷积层由多个两量子比特量子门Ui组成,各个量子门Ui作用于相邻的量子比特上,实现当前量子比特与其周围量子比特的纠缠,Ui类似于经典卷积神经网络中的卷积核,多个Ui的叠加体现了经典卷积层的结构.其中,i表示量子门属于第i个量子卷积层.同时,量子卷积层也保留了经典卷积层中局部连接和权值共享的重要特点.在量子卷积层内部,量子门作用于相邻的两个量子比特上,对量子态的部分概率幅作变换,体现局部连接的特点;同一卷积层内,所有Ui具有相同的参数,则体现权值共享的特点.因为输入图像信息编码在量子态的概率幅上,为了充分提高量子卷积神经网络的表达能力,需要参数化量子门能够对概率幅作最大范围的幺正变换.目前多种量子门分解方法[29-30]可构建实现任意两量子比特幺正变换U ∈SU(4)的量子门,本文采用文献[29]提出的量子线路,该量子线路由CNOT门、Ry(θ)旋转门和Rz(θ)旋转门组成,如图6所示,量子门具有15个可调整的参数,恰好是SU(4)矩阵的自由度.
图6 通用两量子比特门Fig.6 Universal two-qubit gate
3.4.2 量子池化层
量子池化层由量子测量操作和经典受控量子门组成.具体实现为:测量一半的量子比特,经典受控量子门依据测量结果对所作用的量子比特施加不同的幺正变换.如图7所示,该量子池化单元施加于相邻量子比特上,对量子态的局部概率幅进行特征融合的同时作降维采样.为提高模型的表达能力,在量子线路中加入其他参数化量子门,其中,G1,G2表示通用单量子比特量子门,G†2表示G2的共轭转置量子门,有6个可调参数.该量子池化单元具有任意的受控量子态并且能够对量子比特施加任意的单量子比特幺正变换.经过量子池化层的运算,量子测量使得被测量子比特坍缩,量子卷积神经网络中的相干量子比特数量减少,量子态维度缩减,能够有效地实现特征降维,达到与经典池化层相同的效果.
图7 量子池化单元Fig.7 Quantum pooling unit
3.4.3 量子全连接层
经过前述多个量子卷积层和量子池化层的运算,系统中相干量子比特的数量减少,当数量足够少时,对剩余量子比特施加量子全连接层,对特征作进一步映射.本文采用文献[31]提出的强纠缠量子线路作为全连接层,它由多个通用单量子比特门Gi和CNOT门组成,其中Gi包含3个可训练的参数,如图8所示.量子全连接层内部各个量子门的参数相互独立,量子比特间具有密集的连接,可实现复杂的映射关系,这一结构对应于经典的全连接层.
在量子卷积神经网络的最后,所提取的特征信息仍保留在输出量子比特的量子态中,需要通过量子测量进行提取利用.固定选取一个或多个输出量子比特进行测量,并将测量结果映射为量子卷积神经网络的判别结果.考虑到量子测量的概率性,为减少量子卷积神经网络模型的输出方差,本文选取多次测量结果的均值作为单个量子比特的输出值.对于更复杂的机器学习任务,可结合经典神经网络对量子测量输出值作进一步的映射,从而提高整个模型的泛化能力.
类似经典的图卷积神经网络,处理非欧几里得结构数据的量子图卷积神经网络由量子图卷积层和量子图池化层组成.不失一般性,假设非欧几里得结构数据为图9(a),则它所对应量子图卷积神经网络的量子电路网如图9(b)所示,该量子电路充分考虑了非欧几里得结构数据的特点,根据边和节点的关系设计量子图卷积层和量子图池化层.
图9 量子图卷积神经网络模型Fig.9 Quantum graph convolutional neural network model
3.5.1 量子图卷积层
量子图卷积层实现样本中节点与其邻居节点的聚合,层数表示聚合的阶数,本文使用两组量子比特描述图数据的节点和拓扑结构.具体地,激发态|1〉和基态|0〉用于表示节点的局部连接性,即如果两个节点之间有连接,则相应边的量子比特设置为|1〉并通过受控两量子比特门作用于表示这两个节点的量子比特上,实现当前节点与其一阶邻居节点的特征聚合,即图卷积操作.量子图卷积层可以基于图的拓扑结构进行扩展,为了使模型易于封装并具有泛化性能,本文仍使用第3.4节所提到的任意两量子比特门实现图卷积操作.如图10给出了图9(a)一个量子图卷积层的量子电路,可以清晰的看出图数据的拓扑结构和其量子电路的对应关系,边{c0,c1,c2}通过受控两量子比特门控制节点{x0,x1,x2},实现节点之间的聚合,由于节点x1和x2之间没有边,所以c2没有控制节点x1和x2实施图卷积操作,图中用灰色量子门来表示.通过这种方式,量子图卷积神经网络模型利用拓扑结构(或邻接矩阵)和节点特征作为输入,可以适应不同类型的图数据.
图10 量子图卷积层电路Fig.10 Quantum graph convolutional layer circuit
3.5.2 量子图池化层
量子图池化层不同于量子图卷积层,通过引入量子测量和经典受控量子门来减小节点特征映射的维度并引入非线性.同样,池化操作也受边{c0,c1,c2}的控制.具体的,在池化层中对受控量子比特中的一个实施测量操作,根据测量结果,再用经典受控量子门对另一个量子比特施加酉变换,经典受控量子门由{CNOT,Ry(θ),Rz(θ),R−1y(θ),R−1z(θ)}构成.经过量子图池化层后,被测量的量子比特发生坍缩,不再参与后续运算,其量子态所包含的信息通过经典受控量子门与相邻节点的量子比特进行交互,有效地降低了节点特征映射的维度.
在经过多个量子图卷积和量子图池化层之后,对指定的量子比特进行量子测量以获得期望值,并将其映射到模型输出以得到最终的判别结果.
类似于经典神经网络中基于梯度的优化算法,对于量子卷积神经网络和量子图卷积神经网络的优化均可采用基于量子梯度的随机梯度下降算法(SGD)[31-32].网络的模型权重是量子门的可调整参数,定义损失函数衡量模型输出与期望输出的差异,并依据损失函数值关于量子门参数的梯度,更新模型参数.
量子线路的解析梯度可通过链式法则和参数偏移法则求解.选取损失函数ℓθ为测量期望值{〈Ok〉θ}Kk=1的函数,其中θ表示量子卷积神经网络的模型参数,K
类似经典神经网络的随机梯度下降算法,本文基于量子线路的梯度构建量子卷积神经网络的随机梯度下降算法(QSGD).QSGD的基本流程:在每次训练迭代中,从训练数据集随机抽取部分样本作为输入数据,运行量子卷积神经网络模型;计算损失函数相对于模型参数的梯度;依据梯度更新模型参数.QSGD的伪代码如算法1所示.
Algorithm 1 SGD Optimization for QCNN Require: Quantum states {|xi〉train}Si=1 for the dataset{xtrain i,yi}Si=1, the QCNN model with parameters θ, the loss function ℓθ :|xi〉→R,the iteration time T,the batch size s,and the learning rate{η(t)T −1 t=0 }.Ensure: The optimized parameters θ∗.1: Randomly initialize the parameters θ∗in the range of[0,2π].2: for t ∈{0,1,··· ,T −1}do 3:Randomly select a set of samples with index i ∈It with size s.4:Calculate the gradient ∇θℓIt(θ)|θ=θ(t) in terms of the parameter-shift rule.5:Update parameters θ(t+1) =θ(t)−η(t)·∇θℓIt(θ)|θ=θ(t).6: end for 7: Output optimized parameters θ∗=θ(T)
量子卷积神经网络的训练旨在最小化包含参数的目标函数.受经典神经网络优化算法的启发,可利用损失函数的梯度优化量子神经网络.然而,最近有研究工作[33]表明,具有随机结构且输入量子比特数目较大的量子神经网络无法进行有效训练,其目标函数会变得很平,损失函数的偏导数相对于输入量子比特数目以指数形式消失到零,导致梯度难以估计,这一梯度消失问题通常被称为“贫瘠高原”.本文所提出的量子卷积神经网络结构未显示“贫瘠高原”现象,在训练时,模型能够快速找到梯度的最优下降方向并进行参数更新.
本文使用MNIST数据集验证量子卷积神经网络和量子图卷积神经网络的学习能力.原始的MNIST手写数字数据集包括60000个训练样本和10000个测试样本,每个样本包括手写数字28×28的灰度图像及其相应标签.选用手写数字“3”和“6”,并将其降采样为8×8的灰度图像作为实验数据,如图11所示.
图11 MNIST数据集Fig.11 MNIST dataset
进一步,准确率定义为式(15)
4.3.1 欧几里得结构数据的处理
本文实现手写体图像的二分类任务,首先对原始数据进行数据预处理.将原始数据降采样为8×8像素的同时需满足量子态归一化条件,因此将降采样后的特征向量归一化.本文随机选取同样数量的两类数字组成训练集和测试集,具体的,训练集分别包含5000张数字3和6的样本,测试集分别包含850张数字3和6的样本.
4.3.2 量子卷积神经网络的模型复杂度
图12 不同卷积层数的模型图Fig.12 Model diagrams w.r.t.different number of convolutional layers
由实验结果可知,实验(b)相比实验(a)更快达到较高的分类准确率,但是,经过较多训练迭代后二者的分类准确率非常接近.其中,实验(a)的准确率为96.64%,实验(b)的准确率为96.51%,这说明一层量子卷积层的模型结构已经具有较好的分类效果,增加网络层数和模型参数对分类效果的提升较小,反而增加了模型复杂度导致更多的资源浪费.通过图13所示的准确率曲线分布可以明显地看出,一层量子卷积层的模型结构相比于两层量子卷积层的模型结构,具有更强的学习能力和良好的泛化性能,实现分类任务的准确率较高,更少的量子门参数使得可实现性更强.
图13 不同卷积层数的分类准确率曲线Fig.13 Classification accuracy curves w.r.t. different number of convolutional layers
4.3.3 池化层对量子卷积神经网络的影响
池化层是量子卷积神经网络的一个重要组件,为验证量子池化单元的结构设计对模型泛化能力的影响,本文对不同结构量子池化单元的泛化能力进行测试.具体地,减少图7池化单元的部分结构,观察网络的分类准确率变化.实验(a)中采用原始结构的量子卷积神经网络模型,实验(b),(c)中分别去掉量子池化单元的量子门G1以及G2,G†2,不同模型的分类准确率如图14 所示.实验结果表明,实验(a)中模型的分类准确率提高最快,以96.64%稳定在较高值;实验(c)中模型初始分类准确率较低,随着训练迭代次数的增加,准确率为96.46%,接近实验(a);实验(b)中模型的分类准确率为96.17%,明显低于其他模型.由此说明,本文提出的量子池化单元使得模型具有较好的学习能力和分类准确率,有效地提高了模型的泛化能力.
图14 不同量子池化单元结构的分类准确率曲线Fig.14 Classification accuracy curves w.r.t. different quantum pooling unit structures
4.3.4 不同量子神经网络模型的性能分析
目前,已有文献研究将量子神经网络应用于图像分类任务[28,34-35].本文为了验证量子卷积神经网络模型(QCNN)可以有效地实现图像分类任务,将QCNN与随机结构的量子神经网络(Random-QNN),树张量结构的量子神经网络(TT-QNN)(如图15(a))和阶跃控制结构的量子神经网络(SC-QNN)(如图15(b))进行对比实验.Random-QNN,TT-QNN和SC-QNN在已有文献中均被证明可实现MNIST数据集的分类任务并且具有较好的学习能力.
图15 不同结构的量子神经网络模型Fig.15 The quantum neural network models with different structures
实验设置:
1) 本文选取MNIST数据集中的手写数字对({0,1},{0,2},{2,4}),实现二分类任务.
2) 原数据集中,28×28大小的图像下采样为8×8,因此,实验所需的量子比特数为8.
4) 在Random-QNN中,设置与TT-QNN和SC-QNN具有相同数量的Ry(θ)和CNOT门.
5) 模型的训练迭代次数为100;批次大小为20;学习率为{1.00,0.75,0.050,0.25}.
本文以分类准确率为评价指标,如表2所示,展示了不同结构量子神经网络模型的对比实验结果.
表2 不同结构量子神经网络模型的对比实验结果Table 2 The comparative experimental results of quantum neural network models with different structures
实验结果表明,相比于TT-QNN,SC-QNN和Random-QNN,QCNN具有更高的分类准确率.QCNN利用更具表现力的通用量子门构建量子卷积层和量子池化层,它的模型结构充分体现了经典卷积神经网络中局部连接和权值共享的特性.因此,QCNN能够有效地提取欧式数据的特征,获得更高的分类准确率.在QCNN中,将28×28大小的图像下采样为8×8,实验所需的量子比特数为6,少于TT-QNN,SC-QNN 和Random-QNN的8个量子比特,说明QCNN具有更强的学习能力和良好的泛化性能.QCNN所涉及的通用量子门包含Ry(θ)和Rz(θ)门,然而,经典数据位于实值空间,应用Rz(θ)门会为量子态引入虚项.对于处理经典数据的机器学习任务,后续研究可以考虑仅使用Ry(θ)门实现量子卷积神经网络.
4.4.1 非欧几里得结构数据的处理
本文将数据集中每个8×8的灰度图像进行分割以构建其对应的非欧几里得结构数据,如图16(a)所示,每个图像被划分为4块,从左上角开始顺时针编号,实验从中随机选择3个节点构建图数据,如选择编号{0,2,3}作为图节点;图16(b)则为所选节点构建的图结构.由于数据必须满足归一化以适合幅值编码,经数据预处理后,满足实验条件的训练集为12000个样本,测试集为2000个样本.
图16 构建图数据Fig.16 Build graph data
4.4.2 量子图卷积神经网络的模型复杂度
实验分析了量子图卷积神经网络的网络层数与测试集准确率的关系,由第4.4.1节可知实验数据集中最多只有二阶邻居节点,因此为量子图卷积神经网络模型设计了两组对比实验:(a)一层卷积和一层池化;(b)两层卷积和一层池化,用以分析模型的复杂度,实验(a)和(b)的网络模型如图17所示.不同模型的分类准确率和损失函数值,如图18和19所示.(a)组模型包含21个可调参数;(b)组模型包含36个可调参数.从准确率指标比较两组模型:(a)组的准确率为84.4%;(b)组的准确率为85.4%,发现增加模型的复杂度并没有显著提高准确率.受到计算硬件条件的制约,本文的测试数据相对简单,仅包含3个节点和2条边,聚合其一阶邻居节点和二阶邻居节点的特征差异不大,但对于复杂的图结构可能深度较深,仅聚合低阶邻域并不能完全表示整个图,所以1%的提升看似不明显但足以表明模型对于更深层次图结构的学习能力,可实现更复杂的图分类任务.
图17 不同图卷积层数的网络模型Fig.17 Network models w.r.t.different graph convolutional layers
图18 不同模型的分类准确率Fig.18 Classification accuracy w.r.t.different models
从损失函数值指标比较两组模型,(a)组的损失函数值为0.754;(b)组的损失函数值为0.685.实验结果表明,在训练过程中,(b)组模型的损失函数值下降速度较快,之后趋于收敛,显然未出现“贫瘠高原”现象.
4.4.3 不同图结构对量子图卷积神经网络的影响
第4.4.1节提出从每个样本中随机选择3个节点构建图结构,通过4组对比实验分析不同的节点选择对分类结果的影响.选择不同节点会构造不同的网络结构,对应量子图卷积神经网络模型的实现电路也有所不同,如图20所示.图20(a)选择4组不同的节点构造图结构;(b)为第1个图结构所对应的量子电路,其中每个节点包括16维特征对应的4个量子比特,蓝色虚框内表示特征之间的卷积操作U,橙色虚框表示池化操作V.实验结果如图21所示.
图19 不同模型的损失函数值Fig.19 Loss value w.r.t.different models
图20 不同图结构及其量子电路Fig.20 Different graph structures and the corresponding quantum circuits
图21 不同图结构的分类准确率Fig.21 Classification accuracy w.r.t.different graph structures
实验结果表明,选择不同的节点构造图结构会影响实验结果,即不同的特征会影响分类效果.本实验的目的是测试量子图卷积神经网络模型的学习能力,简单的数据集便于训练,所以本文仅使用了整个图像3/4 的特征,虽不是全景图,但通过位置信息使特征之间的关系更加突出.分析4组实验的准确率:第1组实验的准确率为80%;第2组实验的准确率为75%;第3组实验的准确率为85%;第4组实验的准确率为81%.可见,第3组数据实验效果最好,说明第2块位置的特征对识别整个图像的影响较小.通过不同图结构的对比实验发现,量子图卷积神经网络模型对实验数据的依赖性较强,模型对图数据的表达取决于图本身的拓扑结构.
本文提出了一种基于参数化量子电路的通用量子卷积神经网络模型,包括处理欧几里得结构数据的量子卷积神经网络以及处理非欧几里得结构数据的量子图卷积神经网络模型,两类模型具有统一的监督式量子-经典混合学习框架,精心设计的量子线路结构具有较强的学习能力和良好的泛化性能.实验结果表明,所提出的量子卷积神经网络模型能够有效地完成机器学习中的图像分类任务.
本文提出的量子卷积神经网络给出了一类通用框架,而很多模型细节有待探索,如本文的图卷积只利用节点特征,没有考虑边的特征,考虑扩展量子图卷积神经网络应同时学习节点和边的特征,会更完整的表达图结构;当前的量子卷积神经网络为浅层模型,可考虑将其扩展为深层的量子神经网络,可能会有更好的学习性能.进一步地,本文基于幅值编码方式设计了量子卷积神经网络的模型结构,在量子比特资源充足的情况下,采用比特编码是否能够设计更高效的网络模型? 现实中的图像往往为多通道的彩色数据或多波段极化数据,对于这类多通道数据如何设计相应的量子卷积神经网络模型? 这些问题将是未来的研究重点.