本发明属于量子计算领域。更确切地,本发明涉及一种作为可训练分类器的一部分的混合量子-经典计算系统。
背景技术:
1、量子计算机提供了可控量子力学系统的平台,这些系统的状态和相互作用可以被控制以执行计算。计算是通过可控量子力学系统(例如,作为经典比特的量子类似物的量子比特)的确定性演化来实现的,并且可以测量量子力学系统的状态来确定计算的结果。
2、对这些量子比特的控制运算被称为量子门。量子门可以相干地作用于量子比特,以诱导单个量子比特状态的变化(所谓的单量子比特门)以及作用于多个量子比特(所谓的多量子比特门)(例如以便纠缠多个量子比特的状态)及其任何组合。例如,单量子比特门可以诱导电子的自旋态旋转可选择的值(例如,π/2)。多量子比特门可以相干地作用于两个或更多个量子比特,比如对两个量子比特的状态进行相干cnot运算。多个量子门可以并行或依次应用于量子计算机的量子比特以执行计算。最终,可以在应用一系列量子门之后重复测量量子比特的状态,以确定计算的每个可能结果的概率。
3、为了计算被认为在经典计算机上难处理的问题的解,量子计算机可以利用量子力学状态的特殊性质,特别是不同量子态的叠加和纠缠,来以相对较少的计算步骤找到解。
4、然而,量子力学系统的叠加态/纠缠态固有地不稳定(例如,受到退相干的影响)并且这些系统的控制和测量受保真度裕度的影响,使得最先进的量子计算机目前在可控量子力学系统(量子比特)的数量以及连续执行的控制动作(量子门)的数量方面都受到限制。
5、尽管存在这些缺点,但近期可用的量子处理器(即嘈杂中型量子(noisyintermediate-scale quantum,nisq)设备)应用前景广阔,比如变分量子算法。在变分量子算法中,量子门的作用根据变分参数进行参数化,并且变分参数可以在经典计算资源的帮助下以类似于机器学习的方式系统地变化。通过改变变分参数以使成本函数(该成本函数给出变分量子电路关于最优解的输出的成本)极值化,可以“训练”变分量子电路的输出以提供未见过的问题的最优解。不同量子比特之间的纠缠可能会提供大的内部状态空间,以提供“量子优势”。
6、例如,henderson等人(“quanvolutional neural networks:powering imagerecognition with quantum circuits[量子卷积神经网络:用量子电路为图像识别提供动力]”)研究了涉及图像分类的量子机器学习(qml)方法,包括作为卷积图像编码的一部分的“量子卷积层”。量子卷积层根据随机确定的参数化作用来处理输入特征,以生成编码特征供解码模块分析,该解码模块提供分类结果。
技术实现思路
1、然而,量子设备仍然没有广泛应用,并且在实际实施中可能在量子比特数量和电路深度方面都受到限制,这也限制了nisq设备作为变分量子电路的一部分的应用。
2、鉴于这种现有技术,本发明的目的是提供一种用于特征网格(比如图像的像素图)的改进的分类器,该分类器包括基于量子电路的架构,这些架构可以高效地采用相对较小的、可实现的量子设备来完成逼近任务。
3、该目的通过根据独立权利要求的用于对图像进行分类的系统、方法和计算机程序来解决。从属权利要求涉及优选实施例。
4、根据第一方面,本发明涉及一种用于对作为输入提供的特征网格进行分类的混合量子-经典计算系统。该系统包括卷积块,该卷积块包括卷积滤波器,该卷积滤波器被配置为接收该特征网格作为输入并且基于该卷积滤波器的可训练配置来输出该特征网格的多个输出特征。该系统进一步包括展平化层,该展平化层用于将从该卷积块接收到的经滤波输出特征网格变换成展平化特征向量。该系统进一步包括分类块,该分类块被配置为接收该展平化特征向量并且生成输出分类。该分类块包括多个独立变分量子电路,每个变分量子电路包括作用于相应变分量子电路的量子比特寄存器的量子比特的多个量子门。该多个量子门包括变分量子门和编码门,其中,根据相关联的变分参数来参数化变分量子门对该量子比特寄存器的量子比特的作用,这些编码门用于根据输入特征向量修改该量子比特寄存器的量子比特的状态。该多个独立变分量子电路中的变分量子电路接收来自该展平化特征向量的不同特征子集作为该输入特征向量,并且该多个独立变分量子电路的测量输出被组合以确定该输入特征网格的标签作为该输出分类。
5、与现有方法(其中,可用变分量子电路复杂度限制了可能的输入特征的数量)相反,该系统使用多个独立变分量子电路来独立地处理经由卷积块从输入特征网格中提取的展平化特征子集。因此,该方法受可处理输入特征的可实现最大数量的限制较小,该最大数量例如由每量子比特编码的特征的最大数量和可用量子比特的数量来定义。发明人在他们的实验中惊奇地发现,尽管多个变分量子电路的所有量子比特之间缺乏纠缠,但是仍然可以利用量子优势进行图像分类。因此,可以提供一种用于处理和分类输入特征网格的可行的混合量子-经典计算系统。为输入特征网格确定的标签可以对应于到多个(预定)输出类别的分类和/或可以是系统在输入特征网格中检测到的对象/模式的标识符。
6、输入特征网格可以对应于二维或多维数值阵列,其可以用数据指示图像的视觉编码。例如,输入特征网格可以是二维像素网格,其中,每个像素的数值可以对应于灰度图像编码,比如范围从黑至白的亮度值。像素网格可以对要分类的对象的图像进行编码,比如字母、数字或如人脸、用车辆的相机拍摄的场景等对象。系统的分类然后可以为图像赋予输出类别,例如某个字母、某个数字或面部图像数据库中的对应条目。
7、类似于本领域中已知的图像分类方法,输入特征网格最初可以使用卷积滤波器进行处理,其中,该卷积滤波器可以应用于网格的不同子集以生成经滤波输出特征网格,其中,该卷积滤波器可以对作为输入提供的特征网格中的一组相邻特征实施局部操作。例如,输入特征格网可以用于生成多个正方形特征格网,比如输入特征格网中的3×3或5×5相邻特征格网。每个子集可以由卷积滤波器处理,该卷积滤波器可以例如通过人工神经元的经训练网络来生成特征网格的输入子集的对应经滤波特征。每个正方形特征网格可以通过不同的卷积特征并行处理,以从正方形特征网格中提取不同的图像特征,例如正方形特征网格中的边缘或线。
8、使用卷积滤波器获得的经滤波特征可以产生经滤波特征网格,这些经滤波特征网格可以由附加卷积滤波器进一步处理。卷积块然后可以输出多个经滤波特征网格,例如其中,不同的经滤波特征网格对应于应用于输入特征网格的不同滤波器。
9、例如通过使用根据多个内部权重和偏置将经滤波特征网格映射到多个特征上的人工神经网络,可以将经滤波特征网格展平化成展平化特征向量,该展平化特征向量可以是从卷积块的输出得到的特征列表。
10、在优选实施例中,该卷积块和/或该展平化层在经典硬件中实施,特别是使用可训练机器学习模型来实施。
11、可训练机器学习模型可以被训练以获得经训练机器学习模型,或者可以被提供为经训练机器学习模型,并且经训练机器学习模型可以根据多个机器学习参数(比如人工神经网络的权重和偏置)来处理经滤波输出特征网格。经训练机器学习模型可以通过定义机器学习架构并且通过基于历史数据和对应的类别在训练过程中训练对应的机器学习参数(例如使用随机梯度下降或另一优化方法)来获得。在训练过程后,经训练机器学习模型可以被配置为为混合量子-经典计算系统的后续分类阶段产生最优输出。
12、在一些实施例中,该系统包括经典处理系统和/或包括被配置为实施经训练机器学习模型的ai处理硬件,其中,该ai处理硬件特别包括gpu、神经处理单元、基于模拟存储器的硬件、或神经形态硬件。
13、该处理系统可以包括单个处理单元,或者可以包括可以在功能上连接的多个处理单元。处理单元可以包括微控制器、asic、pla(cpla)、fpga、或其他处理设备(包括基于软件、硬件、固件或其组合来操作的处理设备),比如上述ai处理硬件。处理设备可以包括集成存储器,或者与外部存储器进行通信,或者二者兼具,并且可以进一步包括用于连接到传感器、设备、装置、集成逻辑电路、其他控制器等的接口,其中,这些接口可以被配置为接收或发送如电信号、光学信号、无线信号、声信号等信号。
14、该处理系统可以使用经典硬件实施经训练机器学习模型,并且可以处理输入特征网格以生成展平化特征向量,该特征向量随后可以由多个独立变分量子电路进行处理。优选地,展平化特征向量中的特征数量是多个变分量子网络中的量子比特数量的倍数。
15、在优选实施例中,该多个独立变分量子电路中的每个变分量子电路被配置为将多个输入编码到其量子比特寄存器的量子比特的量子态中,并且该输入特征向量包括多个特征,这些特征的数量是该多个独立变分量子电路中的变分量子电路的输入数量的倍数。
16、多个输入可以被编码在每个变分量子电路的所有量子比特或量子比特的子集中,例如多个输入特征可以被编码到单个量子比特中或变分量子电路的多个量子比特的子组中。在一些实施例中,多个输入特征可以被编码到变分量子电路的多个量子比特的量子态中,其中,量子比特数量可以小于或大于输入数量。在一些实施例中,多个输入特征平均分布在相应变分量子电路的量子比特中,并且可以通过操纵相应量子比特的量子态来编码。
17、例如,展平化层可以生成包括n个特征的特征向量,并且每个变分量子网络可以包括m个量子比特,其中,n=m*k,其中,k是大于一的自然数,即k∈{2;2;4;...}。展平化特征向量可以被分成k个特征子集,这些特征子集可以由k个独立变分量子电路独立处理。那么k个特征子集中的一个特征子集中的每个特征可以被编码在对应的变分量子电路的m个量子比特中的相应量子比特中。
18、独立变分量子电路可以并行和/或顺序地处理特征子集。换言之,可以使用相同或不同的硬件来实施多个不同变分量子电路,并且可以彼此独立地获得每个变分量子电路的输出。
19、变分量子电路通常可以包括多个量子比特,它们的量子态可以通过应用被依次或并行应用于单个量子比特和/或多个量子比特的量子门来操纵。
20、量子比特可以形成量子比特寄存器,并且可以将量子比特初始化为初始状态,比如每个量子比特的基态。在一些实施例中,在将量子比特初始化为其基态之后,例如经由应用阿达玛门(hadamard gate)来制备量子比特寄存器中的每个量子比特的叠加态。
21、随后,可以将多个量子门应用于量子比特以将它们的状态变换为输出状态。在变分量子电路中,变分量子网络中的至少一些量子门的作用被参数化,使得测量输出是将(变分)量子门的可变作用参数化的变分参数的函数。(至少部分地参数化的)量子门的组合作用可以被称为变分量子网络,因为操作原理可以类似于神经网络的操作。
22、进一步地,在变分量子电路中,至少一个量子门被用作编码门,其中,编码门的作用基于输入特征向量。例如,可以通过单量子比特旋转来旋转与输入特征向量的值成比例的一个量子比特的状态,从而将输入特征向量的值编码到量子比特中。
23、在一些实施例中,该至少一个编码门包括与输入特征向量的值成比例的单量子比特旋转。该编码门可以被应用k次作为每个变分量子电路的一部分,其中,k是大于2的整数值,并且其中,该变分量子电路通过至少2k个变分参数来参数化。多次应用编码门可以实施将输入特征向量重新上传到变分量子电路中,使得变分量子电路可以将高阶傅立叶级数拟合到标记函数。
24、双或多量子比特门可以在量子比特之间创建叠加态,以便利用量子硬件提供的“量子优势”,其中,这样的门在下文也可以被称为纠缠门。例如,当变分量子电路在基于陷俘离子系统的量子设备中实施时,陷俘离子系统中不同离子的状态可以通过联合激励来耦合,例如,经由相互作用来介导。作为另一个示例,量子比特寄存器中的量子比特对可以经由量子粒子的(可调)最近邻相互作用或交换而纠缠,以便实施双量子比特门,比如cnot门。
25、在一些实施例中,变分量子网络可以根据量子门层来定义,这些量子门层可以作用于量子比特以将量子比特寄存器中的量子比特链接起来。量子门层可以包括对量子比特寄存器中的量子比特的状态进行的多个相干运算的累积作用。一个层中的相干运算的累积作用通常应当作用于量子比特寄存器中参与计算的所有量子比特,或者换句话说,量子门层应当直接影响量子比特寄存器中所有量子比特的状态。每一层应当包括至少一个多量子比特门和至少一个变分量子门(原则上可以是相同的门)。本领域技术人员将理解,层中的多个量子门可以并行应用于量子比特以缩短对层中的量子比特的状态的相干运算序列。随后将多层量子门应用于量子比特于是可以形成变分量子网络,其中,变分量子网络通过每一层的变分参数来参数化。
26、这些层可以包含相同类型的量子门并且可以顺序地应用于量子比特寄存器。例如,每一层可以具有相同的量子门架构,而变分参数的不同元素可以应用于该层的变分门。换言之,这些层可以具有相同的量子门架构,但量子门对每一层中的量子比特的作用可以基于变分参数和/或输入特征向量而不同。
27、在量子门层已经作用于量子比特之后,可以测量量子比特以获得变分量子电路关于已知初始状态的特性结果。量子力学计算的结果可以基于量子比特的计算基本态来测量。计算基本态可以是由每个量子比特的基本态的张量积所跨越的希尔伯特空间(hilbertspace)的正交基本态。
28、变分量子门的初始变分参数可以对最优分类器的初始(随机)猜测进行编码,并且可以(重复地)测量具有变分参数的变分量子电路的评估结果以确定对应的标签。基于该标签,可以经典地评估成本函数以给出该标签的成本,或者换句话说,计算关于该标签有多好的度量。
29、通过训练该系统,变分参数可以以迭代的方式系统地变化,使得变分量子电路逼近输出标签。
30、在优选实施例中,该多个独立变分量子电路中的一个变分量子电路的变分参数不同于该多个独立变分量子电路中的另一个变分量子电路的变分参数。
31、例如,每个变分量子电路可以与相应的变分参数相关联,这些变分参数可以不同于该多个变分量子电路中的任何一个其他变分量子电路的变分参数。
32、在优选实施例中,该多个独立变分量子电路中的每个变分量子电路包括多个量子门层,其中,该多个量子门层中的每一层特别包括用于该量子比特寄存器的量子比特中的每个量子比特的变分量子门。
33、发明人发现附加的门层可以增加量子比特的可访问傅立叶空间,并且由此可以改进分类结果。每一层可以包括不同的变分参数,这些变分参数可以被训练,使得每一层对变分量子电路的量子比特的可变作用可以不同。每一层还可以包括纠缠门和/或编码门。每一层中的编码门可以将来自特征子集的相同特征重新编码到相应的量子比特,或者可以对特征子集中的不同特征进行编码,以作为量子电路的一部分的附加门为代价来增加由相应的变分量子电路处理的特征的数量。
34、在优选实施例中,该多个独立变分量子电路各自在其相应的量子比特寄存器中包括至少两个量子比特。
35、变分量子电路原则上可以根据量子处理资源的可用性来设计,其中,量子比特数量的增加通常可以增加可访问的傅立叶空间,并且由此增加由变分量子电路执行的内部计算的复杂度。通常,每个变分量子电路可以处理来自与量子比特数量或其倍数相对应的展平化特征向量的特征子集,以便分析由卷积块提取的特定数量的特征,并且从中确定指示输出标签/类别的值,例如等于变分量子电路中的量子比特数量的数值数量。多个变分量子电路中的每个变分量子电路可以包括用于纠缠至少两个量子比特的量子态的纠缠门。
36、在优选实施例中,该多个独立变分量子电路中的每个变分量子电路包括纠缠门,该纠缠门用于纠缠相应量子比特寄存器的量子比特中的至少两个量子比特的量子态。
37、可以测量该多个独立变分量子电路中的每个变分量子电路中的量子比特的纠缠态,以确定对应的输出,该输出可以用于确定输出类别。
38、在优选实施例中,该多个独立变分量子电路中的一个变分量子电路的量子比特寄存器中的所有量子比特的输出状态独立于该多个独立变分量子电路中的另一个变分量子电路的量子门的作用。
39、因此,变分量子电路可以独立实施,并且可以并行计算,例如使用单独的硬件实施方式,或者顺序地计算,例如使用相同的硬件实施方式。
40、在优选实施例中,该多个独立变分量子电路中的不同变分量子电路的量子比特的量子态在测量之前不纠缠。
41、换言之,不同变分量子电路的量子比特在整个计算过程中可以保持独立。
42、在优选实施例中,该多个独立变分量子电路在量子硬件中实施。
43、在发明人的初步实验中,变分量子电路通常在经典硬件上运行的量子设备的模拟中实施,并且实验表明,当与机器学习中的经典方法相比时,所得虚拟混合量子经典设备可以实现类似的结果,同时依赖于在训练期间必须优化的较少可训练参数。因此,在一些实施例中,甚至模拟的变分量子电路也可能是有益的,即可以使用量子模拟器在经典计算机上实施多个变分量子电路。然而,该系统优选地用在量子硬件上计算的变分量子电路来实施,以便减少模拟复杂量子硬件所需的经典处理能力和计算时间。
44、对于每个量子比特和/或每个变分量子电路,可以测量变分量子电路的输出并将其映射到输出特征,例如介于0与1之间。所述输出特征随后可以被系统用来确定对应于输入特征网格的输出标签/类别。
45、在优选实施例中,该多个独立变分量子电路的测量输出是使用在经典硬件中实施的人工神经元可训练层、特别是在经典硬件中实施的人工神经元全连接层来组合的。
46、人工神经元层可以实施不同独立变分量子电路的输出之间的耦合,其中,该全连接层可以在每一个变分量子电路之间引入耦合。人工神经元可训练层可以被训练用于最优地组合测量输出以获得标签,或者可以作为经训练的人工神经元层获得。本领域技术人员将理解,并非所有量子比特都需要被测量,或者在使用人工神经元层确定分类结果之前,可以组合或丢弃这些变分量子电路中的一个变分量子电路的一些测量输出。
47、在优选实施例中,该卷积块、该展平化层和该分类块的可训练参数是基于联合训练过程获得的,特别是在经典硬件中实施的机器学习模型和在量子硬件中实施的该多个独立变分量子电路的联合训练过程。
48、联合训练过程可以训练经典层来为相应的分类任务提取合适的特征,可以训练展平化层来将在卷积块中提取的特征映射到多个独立变分量子电路的相应输入,可以训练多个独立变分量子电路来产生输出,这些输出有利地将展平化特征向量变换为指示分类任务的测量输出特征,并且可以训练人工神经元组合层以基于多个独立变分量子电路的测量输出来确定分类结果。
49、本领域技术人员将理解,在一些实施例中,卷积块可以不与变分量子电路一起训练,而是可以使用来自不同分类系统的预训练卷积块,并且可以在联合训练中仅训练展平化层在多个变分量子电路之前的部分、包括多个独立变分量子电路的分类块以及组合层,这在一些实施例中可以降低训练任务的复杂度。在这种情况下,仅展平化层和组合层的参数可以是混合量子-经典计算系统的经典部分的可训练机器学习参数的一部分。展平化层可以包括人工神经元全连接层,以便将卷积块的输出映射到展平化特征向量,作为多个独立变分量子电路的输入。
50、系统可以以迭代的方式进行训练,其中,变分参数、(卷积块和/或展平化层的)机器学习参数和组合参数(在下文中也统称为可训练参数)可以在迭代过程的每个步骤中被联合优化,使得对于相同的输入特征网格,输出标签接近样本数据集的标签。
51、迭代过程可以模仿经典机器学习模型的训练,其中,输出标签与基于成本函数的成本值相关联。例如,训练可以基于标签样本数据集和对应的样本输入特征网格,并且成本函数可以是损失函数,该损失函数基于输出标签并且基于相同输入特征网格的样本数据集的样本标签。成本函数可以是相同输入特征网格的输出标签与样本标签之间的均方误差。因此,用于训练的方法可以基于标签样本数据集和对应的输入特征网格。本领域技术人员将理解,可以在训练混合量子-经典计算系统时构建样本数据集,例如,通过获得样本数据集的数据点(例如包括输入特征网格和对应的标签),然后基于数据点训练混合量子-经典计算系统。
52、在其他示例中,最优标签可能是未知的,但是可以基于问题陈述(例如,以旅行商问题的旅行时间作为说明性示例)给出候选解的成本,并且可以改变可训练参数,以使成本极值化(最大化或最小化)。
53、可训练参数可以用经典机器学习中采用的已知技术来更新,比如基于梯度的优化算法(例如随机梯度下降或自适应矩估计),或无梯度优化(比如模拟退火)。优选地,优化算法是基于梯度的,并且该方法可以包括确定可训练参数关于由成本函数为输出标签给出的成本的梯度。
54、尽管该系统主要以图像作为输入特征为例进行了说明,但是本领域技术人员将理解,该系统同样适用于处理根据特征网格编码的附加信息,该信息可能不一定属于视觉信息。
55、根据第二方面,本发明涉及一种基于混合量子-经典计算算法来确定输入特征网格的标签的方法。该方法包括接收该输入特征网格并且基于该输入特征网格和卷积滤波器生成经滤波特征网格。该卷积滤波器被配置为基于该卷积滤波器的可训练配置来输出该输入特征网格的多个输出特征。该方法进一步包括将该经滤波输出特征网格展平化成展平化特征向量,并且将该展平化特征向量分成多个展平化特征向量子集。该方法进一步包括将这些展平化特征向量子集中每一个编码到多个独立变分量子电路中的对应变分量子电路的量子比特中。该多个独立变分量子电路中的每个变分量子电路包括:编码门,该编码门被配置为基于该多个展平化特征向量子集中的对应子集的特征作用于量子比特的量子态;变分量子门,其中,根据相关联的变分参数来参数化变分量子门对该量子比特寄存器的量子比特的作用;以及纠缠门,该纠缠门用于产生对应电路的两个量子比特的量子态的叠加。该方法进一步包括基于测量该多个独立变分量子电路中的每个变分量子电路的输出状态而获得测量输出,并且将该多个独立变分量子电路的测量输出组合以确定对应的输出标签。
56、优选地,通过使用经训练机器学习模型(例如,多层感知器,优选地包括人工神经元全连接层)组合测量输出来确定标签。然而,在一些实施例中,在量子层之后可能不存在经典层,但是量子层之后的输出可以是对问题的输出标签的预测,例如通过简单地级联测量输出,或者根据预定的组合函数对测量输出进行组合。确定标签可以将输入特征网格分类为一组预定的输出类别。
57、该方法可以使用根据第一方面的系统的元件和部件或其实施例的任何组合,或者可以实施所述部件的任何功能。
58、根据第三方面,本发明涉及一种用于训练混合量子-经典计算系统的方法,该系统用于逼近输入特征网格的标记函数。该系统包括机器学习模型,该机器学习模型在经典处理系统上实施,该机器学习模型被配置为根据参数化传递函数基于该输入特征网格来生成展平化特征向量,其中,该参数化传递函数通过机器学习参数进行参数化,并且其中,该机器学习模型包括人工神经元卷积层。该系统进一步包括多个独立变分量子电路,每个变分量子电路包括作用于相应量子比特寄存器的量子比特的多个量子门,该多个量子门包括变分量子门和编码门,其中,根据相关联的变分参数来参数化变分量子门对该量子比特寄存器的量子比特的参数化作用,该编码门用于根据输入特征向量修改该量子比特寄存器的量子比特的状态。该多个独立变分量子电路中的变分量子电路接收来自该展平化特征向量的不同特征子集作为该输入特征向量。该系统进一步包括组合模块,该组合模块在经典处理系统上实施,该组合模块配置为接收由该多个独立变分量子电路生成的测量输出并且将该多个独立变分量子电路的测量输出组合以确定分类结果,其中,该组合基于多个可训练组合参数。该方法包括以下步骤:将样本特征网格提供给该机器学习模型,并且从该机器学习模型接收输出的展平化特征向量。该方法进一步包括将该输出的展平化特征向量分成多个展平化特征向量子集,并且将每个展平化特征向量子集提供给该多个变分量子电路中的对应变分量子电路,以及基于该多个独立变分量子电路的测量输出从该组合模块接收输出标签。该方法进一步包括基于该输出标签的损失函数的值确定这些变分参数和这些可训练组合参数的参数更新。
59、原则上,机器学习模型可能已经被(部分地)训练,并且机器学习模型的仅一部分(例如作为展平化层的一部分)可以与多个独立变分量子电路一起训练。例如,传统机器学习模型的基于卷积层的一部分可以用作编码器部分,并且传统机器学习模型的编码器部分的输出可以由机器学习模型的第二部分映射到展平化特征向量,以便准备用于由多个独立变分量子电路处理的提取特征。因此,仅机器学习参数的第二部分可以与变分参数和组合参数一起训练。在其他示例中,所有机器学习参数都可以与变分参数和组合参数一起训练。换言之,混合量子-经典计算系统的量子层和经典层可以同时被训练,并且参数更新可以更新机器学习模型的参数和变分参数两者。
60、在一些实施例中,确定参数更新包括确定变分参数的导数向量作为参数更新梯度的一部分。
61、可以基于参数更新梯度来更新可训练参数,其中,可以基于梯度值和量化更新步长大小的学习率的值来修改可训练参数的子集或全部。
62、在一些实施例中,确定参数更新是基于随机梯度下降来进行的,优选地包括动量系数,该动量系数基于成本函数的先前确定梯度。
63、变分参数的成本函数的梯度可以通过参数移位规则来获得,在该参数移位规则中,用移位的变分参数来评估变分量子电路,以便确定成本函数关于移位的变分参数的偏导数。
64、在一些实施例中,该方法包括确定变分参数的导数向量,其中,确定导数向量可以包括在迭代过程的每次迭代时将参数移位规则应用于变分门的子集或全部。
65、具体地,对于特征值为±1/2的量子门,例如1/2{σx,σy,σz}中的一量子比特旋转发生器,函数f关于变分参数θj的偏导数可以根据来确定。
66、成本函数关于机器学习参数的偏导数可以利用已知的方法来确定。因此,混合量子-经典计算系统的不同部分可以基于由成本函数关于变分量子电路和机器学习模型两者的可训练参数的偏导数组成的梯度来联合优化。例如,可以重复评估量子力学网络以确定量子门层关于变分参数的偏导数,并且可以根据测得的偏导数以及机器学习参数的经典计算的导数来经典地计算梯度。
67、然而,本领域技术人员将理解,变分参数同样可以在优化算法中被优化而无需获得导数,例如通过(随机)对成本函数进行采样,比如在线性逼近约束优化(cobyla)算法或类似算法中,并且梯度可以是基于成本函数的能量景观估计的估计梯度。
68、然后,可以通过根据成本函数关于可训练参数的确定/估计梯度(例如,利用基于自适应矩的更新函数)迭代地更新可训练参数来最小化/最大化成本函数。
69、在一些实施例中,确定参数更新是基于成本函数的梯度上的移动平均值的更新函数以及成本函数的平方梯度上的移动平均值的更新函数来进行的。
70、由于基于自适应矩的更新函数取决于成本函数的梯度上的移动平均值和成本函数的梯度上的移动平均值的(元素)平方,可以通过梯度的一阶矩和二阶矩来平滑变分参数的更新,使得对于“嘈杂”的量子系统也能够朝向最优解下降。
71、在一些实施例中,用于更新变分参数和机器学习参数的学习率是不同的。
72、混合量子-经典计算系统的最优性能可能需要在训练期间调整更新变分参数和机器学习参数的相对速度,使得训练朝向一组可训练参数收敛,在该组可训练参数中,变分量子电路和机器学习模型都对输出标签做出了最优贡献。例如,变分量子电路和机器学习模型可以以不同的速率朝向各自的最优解收敛。如果学习率调整不当,则在训练期间,系统可能会陷入局部最小值,在这种情况下,变分量子电路和机器学习模型之一对输出标签的贡献小于优化配置的混合量子-经典计算系统中的贡献。
73、在一些实施例中,变分参数的学习率大于机器学习参数的学习率。
74、不同的学习率可以基于机器学习模型和变分参数的各个收敛速率来估计,可以是基于历史优化结果,或者对于混合量子-经典计算系统可以凭经验确定,例如针对输入特征网格和对应标签的样本数据集。
75、在一些实施例中,可以利用用于更新变分参数和机器学习或组合参数的学习率的不同比率来训练混合量子-经典计算系统,以关于标记函数确定用于更新这些变分参数和这些机器学习参数的学习率的最优比率。
76、例如,混合量子-经典计算系统可以在固定的初始化点进行初始化,每次都包括相同的(例如随机确定)可训练参数起始值,并且可以利用机器学习模型和变分量子电路的不同学习率值从固定的初始化点开始重复训练,同时记录训练期间未使用的输入特征网格(例如,不是训练数据集的一部分)的成本函数的最终结果。在实践中,一个学习率可以是固定的,例如与变分参数相关联的学习率,而其他(一个或多个)学习率可以是变化的,例如机器学习参数和组合参数的学习率(在一些实施例中可以是相同或不同的学习率)。本领域技术人员将理解,(多个)学习率也可以衰减或阶梯式变化,并且不同的学习率可以分别与机器学习参数和变分参数的基础学习率有关。
77、基于成本函数的结果值,可以选择最优学习率,并且随后可以基于先前确定的最优学习率或其比率来实施或进一步训练混合量子-经典计算系统。
78、通过使用根据第三方面的方法来训练系统,可以获得第一方面的混合量子-经典计算系统。
79、根据第四方面,本发明涉及一种包括机器可读指令的计算机程序,当该计算机程序由处理系统执行时,这些机器可读指令使该处理系统实施根据第二方面或第三方面的任何实施例的方法和/或实施根据第一方面的任何实施例的系统。
80、该计算机程序可以作为机器可读指令存储在非暂态介质上,当该计算机程序由处理系统执行时,这些机器可读指令使该处理系统实施根据第二方面或第三方面的任何实施例的方法和/或实施根据第一方面的任何实施例的系统。
81、该计算机程序可以协调混合量子-经典计算系统的训练,和/或可以实施混合量子-经典计算系统,该系统用于基于先前获得的可训练参数来逼近给定标记函数。
82、该计算机程序可以配置多个变分量子电路,例如通过确定变分量子电路的架构和/或变分参数。在系统和/或方法的实施期间,计算机程序可以向多个独立变分量子电路提供展平化特征向量子集,并且可以接收变分量子电路的测量输出。
83、该计算机程序可以进一步实施和控制可以实施卷积块和展平化层的机器学习模型,并且还可以实施用于将多个独立变分量子电路的测量输出组合以确定输入特征网格的输出标签的机器学习模型。
84、在一些实施例中,该计算机程序可以控制混合量子-经典计算系统的训练,并且可以确定机器学习参数、组合参数和变分参数的参数更新。
1.一种用于对作为输入提供的特征网格(26,28,28a-d)进行分类的混合量子-经典计算系统(10),所述系统(10)包括:
2.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的一个变分量子电路的量子比特寄存器中的所有量子比特(38)的输出状态独立于所述多个独立变分量子电路(20)中的另一个变分量子电路的量子门(40,44,46)的作用。
3.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的一个变分量子电路的变分参数不同于所述多个独立变分量子电路(20)中的另一个变分量子电路的变分参数。
4.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的每个变分量子电路包括多个量子门层(42),其中,所述多个量子门层(42)中的每一层(42)特别包括用于所述量子比特寄存器的量子比特(38)中的每个量子比特的变分量子门(44)。
5.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)在量子硬件中实施。
6.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述卷积块(12)和/或所述展平化层(14)在经典硬件中实施,特别是使用可训练机器学习模型来实施。
7.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)各自在其相应的量子比特寄存器中包括至少两个量子比特(38)。
8.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的每个变分量子电路包括纠缠门(46),所述纠缠门用于纠缠相应量子比特寄存器的量子比特中的至少两个量子比特(38)的量子态。
9.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的不同变分量子电路(20)的量子比特(38)的量子态在测量之前不纠缠。
10.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述卷积块(12)、所述展平化层(14)和所述分类块(22)的可训练参数是基于联合训练过程获得的,特别是在经典硬件中实施的机器学习模型和在量子硬件中实施的所述多个独立变分量子电路(20)的联合训练过程。
11.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)中的每个变分量子电路(20)被配置为将多个输入编码到其量子比特寄存器的量子比特(38)的量子态中,并且所述输入特征向量(16,18)包括多个特征,所述特征的数量是所述多个独立变分量子电路(20)中的变分量子电路(20)的输入数量的倍数。
12.如前述权利要求中任一项所述的混合量子-经典计算系统(10),其中,所述多个独立变分量子电路(20)的所述测量输出(32)是使用在经典硬件中实施的人工神经元可训练层、特别是在经典硬件中实施的人工神经元全连接层(24)来组合的。
13.一种用于基于混合量子-经典计算算法确定输入特征网格(26,28,28a-d)的标签(36)的方法,所述方法包括:
14.一种用于训练混合量子-经典计算系统(10)的方法,所述系统用于逼近输入特征网格(26,28,28a-d)的标记函数,所述系统(10)包括
15.一种存储有机器可读指令的非暂态机器可读介质,当所述机器可读指令被处理系统执行时,所述机器可读指令使所述处理系统实施和/或控制根据权利要求1至12中任一项所述的系统(10)和/或实施根据权利要求13或14所述的方法。