APP下载

基于量子门线路与机器学习协同设计的变分量子神经网络

2022-08-07李红杏拱长青

沈阳航空航天大学学报 2022年2期
关键词:变分编码量子

穆 明,李红杏,戚 晗,赵 亮,林 娜,拱长青

(沈阳航空航天大学 计算机学院,沈阳 110136)

人工智能领域的机器学习和深度学习在数据分析和分类方面实现了质的飞跃。近十年来,神经网络已经成为主流的机器学习模型,并在自然语言处理[1]、图像识别[2]、目标检测[3]等领域取得了一系列成果。然而,量子机器学习可以利用量子处理器自动识别数据中的结构和模式,这是传统机器学习算法所无法实现的[4]。此外,谷歌宣称他们已经实现“量子霸权”,首次在实验中证明了量子计算机相对于传统架构计算机的优越性:世界第一的超级计算机Summit需要计算1万年的实验,谷歌的量子计算机只用了3分20秒[5]。

量子神经网络(QNN)旨在利用量子力学中量子计算的量子并行、量子纠缠以及量子相干等特性来改进经典神经网络架构。QNN是一个将传统人工神经网络(ANN)模型与量子信息和量子计算概念相结合的研究领域,它充分利用了ANN和量子计算的优势。1995年,Kak[6]首次提出了量子计算的概念,此后,QNN在全世界范围内引起了学者们广泛的研究热情,提出了很多种QNN模型,如量子BP[7]神经网络、量子Hopfield神经网络[8]以及通用量子门神经网络[9]等。2018年,Daskin[10]提出了一种具有周期性激活函数的单量子神经元神经网络,该模型只需一个复杂的量子门就可以模拟由神经元构建的经典神经网络;2019年,Cong[11]等人提出了一种量子卷积神经网络(QCNN),对于输入规模为N量子位的数据集,该模型仅使用O(log(N))的参数便可以对其进行有效的训练及验证;2020年,Chen[12]等人提出了用于深度强化学习的变分量子线路,与经典神经网络相比,使用量子信息编码方案可以有效减少模型参数数量;同年,Raychev[4]提出一种变分量子线路神经网络模型,可在概率空间中对数据进行分类;2021年,在COVID-19全球大流行的严峻形势下,Kairon[13]提出了一种连续变分量子神经网络,并对美国和印度的新冠病毒病例进行了研究与预测。然而,迄今为止,几乎所有的量子神经网络模型都是在理论上提出的模型[14],或是通过经典方法以及量子模拟器来模拟量子环境。因此,它们还无法在现实世界中实现。虽然也有部分变分量子神经网络进行了NISQ环境下的量子真机实验,但是涉及的量子比特个数以及实验数据规模十分有限。

QNN的设计面临一系列困难,包括设计合理的量子感知器、(深度)神经网络结构、优化算法以及损失函数等。本文提出了一种优化的变分量子神经网络,即由可在目前的NISQ设备上执行的变分量子线路结合机器学习策略构成的一种混合量子经典计算模型,通过经典优化器来完成参数的优化过程,该模型可以有效解决NISQ设备面临的电路深度难题,从而提高网络性能。VQNN模型中的量子线路由两部分组成:第一部分为量子态编码线路,用于将经典数据编码为量子态数据;第二部分对应一个参数可调的变分量子电路,通过优化参数来模拟学习目标的经典概率分布,并将其信息编码到量子线路的参数中。与基于张量网络的方法不同,VQC的量子比特之间形成高度纠缠态,其参数数量随着量子比特数量呈多项式增长,因此,该方法的应用领域更加广阔。VQC的概率输出分布可以通过测量电路的最终量子态输出来获得,接下来便可以使用经典计算机进行后处理。这种结构在VQNN的设计中表现出了相当大的灵活性,使得VQC易于与经典的ML融合,从而构成一种混合量子经典神经网络。本文进一步探索了利用VQNN来构建基于实际应用的分类器,实验结果可信。之后本文利用IBM量子云平台提供的在线量子处理器进行了真实量子环境下的VQNN入侵检测实验。虽然与量子模拟器环境下相比存在不可忽视的误差,但是这项工作展示了一个可以应用VQNN的领域,这必将鼓励其他领域研究人员进行更加深入的探索。

1 变分量子神经网络方案设计

1.1 基于经典优化器优化的变分量子神经网络模型

变分量子神经网络是由可执行酉变换的隐藏层量子感知器组成的量子线路,该线路作用于输入量子态并执行相应的酉变换,以生成期望的量子态输出。该网络利用参数可调的量子位寄存器对量子线路的输入进行酉变换,并通过测量操作获得随频率(概率)出现的量子比特串输出分布,即通过变分量子神经网络在输入与输出之间建立映射关系。本文构建的VQNN模型框架如图1所示。

图1 变分量子神经网络模型框架

要实现VQNN,第一步是将经典计算机输入的经典数据X编码为可被量子线路加载的量子态|X〉,该过程被称为量子态编码(QSE)。对于具有n个属性的数据x,量子态编码公式为

(1)

其中,gi为用于编码的量子门,fi是将xi编码为量子门gi参数的编码函数。

接下来,通过VQC1对编码后的量子数据|X〉执行相应的酉变换,得到变换后的量子态输出|Y′〉。VQC是由具有固定深度且参数可调的量子门组成的量子线路,VQC是VQNN进行量子计算的关键,类似于神经网络中的隐藏层。VQC输出可以表示为一系列层与层之间映射变换εl的组合,如式(2)所示。

ρout=εout(εh(…ε2(ε1(ρin))…))

(2)

紧接着,对VQC1的输出进行测量,并将测量结果作为第二次QSE的编码参数。然后,通过VQC2执行相应的酉变换并得到期望输出|Y〉。最终,对量子态期望输出进行测量,并通过经典计算机对测量后获得的经典输出分布进行采样,结合经典机器学习领域中的优化器,根据真实输出与理想输出之间的损失来自动调整VQC的酉矩阵参数。重复此过程,直至VQNN输出结果与期望输出之间误差在可以接受的范围为止。

虽然QSE1与QSE2功能相同,都是将经典数据编码为量子态数据,但目的不同,QSE1用于将数据集编码为量子态数据,QSE2用于将中间测量编码为量子态数据,且编码函数不同,QSE1的编码函数为f(x)=-2π*x,QSE2的编码函数为f(x)=-π*x,其中本文所用符号*均表示乘法。同理,VQC1用于对量子态数据集进行酉变换,目的是捕获数据集中的量子关联,而VQC2是对中间测量输出进行酉变换,目的是捕获中间测量的量子关联。类似地,中间测量的作用是引入两个VQC之间的非线性操作,而输出层的测量则是为了获得对于输入数据的结果预测。

1.2 模型训练与测试

图2为变分量子神经网络攻击检测模型训练与测试过程图。

图2 变分量子神经网络训练与测试过程

从图2可以看出,本文所提VQNN攻击检测模型由3大模块组成,分别为预处理模块、训练模块以及入侵检测模块。其中数据预处理过程用于完成数据初始化工作,包括数据的归一化以及数据划分等,并将划分好的训练数据集与测试数据集分别交由训练模块与测试模块处理,该过程通过经典计算机完成。训练模块完成VQNN攻击检测模型的训练过程,该模型需要通过经典计算机与量子计算机的协同配合才能完成。最后一个模块便是攻击检测模块,该模块利用训练模块训练好的VQNN模型对数据集进行预测,并完成模型的性能评估。

算法1与算法2分别为VQNN攻击检测模型的训练过程与测试过程所对应的伪代码,如表1所示。

表1 伪代码

其中,总代价函数loss是关于VQC参数θ与训练集{X,Y}的函数,可以通过经典计算机对VQC参数进行最小化寻优和更新,直至满足终止条件。本文建立了经典计算机与量子设备之间的联系,即在经典计算机上通过机器学习策略完成了量子神经网络的训练过程。当模型训练完成后,就可以将训练好的VQNN模型部署到真实量子设备中进行网络攻击检测。

2 仿真实验与结果分析

2.1 实验数据集与评价指标

本文选取的实验数据集为KDD CUP99数据集,由于原始数据集中存在众多不相关特征及冗余特征,因此在训练过程中可能会出现因入侵检测数据集的维度过高而导致检测算法实时性较差的情况,以及冗余特征之间的相互依赖会降低模型的检测精度。因此,有必要对原始数据集进行特征选择,通过删除入侵检测数据集中的无关特征和冗余特征,构造有效特征子集。基于现有的特征选择算法[15-16],并考虑IBM Quantum在线量子云平台最多支持5个qubits的量子真机实验。本文选择的特征子集为

{protocol_type,service,src_bytes,dst_bytes,count}

对于检测系统来说,评价指标是评估一个系统性能好坏的关键要素[17],定义入侵检测系统评价指标的重要概念有真阳性(TP)、假阳性(FP)、真阴性(TN)以及假阴性(FN)等4个概念。根据这些概念定义的评价指标有准确率、精确率、召回率和F1值。

准确率是指模型预测正确的结果所占的比例,包括对正常数据以及攻击数据的精准预测,准确率的计算公式如式(3)所示。

(3)

精确率是指当攻击检测系统发出预警时,确为网络入侵的概率,精确率的计算公式如式(4)所示。

(4)

召回率是指当被监控网络受到入侵攻击时,检测系统可以正确发出警报的概率,召回率的定义公式如式(5)所示。

(5)

F1值是用来衡量检测模型准确性的指标,它同时考虑了精确率和召回率,F1值可以看作是模型精度和召回率的调和平均值,F1值的计算公式如式(6)所示。

(6)

2.2 量子模拟器实验

为实现上述VQNN攻击检测模型,本文遵循图1所示混合量子经典框架,该框架可为NISQ设备中部署并实现量子线路与算法提供指导。实验平台选取专门用于量子机器学习的 Python 框架TensorFlow Quantum(TFQ),TFQ侧重于构建量子经典混合模型。该平台允许在量子虚拟机(QVM)和量子处理单元(QPU)上部署用户设计的变分量子线路。

本文设计的量子态编码线路QSE1、QSE2如图3所示。

图3 量子态编码线路图

VQC是VQNN中最关键的组成部分,VQC设计的好坏将直接影响VQNN模型的整体性能,为此,本文设计一个高度纠缠且可以执行任意酉变换的VQC1,如图4所示。

图4 变分量子线路1图

VQC1的输入为QSE1编码后的量子态数据。R(α,β,γ)为可实现希尔伯特空间任意酉变换的量子旋转门组,如式(7)所示。

R(α,β,γ)=Rz(α)Ry(β)Rz(γ)

(7)

与VQC1不同,VQC2用于捕获中间测量结果的量子关联,其对彼此之间的纠缠度要求不高,所以,本文设计了一个低纠缠且可以执行任意酉变换的VQC2,如图5所示。

图5 变分量子线路2图

量子旋转门组的酉矩阵参数和为VQC的可调参数,同时也为VQNN模型待优化参数,该参数由经典计算机传入,并由经典计算机通过优化器对其进行优化。

本实验所选实验平台为TensorFlow Quantum、系统为Windows 10专业版、Python版本为Python-2.7、处理器为Intel(R)Core(TM)i7-6700HQ CPU @ 2.60Hz 2.59 GHz;量子线路为5量子位的量子线路,对应待编码的经典数据特征向量维度,量子线路深度为5。在训练过程中,本文使用Keras优化器提供的SGD、RMSprop、Adagrad、Adadelta、Adam、Adamax以及Nadam等优化方法。

为了探索优化方法的选取对VQNN模型性能的影响,本文使用上述7种方法进行了对比实验,不同优化方法的优化性能如图6所示。

根据图6所示对比结果可知,Adam方法针对本实验表现出了最佳的优化性能,因此,本文选用学习率为0.01的Adam优化的VQNN进行网络攻击检测实验。表2为利用Adam优化方法优化的VQNN模型VQNN-Adam和在攻击检测领域常用的经典检测模型以及量子门线路神经网络QGCNN分别进行网络入侵检测实验得到的实验对比结果。

表2 攻击检测实验结果对比

图6 优化方法性能对比图

从实验结果可以看出,VQNN的训练MSE和测试MSE均低于其他检测模型,而其入侵攻击检测的准确率、精确率和F1值均高于其他模型。

根据性能评价指标可知,模型的准确率、精确率、召回率和F1值越高,并且训练MSE和测试MSE越低,模型的性能越好。因此,从表2的实验结果不难看出,VQNN的准确率与精确率均表现最佳,分别为94.06%和94.69%,超出预测效果相对较好的QGCNN 2.06%与3.28%,高于ANN 3.06%与4.69%,甚至比SVM高出21.39%与24.26%。此外,VQNN也拥有最高的F1值,综合上述实验对比结果不难得出,VQNN在保持相对较低的训练与测试MSE的条件下表现出了最佳的检测性能。此外,在保证较高检测精度的条件下,VQNN测试耗时也是所有对比模型中用时最少的,仅为0.199 8 s,优于QGCNN模型3.5 ms,比SVM少耗时18.4 ms。

VQNN表现出良好检测性能的原因是在VQC与成熟的经典机器学习策略相结合的背景下,量子经典混合神经网络可以产生具有低深度量子线路的高度纠缠态。高度纠缠状态的潜在优势是能够有效地表示目标任务的解空间。也就是说,量子态编码和VQC旨在捕获量子数据中的量子关联[18]。同时,在这个框架下,VQC的输出为多种模式下的一种叠加,并以最好的形式来匹配相关目标任务,VQC所具备的这种量子叠加性质使VQNN模型具备一定的容错能力。此外,量子并行性与经典计算的多核运算不同,量子计算的语义特征是完全意义上的通过一次操作即可改变全部数据的并行计算,所以量子并行计算可以显著提高运行速度。

2.3 量子真机实验

由于上述VQNN的实验结果是基于TensorFlow Quantum量子模拟器,是在理想环境下测得的结果,为了进一步验证VQNN的整体性能,本文设计了基于真实量子设备的VQNN攻击检测实验。将Tensor Flow Quantum训练后所得的VQC参数作为NISQ设备中量子线路的量子门参数来构建基于量子计算机的量子线路,随机选取100个实验数据进行测试。实验平台为IBM 提供的量子云平台IBM Quantum。实验结果的混淆矩阵如表3所示。

表3 IBM Quantum实验混淆矩阵

根据表3所示混淆矩阵,结合评价指标(3)~(6),不难得出,运行在真实NISQ量子设备上的VQNN攻击检测系统的准确率为83%、精确率为88.33%、召回率为84.13%、F1值为86.18%。显而易见,基于真实量子线路构建的、可在量子处理器上运行的VQNN的评价指标与理想情况下所得结果并不完全一致。

<1),且各件产品是否为不合格品相互独立.

量子真机与量子模拟器所得结果存在差异的主要原因是当前NISQ设备并不支持量子纠错,且量子门的酉变换也存在误差(如CNOT门误差),以及其他测量误差和一些不确定因素。此外,由于IBMQ提供的量子设备对一次排队的作业数量有限制,所以,实际上本文将100个测量数据分布到了平台提供的6个不同的量子设备上运行。这些量子设备的处理器和版本也都不尽相同。正是由于这些因素的存在,才导致在模拟器条件下所测得的理想值与IBM Quantum量子处理器的实际运行结果之间存在误差,导致精确率降低6.3%。但在真实量子设备中运行的VQNN仍然比经典的SVM和NB检测模型具有更好的攻击检测精度。本实验所使用的6个量子设备单次执行攻击检测所用时间如表4所示。

表4 量子真机耗时

表4中的总耗时包括传输时间、确认时间以及排队等待时间等,而系统耗时又包括制备、运行等过程。由于不同量子设备结构不同且分布于世界各地,因此网络延迟及排队用时各不相同,所以总耗时也不尽相同。

此外,由于本文提出的模型为特定条件下针对5量子比特,即特征向量维度为5的仿真模拟与真机实验,目的是为了用更少的时间去训练完成一个性能相对优异的攻击检测系统。虽然造成检测精度上的损失,即不能实现当前最佳攻击检测模型在无特征约束条件下99%以上的检测精度,但本文所提出的模型是一种基于短时间与高精度的综合考量。该模型在特征数量为5的条件下表现出了最佳性能,高于当前同等条件下Cosine_PIO[15]、LSSVM[15]以及ID3-BA[19]等模型的检测精度。

3 结论

本文提出了一种改进混合量子经典架构,由QSE以及VQC结合经典机器学习策略组成。该架构通过编码函数对经典数据进行量子态编码,并通过张量映射方法将经典数据加载到量子线路。利用VQC在希尔伯特空间进行酉变换,通过测量操作以及经典计算机的后处理引入并加强非线性。可将VQC以及经典后处理视为单层VQNN,通过复用的方式构建深度混合量子经典架构。实验证明了本文所提出的改进VQNN模型的可行性,并在TensorFlow Quantum量子模拟器以及IBM Quantum真实量子设备上设计并实现了该模型。研究结果表明,可以将量子计算机应用于安全领域,以提高未来安全系统的可靠性。此外,该工作提供了一个将量子计算与经典机器学习相结合的新思路。VQNN是否完全优于经典神经网络这个问题和证明“量子霸权”一样困难,但是VQNN可提供一个可行的分析框架。

猜你喜欢

变分编码量子
《量子电子学报》征稿简则
概率生成模型变分推理方法综述
《量子电子学报》征稿简则
生活中的编码
“九章”,神秘量子界的中国先机
多项式变分不等式解集的非空紧性和估计
新量子通信线路保障网络安全
基于SPM的材料编码自主化初探
Genome and healthcare
工程师使用Matlab的变分方法