使用量子神经网络的分类

文档序号:1220311 发布日期:2020-09-04 浏览:7次 >En<

阅读说明:本技术 使用量子神经网络的分类 (Classification using quantum neural networks ) 是由 E.H.法里 H.内文 于 2019-01-16 设计创作,主要内容包括:本公开涉及可以在量子计算系统上实现的分类方法。根据第一方面,本说明书描述了一种用于训练在量子计算机上实现的分类器的方法,所述方法包括:在具有已知分类的输入状态下准备多个量子位,所述多个量子位包括一个或多个读出量子位;将一个或多个参数化量子门应用于多个量子位,以将输入状态变换为输出状态;使用输出状态下的一个或多个读出量子位的读出状态,确定输入状态的预测分类;将预测分类与已知分类进行比较;以及根据预测分类与已知分类的比较,更新参数化量子门的一个或多个参数。(The present disclosure relates to classification methods that may be implemented on quantum computing systems. According to a first aspect, the present specification describes a method for training a classifier implemented on a quantum computer, the method comprising: preparing a plurality of qubits in an input state having a known classification, the plurality of qubits including one or more readout qubits; applying one or more parameterized qubits to a plurality of qubits to transform an input state to an output state; determining a predictive classification of the input state using the readout states of the one or more readout qubits in the output state; comparing the predicted classification to known classifications; and updating one or more parameters of the parameterized quantum gate based on the comparison of the predicted classification to the known classification.)

使用量子神经网络的分类

技术领域

本公开涉及可以在量子计算系统上实现的分类方法。本公开还涉及量子计算系统。

背景技术

量子计算机是利用量子叠加和纠缠比经典计算机更快地解决某些类型问题的计算设备。量子计算机的构造块是量子位。量子位实际上是两个级别的系统,其状态可以处于其两个状态的叠加,而不是像经典位那样仅处于两个状态中的任何一个。

经典机器学习是一个或多个经典计算机使用从机器学习处理在计算机执行这些任务期间获得的经验或收集的数据生成的反馈来学习执行任务类别的研究领域。

发明内容

本发明的各种实施例包括方法和系统,其特征在于独立权利要求中所陈述的内容。在从属权利要求中公开了本发明的各种实施例。

根据第一方面,本说明书描述了在量子计算机上实现的训练分类器的方法,所述方法包括:在具有已知分类的输入状态下准备多个量子位,所述多个量子位包括一个或多个读出量子位;将一个或多个参数化量子门应用于多个量子位,以将输入状态变换为输出状态;使用输出状态下的一个或多个读出量子位的读出状态,确定输入状态的预测分类;将预测分类与已知分类进行比较;以及根据预测分类与已知分类的比较,更新参数化量子门的一个或多个参数。

所述方法还可以包括迭代直到满足一个或多个阈值条件。

所述方法还可以包括:确定一个或多个读出量子位的读出状态,其中,确定读出状态包括重复地:在输入状态下准备多个量子位;将参数化量子门应用于输入状态;以及测量一个或多个读出量子位的读出状态。其中,θ是参数化量子门的参数,Σ是作用于所述多个量子位中的一个或多个量子位的广义Pauli算子。

将预测分类与已知分类进行比较可以包括确定估计的样本损失。

更新一个或多个参数可以包括修改参数以减少估计的样本损失。

所述方法可以包括使用梯度下降方法来修改一个或多个参数。

参数化量子门可以每一个实现一个参数酉变换。

参数化量子门中的每一个可以包括以下之一:单量子位量子门;双量子位量子门;或三量子位的量子门。

量子门中的一个或多个可以实现以下形式的酉变换:

exp(iθ∑),

其中,θ是参数化量子门的参数,Σ是作用于多个量子位中的一个或多个的广义Pauli算子。

输入状态可以包括二元字符串的叠加。

输入状态可以包括任意量子状态。

所述方法可以包括使用经典人工神经网络准备输入状态。

所述方法可以包括使用经典人工神经网络从读出状态确定分类器。

所述方法还可以包括:应用一个或多个参数化酉算子,以将多个量子位从未分类输入状态变换为分类输出状态;根据分类输出状态下一个或多个读出量子位的测量确定读出状态;以及根据读出状态对未分类输入状态进行分类。

根据第二方面,本说明书描述了使用量子计算机执行的分类的方法,所述方法包括:应用一个或多个参数化酉算子将多个量子位从输入状态变换为输出状态,使用第一方面的分类器训练方法确定一个或多个参数化量子门的参数;根据输出状态下一个或多个读出量子位的测量确定读出状态;以及根据读出状态对输入状态进行分类。

根据第三方面,本说明书描述了一种量子计算系统,包括:多个量子位;以及一个或多个参数化量子门,其中,系统被配置为执行本文描述的各个方面的任何一个所述的方法。

根据第四方面,本说明书描述一种量子计算系统,包括:多个量子位;以及一个或多个参数化量子门,其中,系统被配置为:在具有已知分类的输入状态下准备多个量子位,所述多个量子位包括一个或多个读出量子位;将一个或多个参数化量子门应用于多个量子位,以将输入状态变换为输出状态;使用输出状态下的一个或多个读出量子位的读出状态,确定输入状态的预测分类;将预测分类与已知分类进行比较;以及根据预测分类与已知分类的比较,更新参数化量子门的一个或多个参数。

根据第五方面,本说明书描述了一种量子计算系统,包括:多个量子位;以及一个或多个参数化量子门,其中,系统被配置为:应用一个或多个参数化酉算子,以将多个量子位从未分类输入状态变换为分类输出状态,使用利用包括以下步骤的方法训练的分类器确定一个或多个参数化量子门的参数,所述方法包括:在具有已知分类的输入状态下准备多个量子位,所述多个量子位包括一个或多个读出量子位;将一个或多个参数化量子门应用于多个量子位,以将输入状态变换为输出状态;使用输出状态下的一个或多个读出量子位的读出状态,确定输入状态的预测分类;将预测分类与已知分类进行比较;以及根据预测分类与已知分类的比较,更新参数化量子门的一个或多个参数;根据分类输出状态下一个或多个读出量子位的测量确定读出状态;以及根据读出状态对未分类的输入状态进行分类。

附图说明

为了更全面地理解本文所述的方法、装置和系统,现在参照以下附图,在附图中:

图1示出根据实施例的使用量子计算机执行的分类方法的示意性示例;

图2示出根据实施例的使用量子计算机训练分类器的方法的流程图;

图3示出根据实施例的使用梯度下降更新量子门参数的方法的示例的流程图;

图4示出根据实施例的用于对量子状态进行分类的方法的流程图;以及

图5a和图5b示出根据实施例的包括经典人工神经网络和量子神经网络分类器的分类系统。

具体实施方式

图1示出使用量子计算机实现的分类系统的操作的示意性概图。

使用包括多个量子位102的量子计算系统100来执行分类方法。量子位102可以例如是(以下是非穷举列表)超导量子位(例如,“Xmon”或“Gmon”量子位)、量子点、离子阱中的电离原子或自旋量子位。量子位102可以被保持在足够低的温度下,以在整个量子算法的执行期间保持量子位之间的相干性。在使用超导量子位的实施例中,温度保持在超导临界温度以下。在一些实施例中,多个量子位102可以包括一个或多个辅助量子位(未示出),用于存储纠缠的量子状态。

量子计算系统100还包括一个或多个参数化量子门104,用于对多个量子位102实现一个或多个参数化酉变换Ull)(在本文中也称为“酉”)。量子门104包括在一个或多个量子位102上操作以执行逻辑运算的量子电路。量子门104的非穷举列表包括哈达玛门(Hadamard gate)、C-非门、相移门、托付里门(Toffoli gate)和/或受控U门。每个量子门104依次作用于输入状态106或先前量子门104的输出。参数化量子门104作用于多个量子位102以改变多个量子位102的状态。在所示的示例中,将L个量子门104依次应用于输入状态106,每个量子门都变换多个量子位102的状态。

系统被配置为学习量子门104的参数,当量子门104的参数应用于包括要被分类的状态|ψ>108和一个或多个读出量子位|m>110的输入状态|ψ,m>106时,产生输出状态112,从该输出状态112可以确定要分类的状态|ψ>106的预测分类l′(z)114(在本文中也称为预测标记函数或预测器)。对多个量子位102中的一个或多个读出量子位110执行测量,以从输出状态112确定输入状态106的预测分类114。在图1所示的实施例中,仅使用一个读出量子位110,从而得到二元预测分类器。然而,通常,可以使用任何数量的读出量子位110实现其他类型的分类器。表示要分类的状态108的量子位可以被称为“数据量子位”。

系统100使用监督学习来学习可以获得输入状态106的预测分类l′(z)114的量子门104的参数。从用于监督学习的样本数据集S选择具有已知分类l(z)(在本文中也称为标记函数)的样本状态108,并且准备包括样本状态108和一个或多个读出量子位110的输入状态106。从用于量子门104的初始参数集开始,对第一选择输入状态106应用了一个或多个量子门104以生成输出状态112。测量输出状态112的一个或多个读出量子位110的状态,以确定样本状态108的预测分类器114。例如使用样本损失函数将预测分类器114与样本状态108的已知分类进行比较,并且使用所述比较来更新量子门10的参数。

每次使用从训练数据集S选择的另一个具有已知分类的样本状态108迭代处理,直到满足某个预定阈值条件为止。得到的量子门104的参数可以在量子计算机中使用以实现对未分类状态的分类方法。类似于经典人工神经网络,训练的量子分类器可以描述为“量子神经网络”。

与先前关于在量子计算机上进行机器学习的提议相反,本文描述的系统和方法不需要使用经典人工神经网络“感知器”的专用量子版本。此外,可以使用近期可获得的量子计算系统来实现本文描述的方法和系统。与只能将经典状态作为输入的经典人工神经网络相比,本文所述的系统和方法可以接受两个经典量子状态作为输入并对其进行分类。以这种方式对输入量子状态进行分类的能力在量子计量学中非常有用,在量子计量学中,纠缠的量子状态被用于进行高分辨率测量。

在不久的将来,有望提供具有足够保真度的门模型量子计算机以运行足够深度的电路来执行经典计算机无法模拟的任务。设计在此类设备上运行的量子算法的一种方法是让硬件的架构确定要使用的门集。与先前的工作相反,本文描述的方法建立了用于在量子设备上进行监督学习的通用框架,特别适合于在近期可获得的量子处理器上实现。

图2示出根据实施例的用于训练在量子计算机上实现的分类器的方法的流程图。

在操作2.1,提供量子门的初始参数集

Figure BDA0002591703190000051

以与量子门104一起使用。初始参数集可以例如随机选择或基于某些预定义条件或最佳猜测选择。

在一些实施例中,量子门104的序列包括从一些实验上可获得的酉算子集合中选择的L个酉算子。量子门104的序列实现了酉算子由下式给出:

在此,

Figure BDA0002591703190000054

是参数(θLL-1,…θ1)的向量,Ull)是通过第l量子门实现的酉算子。

通常,每个参数θl可以包括例如向量形式的多个参数。在一些实施例中,每个量子门的特征在于单个标量值参数。在这些实施例中,每个量子门由单个参数来参数化。

在一些实施例中,量子门104实现以下形式的酉算子:

Ull)=exp(iθll)

其中,Σ是作用于一个或多个量子位的广义Pauli算子。换句话说,Σ是作用于多个量子位102中一个或多个量子位的来自集合{σxyz}的算子的张量积。这种形式的算子相对于范数以1为界的参数θl具有梯度。因此,如下所述,关于

Figure BDA0002591703190000061

的样本损失函数的梯度将是有界的,避免了与在经典人工神经网络的训练期间放大的梯度相关联的问题。

根据例如系统使用的量子位102的类型,可以多种方式实现量子门104。例如,在基于超导量子位的系统中,可以使用中间电耦合电路或微波腔来实现量子门。在基于陷阱自旋的量子计算机中,实现量子门的示例方法包括将射频脉冲应用于量子位,并利用自旋-自旋相互作用来实现多量子位门。

在操作2.2,从训练数据集S选择具有已知分类的n-量子位样本状态|ψ>108。训练数据集S包括多个样本状态106,每个样本状态具有已知分类。然后在操作2.3在包括选择的样本状态106和一个或多个读出量子位110的输入状态106中准备选择的样本状态|ψ>108。可以在已知状态下准备读出量子位110。例如,可以以以下形式来准备输入状态106:

|in>=|ψ,m>

其中,m表示以已知状态准备的m个读出量子位110。

在操作2.4,使用当前参数集将参数化量子门104的序列应用到选择的输入状态106。量子门104的序列通过应用酉变换将多个量子位102从输入状态106变换为输出状态112。

在操作2.5,测量一个或多个读出量子位110的读出状态。例如,可以在一个或多个读出量子位110上测量一个或多个Pauli算子。在一些实施例中,对读出量子位110进行重复测量以确定读出状态。为了执行重复的测量,将操作2.3至2.5重复预定次数。换句话说,方法包括:在输入状态106中重复准备多个量子位;将参数化量子门104应用到输入状态106;以及测量一个或多个读出量子位的读出状态。

在操作2.6,根据对一个或多个读出量子位110的测量来确定预测分类器l′(z)114。在一些实施例中,预测分类器108可以是一个或多个读出量子位110的状态。例如,在二元分类器中,在读出量子位110上对Pauli算子的测量结果可以直接提供预测分类114。在其他实施例中,预测分类器114可以是一个或多个读出量子位110的读出状态的函数。

在操作2.7,将输入状态106的预测分类器114与输入状态106的已知分类器进行比较。

可以使用度量将预测分类器114与已知分类器进行比较。例如,可以使用样本损失函数(或损失函数)将预测分类器114与已知分类器进行比较。样本损失函数提供了不匹配的已知分类和预测分类的“成本”。样本损失函数可以例如是当预测分类器114与已知分类器匹配时具有最小值的函数。在这些示例中,训练方法的目的可以是将训练集上的平均样本损失减少到阈值以下。

存在许多可用于将已知分类与预测分类114进行比较的样本损失函数的示例。例如,对于将输入状态分类为+1或-1的二元分类器l(ψ),并在计算基础上将单个读出量子位初始设置为1的情况下,通过下式给出可以使用的示例样本损失(loss):

Figure BDA0002591703190000071

其中,Yn+1是作用于读出量子位的σy。由于预测标记函数(在此示例中为

Figure BDA0002591703190000072

)界定在-1与1之间,因此该样本损失的最小值为零。

在操作2.8,检查阈值条件。阈值条件是用于确定何时停止训练处理的条件。阈值条件可以包括以下中的一个或多个:操作2.2到2.8的迭代次数的限制;验证状态集的阈值错误率;和/或参数的一个或多个收敛准则。

在操作2.9,如果不满足阈值条件,则根据输入状态106的预测分类器108与输入状态106的已知分类器的比较来更新量子门106的一个或多个参数。

在一些实施例中,使用梯度下降方法将输入状态106的预测分类器与样本状态108的已知分类器进行比较并更新参数。图3示出用于使用梯度下降来更新参数的方法的示例的流程图。

在操作3.1,估计样本损失。为了估计样本损失,对输出状态112中的一个或多个读出量子位110进行重复测量,并且根据测量结果来计算样本损失。重复准备初始状态106的副本,并由量子门104作用,以产生输出状态112的副本,并测量输出状态112的每个副本的读出量子位110。为了以99%的概率将样本损失估计到真实样本损失的δ以内,对读出状态进行至少2/δ2次测量。

在操作3.2,酉门参数之一被改变很小的值。所得参数集与原始参数集在一个分量上相差一小量。该小量可以例如是预定小量。可选地,例如可以从一系列值中随机选择该小量。

在操作3.3,确定具有变化的参数的新样本损失。为此,对一个或多个读出量子位110的重复测量在输出状态的副本上进行。初始状态106的副本被准备并由量子门104对其作用,以生成输出状态112的副本,因为“不可克隆定理”禁止直接复制输出状态;每个副本的读出量子位110被测量。

然后可以在操作3.4中计算相对于变化的分量的样本损失的梯度。例如,可以使用有限差方法来确定梯度。

在操作3.5,如果尚未相对于参数中的至少一个计算样本损失的梯度,则方法返回到操作3.2并重复操作3.2至3.5,每次改变不同参数。总的来说,对于L个参数,将这些步骤重复L次以获得相对于

Figure BDA0002591703190000083

的全梯度估计

在操作3.6,根据估计的梯度更新参数。给定估计梯度

Figure BDA0002591703190000085

通过沿方向改变参数来更新参数。例如,可以使用以下公式更新参数:

Figure BDA0002591703190000087

其中,r<1是“学习率”。学习率可以是固定数字。在一些实施例中,学习率随着学习进程而变化。

再次参照图2,如果不满足阈值条件,则一旦更新一个或多个参数,方法就返回操作2.2并选择另一个训练示例(即,具有已知分类的另一个样本状态108),并使用更新的量子门104参数执行操作2.3到2.8。在将迭代次数的限制用作阈值条件的实施例中,迭代计数增加一。

如果满足阈值条件,则在操作2.10存储和/或输出更新参数。这些“训练的”参数可用于在量子计算机上实现分类方法,如关于图4所述。

图4示出在量子计算机上实现的分类方法的流程图。方法可以使用通过关于图1至图3描述的方法训练的分类器。分类方法可以用作对输入状态进行分类的独立方法。可选地,分类方法可以在至少部分地在量子计算机上实现的算法中用作子例程。在一些实施例中,分类方法可以被认为是通过训练方法的单次通过,但是无需与已知分类进行任何比较或对参数化量子门104的权重进行任何更新。方法可以在量子计算系统上实现,诸如关于图1描述的量子计算系统100。

在操作4.1,接收到未分类输入状态。未分类输入状态包括多个量子位102。多个量子位102包括表示要分类的量子状态108的n个量子位,以及处于已知状态的一个或多个读出量子位110。在一些实施例中,从在量子或经典计算机和/或实验设备上运行的例程接收量子状态。许多其他示例也是可能的。在一些实施例中,方法包括根据接收的要分类的量子状态108准备输入状态106。

在操作4.2,将多个参数化量子门104应用到输入状态106,以将输入状态106变换为输出状态112。已经使用关于图1至图3描述的任何方法训练参数化量子门104的参数。

根据例如系统使用的量子位102的类型,可以多种方式实现量子门104。例如,在基于超导量子位的系统中,可以使用中间电耦合电路或微波腔来实现量子门。在基于陷阱自旋的量子计算机中,实现量子门的示例方法包括将射频脉冲应用于量子位,并利用自旋-自旋相互作用来实现多量子位门。

在一些实施例中,在分类方法期间使用的量子门104与在训练方法中使用的量子门104具有相同的类型并且实现相同的酉运算。在其他实施例中,在分类方法期间使用的量子门104具有不同的类型,尽管仍然使用相同参数实现与在训练方法中使用的量子门104相同的酉运算。

在操作4.3,测量一个或多个读出量子位110的读出状态。例如,可以在一个或多个读出量子位110上测量一个或多个Pauli算子。在一些实施例中,重复测量读出状态以增加读出状态的准确性。重复测量读出状态包括,例如,将参数化量子门104应用于输入状态106的副本以生成输出状态112;以及在输出状态112下测量一个或多个读出量子位110的读出状态。

在操作4.4,根据测量的读出状态对要分类的量子状态进行分类。在一些实施例中,通过在读出状态下的测量直接提供分类。例如,在二元分类器中,读出状态1或-1可以对应于分类。在其他实施例中,通过测量的读出状态的函数来提供分类。

通过说明的方式,现在将描述几个示例实施例和应用。为了方便,相对于二元分类描述了这些示例中的每一个,并且使用单个读出量子位,但是将理解,方法和系统可以扩展到非二元分类。例如,可以使用多个读出量子位将输入状态分类为多个可能分类中的一个或多个。

在一些实施例中,系统被配置为学习对经典二元状态进行分类。输入状态取自二元字符串集合z=z1z2…zn,其中,每个zi是二元位。例如,每个二元位可以取值±1之一。另外,二元位可以分别取值0或1之一。对于长度为n的二元字符串,存在2n个这样的字符串。训练数据集包括可能二元字符串的子集,每个具有已知的分类l(z),在本示例中,该分类被视为二元标记。该分类例如可以表示子集多数或子集奇偶校验。

在训练期间,从训练数据集中选择字符串z1。在输入状态106中准备多个量子位102以表示选择的字符串。例如,表示字符串的输入状态106可以是在计算基础状态下准备的n+1量子位状态:

Figure BDA0002591703190000101

其中,m是在已知状态下准备的读出量子位。例如,可以在二元状态±1之一中准备读出量子位10。

训练的目的是使输出状态下的读出量子位的属性的测量对应于二元分类器l(z)。例如,可以对量子门进行训练,以使对读出量子位110(其可能值为±1)上的Pauli算子进行测量来预测输入字符串z的分类。在下文中,虽然σy被用作Pauli算子的示例,但是可以可选地使用σx或σz

然后将参数化的量子门106的序列应用于输入状态106,以生成由下式给出的输出状态112

Figure BDA0002591703190000102

如上面关于图2所述。在将σy用作输出状态的读取量子位的测量算子的实施例中,样本损失函数的形式为

上述形式的样本损失函数可以用于训练参数

Figure BDA0002591703190000104

在讨论将方法应用于二元字符串的具体示例之前,将确定的是,尽管可能会在电路深度上付出高成本,但是量子神经网络能够表达任何两个有值的标记函数。存在2n个n位字符串,因此有个可能的二元标记函数l(z)。给定标记函数,请考虑其操作在计算基础状态上定义为以下的算子:

其中,Xn+1是作用于读出量子位的σx算子。通过将读出量子位旋转字符串z的标记的倍来作用。对应地:

其中,l(z)被解释为在计算基础上的算子对角。对于二元分类器,由于l(z)为+1或-l,因此可以看出:

Figure BDA0002591703190000113

这表明,至少在某种抽象水平上,存在一种用量子电路表示任何标记函数的方法。

Ul可以写为两个量子位酉的乘积(即由两个量子位量子门的序列实现)。对于此讨论,便于切换到布尔(Boolean)变量

Figure BDA0002591703190000114

并将标记函数l(z)视为(1-2B),其中,B的值为0或1。则按照位b1至bn的一般B函数的Reed-Muller表示可以被写为:

Figure BDA0002591703190000115

加是mod2,系数a均为0或1。注意,存在2n个系数,并且由于每个系数可以具有值±1,因此表示了个布尔函数。公式可以具有指数级长度。

然后,依赖于标记的酉Ul可以被写为:

被视为算子,以计算z为基础的对角,我们看到B的Reed-Muller表示中的每个项都能与其他项中的每一个交换。Ul中B中的每个项都乘以Xn+1,因此每个项都能与其他项交换。Reed-Muller表示中的每个非零项都在Ul中导致读出量子位110上的受控位翻转。为了使用示例说明这一点,考虑涉及位2、7和9的三位项。这对应于算子:

Figure BDA0002591703190000118

这是单位元(identity),除非b2=b7=b9=1,在这种情况下其为-iXn+1。任何作用于量子位n+1的受控的单量子位酉(其中,对前n位控制)可以写为n2个双量子位酉的乘积。因此,按照具有RM项的Reed-Muller公式表达的标记函数可以被写为RM个交换n+1量子位算子的乘积,并且这些中的每一个可以被写为n2个双量子位酉。该量子表示结果类似于经典表示定理,其指出可以在具有大小为2n的内层的深度为3的神经网络上表示任何布尔标记函数。当然,这种巨大矩阵不能在常规计算机上表示。在这种情况下,该方法自然是在指数维度的希尔伯特(Hilbert)空间中执行,但可能需要指数电路深度来表达某些功能。

现在已经证明了二元函数的表示,现在将描述几个示例实施例。

在一些实施例中,标记函数l(z)是二元标记,指示长度为n的输入二元字符串中的位的子集的奇偶校验。子集奇偶校验标记的Reed-Muller公式为:

其中,如果位bj在子集中则aj=1,并且如果位bj不在子集中则aj=0。加是mod2。然后,通过下式给出实现子集奇偶校验的示例酉:

Figure BDA0002591703190000123

其中,Xn+1是作用于读出量子位110上的Pauli算子σx。在此,由于

Figure BDA0002591703190000124

的因子和Xn+1的属性,第二指数中的加自动为mod2。电路由(最多)n个交换双量子位门104的序列组成,其中,读出量子位是每个量子门104作用于其上的两个量子位之一。

可以使用本文描述的训练方法来学习这个酉。从具有随机初始的n参数酉:

Figure BDA0002591703190000125

开始,可以使用关于图1描述的方法学***的标记噪声(例如,最高10%的标记噪声)不会妨碍学习。

在一些实施例中,标记函数l(z)是二元标记,指示长度为n的输入二元字符串中的位的子集的子集多数在输入字符串的z=±1表示中,如果子集中位的多数为+1,则子集多数为+1,否则为-1。子集多数可以写为:

其中,如果位bj在子集中则aj=1,并且如果位bj不在子集中则aj=0。考虑酉:

Figure BDA0002591703190000134

其中,Xn+1是作用于读出量子位110上的Pauli算子σx,Zj是作用于第j量子位上的Pauli算子σz,并且β在下面定义。共轭Yn+1给出:

Figure BDA0002591703190000135

使得

Figure BDA0002591703190000137

的最大幅度为n,因此,如果选择β使其位于0<β<π/n的范围内,例如0.9π/n,则子集多数将是:

Figure BDA0002591703190000138

这意味着,即使个体样本损失不是1或-1,重复测量Yn+1并将期望值向上或向下舍入为±1也会导致完全的分类错误。

可以使用本文所述的训练方法来学习此酉。从具有随机初始

Figure BDA0002591703190000139

的n参数酉:

开始,可以使用关于图1描述的方法学习最佳参数,如果位bj在子集中则θj=β并且如果位bj不在子集中则θj=0。

以上所述的实施例提供了训练和使用二元分类器的示例。通常,可以训练二元分类器来表示任何二元函数。可以将使用的量子门104限制为单量子位酉算子。

在一些实施例中,方法和系统可以用于训练图像分类器。在这些实施例中,训练集S包括以已知分类标记的多个图像。例如,在学习如何对手写数字进行分类的实施例中,训练集包括多个手写数字的示例,每个示例具有与该手写数字旨在表示的数字相对应的标记。这样的数据集的示例是MNIST数据集,其包括55,000个训练样本,所训练样本是手动标记的表示0到9之间的数字的28ⅹ28像素图像。

用于图像分类的输入状态包括正在分类的图像的像素数据。例如,在黑白图像中,处于输入状态的每个量子位可以表示输入图像中的像素是黑色还是白色。在这些示例中,输入状态可以包括表示图像的n个像素的n个量子位,以及在已知状态下准备的一个或多个读出量子位。在一些实施例中,被分类的图像包括一个或多个分量/通道,例如表示图像的颜色数据、亮度和/或色调。在这些实施例中,每个通道中的每个像素可以由多个量子位102中的量子位表示。

对于图像分类,将单量子位量子门104取为酉,其中,Σ是作用于多个量子位102中的任何一个量子位的X、Y和/或Z算子。通常,双量子位门被取为作用在多个量子位102中的任意一对不同量子位之间的XY、YZ、ZX、XX、YY和/或ZZ算子。

在一些实施例中,从该可能的量子门104的集合随机选择预定数量的参数化门104。例如,可以为二元图像分类器选择500至1000之间的量子门。在一些实施例中,这些量子门104的初始参数可以随机选择。

在一些实施例中,图像分类中使用的双量子位量子门104限于ZX或XX类型。在这些实施例的一些中,由双量子位量子门操作的两个量子位中的至少一个是读出量子位110。相同类型的量子门104的层可以在量子计算机中交替。例如,量子门的序列可以包括交替的三层ZX量子门和三层XX量子门。每层可以包括多个量子门。每层可以包括在一个或多个读出量子位110与多个量子位102中的每个其他量子位之间操作的双量子位量子门。例如,在二元分类器中,每层可以包括n个双量子位量子门,每个量子门作用在读出量子位110和表示要被分类的状态的n个量子位中的不同的一个量子位之间。

尽管已经关于图像分类描述了上述实施例,但是应当理解,它们可以等同地应用于接收字符串作为输入的其他分类类型。

与经典人工神经网络相反,本文描述的系统可以接受量子状态(这意味着任意叠加下的n量子位状态)作为输入。系统可以用于训练用于量子状态的分类器,以根据与量子状态的属性有关的标记对量子状态进行分类。

现在将描述一些其他实施例。在下面描述的实施例中,使用量子状态的二元分类器。然而,通过增加读出量子位的数量,方法可以扩展到包括两个以上分类的其他分类类型。

输入状态106包括表示要分类的状态|ψ>的n个量子位和一个或多个读出量子位110。在下面描述的实施例中,使用一个读出量子位,并且在计算基础上将其设置为已知初始状态|1>,但是可以使用其他初始读出状态。

在下面描述的示例中使用的二元分类器对应于具有状态的哈密顿量的期望值是正还是负。这等效于确定是否一些。此类分类器在查找受特定哈密顿量控制的系统的最小能量状态时可以是有用的。例如,通过下式给出分类器l(|ψ>)

Figure BDA0002591703190000151

考虑算子

UH(β)=exp(iβ H Xn+1)

其中,β被取为小的正数。则

对于足够小的β,这近似

2β<ψ|H|ψ>

因此我们预测的标记的预期符号与真实标记一致。从这个意义上说,标记函数已经被小分类错误的量子电路所表达。错误是由于对小β展开<ψ|sin(2βH)|ψ>所采取的近似而产生的。然而,如果我们使β远小于H范数的倒数,则可以使错误很小。

例如,考虑一个图,其中在每个边上我们有ZZ耦合,其系数为随机选择的+1或-1

其中,和限于图中的边且Jij为+1或-1。假设H中有M个项。我们可以首先挑选M个角度ij并考虑实现以下形式的酉的电路:

Figure BDA0002591703190000162

当θij=βJij时,此酉将提供标记函数。可以使用关于图1至图3的上述方法学习这些权重。

量子状态|ψ>存在于2n维Hilbert空间中,所以在某些实施例中,量子状态被限制为可以通过将几个量子位酉应用于一些简单直积态而建立的量子状态。在一些实施例中,训练状态被限制为这种形式。

举例来说,可以训练八个数据量子位和一个读出量子位以对三个正则图(相应地具有12个边)进行分类。在该示例中,存在十二个参数θij用于形成量子门102的序列

Figure BDA0002591703190000163

训练状态可以是取决于八个随机角度的直积态。可以通过按照关联的随机角度关于y轴旋转八个量子位中的每一个来形成状态,每个开始都是关联的X算子的本征状态。测试状态以相同的方式形成。由于状态是从连续体中随机选择的,因此训练集和测试集不同的概率很高。在呈现大约1000个测试状态之后,量子网络正确标记了97%的测试状态。

在一些实施例中,酉的类别可以包括更多参数。例如,两层酉,其中∑是XX和ZX,其中第一算子作用于八个数据量子位之一,第二算子作用于读出量子位110。在使用三个正则图作为输入的示例中,学习过程在看到大约1000个训练示例之后可以实现小于3%的分类错误。

在一些实施例中,可以使用量子系统接受量子状态作为输入的能力来增强对传统输入状态的分类器的训练。例如,利用量子神经网络,输入状态可以包括叠加的传统数据。单个量子状态是计算基础状态的叠加,每个状态表示一批样本中的单个样本,单个量子状态可以视为该批的量子编码。在此,分量上的不同相位产生不同的量子状态。

例如,考虑二元分类。样本空间可以分为标记为+1的样本和标记为-1的样本。考虑状态

Figure BDA0002591703190000171

Figure BDA0002591703190000172

其中,N+和N_是归一化因子,

Figure BDA0002591703190000173

是相位。在一些示例中,所有相位都设置为零。这些状态中的每一个可以看作是包含带有相同标记的所有样本的批。返回给出与任何标记函数相关联的酉的方程。注意,状态|+1>的该算子的期望值是+1,而状态|-1>的期望值为-1。这是因为酉是数据量子位的计算基础上的对角,因此交叉项消失且相位是无关的。现在考虑依赖于参数的酉

Figure BDA0002591703190000174

它是数据量子位的计算基础上的对角。通过使此算子作用于|+1>而获得的状态的Yn+1的期望值是在量子神经网络的预测标记值中的标记+1的所有样本上的平均。对于状态|-1>,通过使此算子作用于|-1>而获得的状态的Yn+1的期望值是在量子神经网络的预测标记值中的标记-1的所有样本上的平均。换句话说,如果在数据量子位的计算基础上是对角,则

Figure BDA0002591703190000176

是整个样本空间的经验风险。如果可以找到使其为0的参数

Figure BDA0002591703190000177

则量子神经网络将正确地预测训练集中任何输入的标记。

在一些实施例中,使用作为在数据量子位的计算基础上的对角的门集。这种集合的示例是广义Pauli算子ZX和ZZX,其中Z算子作用于数据量子位,而X算子作用于读出。使用这些门,经验风险公式是量子神经网络完整数据集的经验风险。经验风险可以用作样本损失函数来训练量子神经网络的参数。从参数的随机选择开始,可以使用最小化算法(诸如梯度下降)来降低经验风险。

在一些实施例中,门集可以超出为数据量子位计算基础上的对角的那些。在这些实施例中,

Figure BDA0002591703190000178

不能再直接理解为量子神经网络作用于整个样本空间的经验风险。然而,将其驱动为低值,至少意味着正确标记了状态|+1>和|-1>。

图5a和图5b示出与经典人工神经网络结合使用的量子神经网络分类器的示例。通常,如本文所述在量子计算系统100上实现的分类方法可以与一个或多个经典人工神经网络116组合。这样可以提高分类方法的准确性。

经典人工神经网络116包括多层“神经元”118,每个神经元具有到每个相邻层中的一个或多个神经元的连接120。在所示的示例中,经典人工神经网络116具有三层,尽管更少或更多数量的层也是可能的。这些示例还示出了完全连接的层,其中每个神经元118连接到相邻层中的每个神经元,尽管部分连接的网络也是可能的。

每个神经元118接受一个或多个输入,并输出通过与每个输入相关联的一个或多个权重表征的输入的函数。可以使用标准机器学习技术来训练这些权重,以从神经网络116产生期望的输出。

在一些实施例中,将要分类的状态108输入到经典人工神经网络116中。经典人工神经网络116的输出可以用作量子计算系统100的输入,以便根据上述方法生成要分类的输入状态106。这样的实施例的示例在图5a中示出。

在一些实施例中,来自量子计算系统100中的读出量子位110的读出状态被输入到经典人工神经网络116中。可以训练经典人工神经网络,以使用多个量子位中的一个或多个读出量子位的输出状态的读出状态来确定输入状态的预测分类。这样的实施例的示例在图5b中示出。

本说明书中描述的量子主题和量子运算的实现可以在适当的量子电路或更一般地在量子计算系统中实现,包括本说明书中公开的结构及其结构等同物,或以它们中的一个或多个的组合来实现。术语“量子计算系统”可以包括但不限于量子计算机、量子信息处理系统、量子密码系统或量子模拟器。

术语量子信息和量子数据是指由量子系统携带、保持或存储的信息或数据,其中最小的非平凡系统是量子位,例如,定义量子信息单位的系统。可以理解,术语“量子位”涵盖在相应的上下文中可以适当地近似为两级系统的所有量子系统。这样的量子系统可以包括例如具有两个或更多级的多级系统。例如,这样的系统可以包括原子、电子、光子、离子或超导量子位。在许多实现方式中,计算基础状态被识别为基态和第一激发态,但是应当理解,用较高级激发态识别计算状态的其他设置也是可能的。可以理解,量子存储器是可以高保真度和高效率长时间存储量子数据的设备,例如光-物质界面,其中光用于传输,物质用于存储和保存量子数据的量子特征,例如叠加或量子相干性。

量子电路元件可以用于执行量子处理操作。也就是说,量子电路元件可以被配置为利用诸如叠加和纠缠的量子力学现象,以不确定方式对数据执行操作。诸如量子位的特定量子电路元件可以被配置为同时以一种以上的状态来表示信息并对其进行操作。可以用本文公开的处理形成的超导量子电路元件的示例包括电路元件,诸如共面波导、量子LC振荡器、量子位(例如,通量量子位或电荷量子位)、超导量子***件(superconductingquantum interference device,SQUID)(例如,RF-SQUID或DCSQUID)、电感器、电容器、传输线、接地层等。

相反,经典电路元件通常以确定方式处理数据。经典电路元件可以被配置为通过对数据执行基本的算术、逻辑和/或输入/输出操作来共同执行计算机程序的指令,其中数据以模拟或数字形式表示。在一些实现方式中,经典电路元件可以用于通过电或电磁连接向量子电路元件发送数据和/或从量子电路元件接收数据。可以用本文公开的处理形成的经典电路元件的示例包括快速单通量量子(rapid single flux quantum,RSFQ)器件、互惠量子逻辑(reciprocal quantum logic,RQL)器件和ERSFQ器件,它们是不使用偏置电阻的RSFQ的高能效版本。其他传统电路元件也可以利用本文公开的处理来形成。

在使用超导量子电路元件和/或超导经典电路元件(诸如本文所述的电路元件)的量子计算系统的操作期间,将超导电路元件在低温恒温器内冷却至允许超导材料表现出超导属性的温度。

尽管本说明书包含许多特定的实现细节,但是这些细节不应被解释为对所要求保护的范围的限制,而应被视为对具体实现方式特定的特征的描述。本说明书在单独实现方式的上下文中描述的特定特征也可以在单个实现方式中组合实现。相反,在单个实现方式上下文中描述的各种特征也可以分别在多个实现方式中或在任何适当的子组合中实现。此外,尽管以上可以将特征描述为在某些组合中起作用并且甚至最初如此要求保护,但是在某些情况下,可以从组合中去除所要求保护的组合中的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变体。

类似地,尽管在附图中以特定顺序描绘了操作,但是这不应被理解为要求以所示的特定顺序或以相继的顺序执行这样的操作,或者执行所有示出的操作,以获得期望的结果。例如,权利要求中记载的动作可以以不同的顺序执行并且仍然实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实现方式中的各个组件的划分不应被理解为在所有实现方式中都要求这种划分。

已经描述了许多实现方式。然而,将理解,可以在不脱离本发明的精神和范围的情况下进行各种修改。其他实现方式在所附权利要求的范围内。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:资产管理设备和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!