本申请涉及主成分分析技术领域,尤其涉及量子计算技术领域中的一种量子主成分分析的方法、装置、电子设备以及计算机可读存储介质。
背景技术:
数据的主成分分析是统计分析、简化数据集的最重要的方法之一,其所具有的冗余数据压缩和数据噪音消除的能力在人工智能的各大领域,例如,图像识别、自然语言处理等方面都有非常广泛的应用。
而随着量子计算技术的迅速发展,使用量子计算来实现主成分分析逐渐成为人们的研究热点。但是,目前单纯使用量子计算的方法进行量子主成分分析,所需要的量子线路较为复杂、量子线路的深度较大,且对所使用的量子计算机的性能要求较高,无法在当前已有的带噪声的中等规模的量子计算机上实现量子主成分分析。
技术实现要素:
本申请为解决技术问题所采用的技术方案是提供一种量子主成分分析的方法,所述方法包括:获取初始数据;将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果;根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值;确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数;将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。本申请通过结合量子计算以及经典计算的方式来实现主成分分析,无需使用复杂的量子算法,且能够简化量子线路的深度以及复杂度,从而实现在当前带噪声的中等规模量子计算机上进行量子主成分分析的目的。
根据本申请一优选实施例,在获取初始数据之后,还包括:确定所述初始数据是否为量子态数据,若否,则将所述初始数据转换为量子态数据。本步骤能够实现经典数据的量子主成分分析。
根据本申请一优选实施例,所述量子线路包含预设层数的量子逻辑门;其中,每层量子逻辑门包含一组作用于单个量子比特的绕z轴旋转门,以及一组作用于两个相邻量子比特配对的xxφ门。
根据本申请一优选实施例,所述根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值包括:根据所述各量子比特的量子测量结果,计算可观测量;根据所述可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算所述预设的目标函数的取值。本步骤能够提升目标函数取值的计算准确性。
根据本申请一优选实施例,所述更新量子线路的线路参数包括:计算所述目标函数的梯度向量;确定所述梯度向量的模长是否满足预设条件;若否,则在获取所述梯度向量与预设步长之间的乘积之后,将当前线路参数与所述乘积之间的差值,作为更新后的线路参数。本步骤使用经典优化算法进行线路参数的更新,从而实现量子计算和经典计算结合的目的。
根据本申请一优选实施例,所述根据各量子比特的量子测量结果获取所述初始数据的主成分分析结果包括:根据预设次数,将所述初始数据的拷贝重复输入对应最终参数的量子线路;将各量子比特的量子测量结果的出现次数与预设次数的比值,作为所述初始数据的主成分分析结果。本步骤能够提升主成分分析结果的获取准确性。
本申请为解决技术问题所采用的的技术方案是提供一种量子主成分分析的装置,包括:获取单元,用于获取初始数据;确定单元,用于将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果;计算单元,用于根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值;判断单元,用于确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数;分析单元,用于将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。
根据本申请一优选实施例,所述获取单元在获取初始数据之后,还执行:确定所述初始数据是否为量子态数据,若否,则将所述初始数据转换为量子态数据。
根据本申请一优选实施例,所述量子线路包含预设层数的量子逻辑门;其中,每层量子逻辑门包含一组作用于单个量子比特的绕z轴旋转门,以及一组作用于两个相邻量子比特配对的xxφ门。
根据本申请一优选实施例,所述计算单元在根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值时,具体执行:根据所述各量子比特的量子测量结果,计算可观测量;根据所述可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算所述预设的目标函数的取值。
根据本申请一优选实施例,所述判断单元在更新量子线路的线路参数时,具体执行:计算所述目标函数的梯度向量;确定所述梯度向量的模长是否满足预设条件;若否,则在获取所述梯度向量与预设步长之间的乘积之后,将当前线路参数与所述乘积之间的差值,作为更新后的线路参数。
根据本申请一优选实施例,所述分析单元在根据各量子比特的量子测量结果获取所述初始数据的主成分分析结果时,具体执行:根据预设次数,将所述初始数据的拷贝重复输入对应最终参数的量子线路;将各量子比特的量子测量结果的出现次数与预设次数的比值,作为所述初始数据的主成分分析结果
上述申请中的一个实施例具有如下优点或有益效果:本申请能够简化量子线路的深度以及复杂度,并能够实现在当前的带噪声的中等规模量子计算机上进行量子主成分分析的目的。因为采用了结合量子计算以及经典计算的方式来实现主成分分析的技术手段,所以克服了现有技术中单独使用量子计算时所需的量子线路较为复杂、量子线路的深度较大的技术问题,从而实现简化量子线路的深度以及复杂度,并在当前带噪声的中等规模量子计算机上进行量子主成分分析的目的的技术效果。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例提供的一种量子主成分分析的方法流程图;
图2是根据本申请第二实施例提供的一种量子线路的示意图;
图3是根据本申请第三实施例提供的一种量子主成分分析架构的示意图;
图4是根据本申请第四实施例提供的一种量子主成分分析的装置结构图;
图5是用来实现本申请实施例的量子主成分分析的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1为本申请第一实施例提供的一种量子主成分分析的方法流程图,如图1中所示,所述方法包括:
在s101中,获取初始数据。
在本步骤中,获取初始数据,所获取的初始数据即为进行主成分分析的数据。由于之后需要将初始数据输入量子线路中进行处理,因此本步骤所获取的初始数据为量子态数据,该量子态数据中包含至少一个量子比特。
另外,本步骤在获取初始数据之后,还可以包含以下内容:确定所获取的初始数据是否为量子态数据,若否,则将所获取的初始数据转换为量子态数据。其中,本步骤可以使用现有的量子态制备技术,例如qram算法,进行初始数据到量子态数据的转化。
举例来说,若所获取的初始数据为经典数据,例如图像的特征向量,则本步骤可以使用qram(quantumrandomaccessmemory,量子随机存取存储器)将各特征向量转换为量子态数据,所得到的量子态数据中的各量子比特分别对应不同图像的特征向量。
在s102中,将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果。
在本步骤中,首先将步骤s101所获取的初始数据的拷贝输入量子线路中,在获取量子线路针对各量子比特的输出结果之后,再对各量子比特的输出结果进行量子测量,从而确定对应各量子比特的量子测量结果。
具体地,本步骤中的量子线路包含预设层数的量子逻辑门。可以理解的是,量子线路所包含的量子逻辑门的层数越多,量子处理的效果越好。因此可以根据实际需要,来具体确定量子线路中量子逻辑门的层数。
优选地,本申请量子线路中的每一层量子逻辑门,包含一组作用于单个量子比特的绕z轴旋转门rz(θ),以及一组作用于两个相邻量子比特配对的xxφ门xxφ(θ)。可以理解的是,量子线路中的每一层量子逻辑门,也可以仅包含一组作用于单个量子比特的绕z轴旋转门,还可以仅包含一组作用于相邻两个量子比特配对的xxφ门,本申请对量子逻辑门的结构不进行限定。
具体地,单个量子比特的绕z轴旋转门rz(θ)的公式为:
其中:θ为旋转角,i表示第i个量子比特。
具体地,两个相邻量子比特配对的xxφ门xxφ(θ)的公式为:
其中:θ为控制角,i表示两个相邻量子比特中靠前的量子比特。
因此,由于每层量子逻辑门都包含一个可调参数θ,所以各层量子逻辑门中所有的θ便构成了量子线路的线路参数
本步骤在将初始数据中的各量子比特输入量子线路,获取量子线路针对各量子比特的输出结果之后,再对各量子比特的输出结果进行量子测量,从而确定对应各量子比特的量子测量结果。
其中,本步骤所进行的量子测量,即为测量量子比特的输出结果,从而确定对应量子比特的量子测量结果是0还是1。
举例来说,若初始数据中包含量子比特1和量子比特2,量子线路针对量子比特1的输出结果为p1,针对量子比特2的输出结果为p2,则对p1进行量子测量得到的对应量子比特1的量子测量结果为0或者1,对p2进行量子测量得到的对应量子比特2的量子测量结果也为0或者1。
在s103中,根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值。
在本步骤中,根据步骤s102所获取的对应各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值。
具体地,本步骤在根据各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值时,可以采用以下方式:根据各量子比特的量子测量结果,计算可观测量;根据计算得到的可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算预设的目标函数的取值。
其中,本步骤在根据量子测量结果计算可观测量时,可以将各量子比特的量子测量结果的平均值作为可观测量,也可以将各量子比特的量子测量结果之和作为可观测量。还可以使用以下公式来计算可观测量:
其中,
可以理解的是,本步骤中预设的目标函数所关心的是线路参数与量子测量结果之间的函数关系,只要预设的目标函数能够体现上述函数关系即可,因此本申请对目标函数的表达方式不进行限定。
例如,本步骤可以使用以下公式计算预设的目标函数的取值:
其中:
在s104中,确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数。
在本步骤中,确定步骤s103计算得到的取值是否满足预设条件,若否,则对量子线路的线路参数进行更新之后,再转至执行步骤s102,即将初始数据的拷贝输入已更新线路的量子线路中来确定量子测量结果的步骤,进而再计算预设的目标函数的取值,以此迭代进行,直至计算得到的取值满足预设条件,则将量子线路的当前线路参数作为最终参数。
也就是说,在上述步骤完成初始数据的量子处理后,本步骤再使用经典计算机的优化算法,对量子线路的线路参数进行优化,从而实现本申请结合量子计算以及经典计算进行主成分分析的目的。
可以理解的是,本步骤中的预设条件,可以为计算得到的取值小于预设阈值,也可以本次计算得到的取值与前次计算得到的取值之间的差值小于预设阈值等等。
其中,本步骤在更新量子线路的线路参数时,实际上进行的线路参数的优化,因此本步骤可以使用现有的优化算法,例如使用梯度下降法、随机梯度法、牛顿法等方法进行线路参数的更新。
为了避免赘述,以下仅对使用梯度下降法更新线路参数的过程进行描述:计算目标函数的梯度向量;确定梯度向量的模长是否满足预设条件;若否,则在获取梯度向量与预设步长之间的乘积后,将当前线路参数与所获取的乘积之间的差值,作为更新后的线路参数。其中,梯度向量的模长即对应所计算的梯度向量的向量长度,而梯度向量的模长所满足的预设条件可以为梯度向量的模长小于预设阈值。
本步骤在使用梯度下降法来更新线路参数时,可以使用以下公式:
其中:
在s105中,将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。
在本步骤中,在步骤s104确定了量子线路的最终参数之后,本步骤将初始数据的拷贝输入到对应最终参数的量子线路之后,根据量子线路针对各量子比特的输出结果确定各量子比特的量子测量结果,进而根据各量子比特的量子测量结果来获取初始数据的主成分分析结果。
其中,本步骤可以根据一次输入所得到的量子测量结果,来直接确定初始数据的主成分分析结果。
而为了避免量子测量的偶然性,进一步提升所获取的主成分分析结果的准确性,本步骤在根据各量子比特的量子测量结果获取初始数据的主成分分析结果时,可以采用以下方式:根据预设次数,将初始数据的拷贝重复输入对应最终参数的量子线路;将各量子比特的量子测量结果的出现次数与预设次数的比值,作为初始数据的主成分分析结果。也就是说,本步骤是根据各量子比特的量子测量结果的出现频率来获取初始数据的主成分分析结果的。
举例来说,若初始数据包含量子比特1和量子比特2,由于针对每个量子比特的量子测量结果仅为0或者1,因此各量子比特的量子测量结果包含4种情况:(0,0)、(0,1)、(1,0)以及(1,1),若预设次数为10次,若出现(0,0)的次数为0次,出现(0,1)的次数为2次,出现(1,0)的次数为6次,出现(1,1)的次数为2次,则对应初始数据的主成分分析结果为:λ(0,1)为0.2,λ(1,0)为0.6,λ(1,1)为0.2。
图2为本申请第二实施例提供的一种量子线路的示意图,其包含有l层量子逻辑门,每层量子逻辑门由一组作用于单个量子比特的绕z轴旋转门rz(θ)以及一组作用于两个相邻量子比特配对的xxφ门xxφ(θ)构成。因此,图2中量子线路的线路参数
其中:n表示量子比特的个数,l表示量子线路中量子逻辑门的层数。
图3为本申请第三实施例提供的一种量子主成分分析架构的示意图,如图3中所示,其包含量子计算模块以及经典计算模块,量子计算模块用于实现获取初始数据中各量子比特的量子测量结果,经典计算模块则用于实现运行经典优化算法来求取目标函数的最小值。其中,图3中的qram(quantumrandomaccessmemory,量子随机存取存储器)即为量子计算机中的ram,用于将经典数据转化为量子态数据。
图4为本申请第四实施例提供的一种量子主成分分析的装置结构图,如图4中所示,所述装置包括:获取单元401、确定单元402、计算单元403、判断单元404以及分析单元405。
获取单元401,用于获取初始数据。
获取单元401获取初始数据,所获取的初始数据即为进行主成分分析的数据。由于之后需要将初始数据输入量子线路中进行处理,因此获取单元401所获取的初始数据为量子态数据,该量子态数据中包含至少一个量子比特。
另外,获取单元401在获取初始数据之后,还可以包含以下内容:确定所获取的初始数据是否为量子态数据,若否,则将所获取的初始数据转换为量子态数据。其中,获取单元401可以使用现有的量子态制备技术,例如qram(quantumrandomaccessmemory,量子随机存取存储器)进行初始数据到量子态数据的转化。
确定单元402,用于将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果。
确定单元402首先将获取单元401所获取的初始数据的拷贝输入量子线路中,在获取量子线路针对各量子比特的输出结果之后,再对各量子比特的输出结果进行量子测量,从而确定对应各量子比特的量子测量结果。
具体地,确定单元402中的量子线路包含预设层数的量子逻辑门。可以理解的是,量子线路所包含的量子逻辑门的层数越多,量子处理的效果越好。因此可以根据实际需要,来具体确定量子线路中量子逻辑门的层数。
优选地,本申请量子线路中的每一层量子逻辑门,包含一组作用于单个量子比特的绕z轴旋转门rz(θ),以及一组作用于两个相邻量子比特配对的xxφ门xxφ(θ)。可以理解的是,量子线路中的每一层量子逻辑门,也可以仅包含一组作用于单个量子比特的绕z轴旋转门,还可以仅包含一组作用于相邻两个量子比特配对的xxφ门,本申请对量子逻辑门的结构不进行限定。
具体地,单个量子比特的绕z轴旋转门rz(θ)的公式为:
其中:θ为旋转角,i表示第i个量子比特。
具体地,两个相邻量子比特配对的xxφ门xxφ(θ)的公式为:
其中:θ为控制角,i表示两个相邻量子比特中靠前的量子比特。
因此,由于每层量子逻辑门都包含一个可调参数θ,所以各层量子逻辑门中所有的θ便构成了量子线路的线路参数
确定单元402在将初始数据中的各量子比特输入量子线路,获取量子线路针对各量子比特的输出结果之后,再对各量子比特的输出结果进行量子测量,从而确定对应各量子比特的量子测量结果。
其中,确定单元402所进行的量子测量,即为测量量子比特的输出结果,从而确定对应量子比特的量子测量结果是0还是1。
计算单元403,用于根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值。
计算单元403根据确定单元402所获取的对应各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值。
具体地,计算单元403在根据各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值时,可以采用以下方式:根据各量子比特的量子测量结果,计算可观测量;根据计算得到的可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算预设的目标函数的取值。
其中,计算单元403在根据量子测量结果计算可观测量时,可以将各量子比特的量子测量结果的平均值作为可观测量,也可以将各量子比特的量子测量结果之和作为可观测量。还可以使用以下公式来计算可观测量:
其中,
可以理解的是,计算单元403中预设的目标函数所关心的是线路参数与量子测量结果之间的函数关系,只要预设的目标函数能够体现上述函数关系即可,因此本申请对目标函数的表达方式不进行限定。
判断单元404,用于确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数。
判断单元404确定计算单元403计算得到的取值是否满足预设条件,若否,则对量子线路的线路参数进行更新之后,再转至执行步骤s102,即将初始数据的拷贝输入已更新线路的量子线路中来确定量子测量结果的步骤,进而再计算预设的目标函数的取值,以此迭代进行,直至计算得到的取值满足预设条件,则将量子线路的当前线路参数作为最终参数。
也就是说,在上述单元完成初始数据的量子处理后,判断单元404再使用经典计算机的优化算法,对量子线路的线路参数进行优化,从而实现本申请结合量子计算以及经典计算进行主成分分析的目的。
可以理解的是,判断单元404中的预设条件,可以为计算得到的取值小于预设阈值,也可以本次计算得到的取值与前次计算得到的取值之间的差值小于预设阈值等等。
其中,判断单元404在更新量子线路的线路参数时,实际上进行的线路参数的优化,因此判断单元404可以使用现有的优化算法,例如使用梯度下降法、随机梯度法、牛顿法等方法进行线路参数的更新。
为了避免赘述,以下仅对判断单元404使用梯度下降法更新线路参数的过程进行描述:计算目标函数的梯度向量;确定梯度向量的模长是否满足预设条件;若否,则在获取梯度向量与预设步长之间的乘积后,将当前线路参数与所获取的乘积之间的差值,作为更新后的线路参数。其中,梯度向量的模长即对应所计算的梯度向量的向量长度,而梯度向量的模长所满足的预设条件可以为梯度向量的模长小于预设阈值。
判断单元404在使用梯度下降法来更新线路参数时可以使用以下公式:
其中:
分析单元405,用于将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。
在判断单元404确定了量子线路的最终参数之后,分析单元405将初始数据的拷贝输入到对应最终参数的量子线路之后,根据量子线路针对各量子比特的输出结果确定各量子比特的量子测量结果,进而根据各量子比特的量子测量结果来获取初始数据的主成分分析结果。
其中,分析单元405可以根据一次输入所得到的量子测量结果,来直接确定初始数据的主成分分析结果。
而为了避免量子测量的偶然性,进一步提升所获取的主成分分析结果的准确性,分析单元405在根据各量子比特的量子测量结果获取初始数据的主成分分析结果时,可以采用以下方式:根据预设次数,将初始数据的拷贝重复输入对应最终参数的量子线路;将各量子比特的量子测量结果的出现次数与预设次数的比值,作为初始数据的主成分分析结果。也就是说,本步骤是根据各量子比特的量子测量结果的出现频率来获取初始数据的主成分分析结果的。
根据本申请的实施例,本申请还提供了一种电子设备和一种计算机可读存储介质。
如图5所示,是根据本申请实施例的量子主成分分析的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该电子设备包括:一个或多个处理器501、存储器502,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器501为例。
存储器502即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的量子主成分分析的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的量子主成分分析的方法。
存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的量子主成分分析的方法对应的程序指令/模块(例如,附图4所示的获取单元401、确定单元402、计算单元403、判断单元404以及分析单元405)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的量子主成分分析的方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据的电子设备的使用所创建的数据等。此外,存储器502可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至量子主成分分析的方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
量子主成分分析的方法的电子设备还可以包括:输入装置503和输出装置504。处理器501、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图3中以通过总线连接为例。
输入装置503可接收输入的数字或字符信息,以及产生与量子主成分分析的方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,通过结合量子计算以及经典计算的方式来实现主成分分析,无需使用复杂的量子算法,能够简化量子线路的深度以及复杂度,从而实现在当前的带噪声的中等规模量子计算机上进行量子主成分分析的目的。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
1.一种量子主成分分析的方法,其特征在于,包括:
获取初始数据;
将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果;
根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值;
确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数;
将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。
2.根据权利要求1所述的方法,其特征在于,在获取初始数据之后,还包括:
确定所述初始数据是否为量子态数据,若否,则将所述初始数据转换为量子态数据。
3.根据权利要求1所述的方法,其特征在于,所述量子线路包含预设层数的量子逻辑门;
其中,每层量子逻辑门包含一组作用于单个量子比特的绕z轴旋转门,以及一组作用于两个相邻量子比特配对的xxφ门。
4.根据权利要求1所述的方法,其特征在于,所述根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值包括:
根据所述各量子比特的量子测量结果,计算可观测量;
根据所述可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算所述预设的目标函数的取值。
5.根据权利要求1所述的方法,其特征在于,所述更新量子线路的线路参数包括:
计算所述目标函数的梯度向量;
确定所述梯度向量的模长是否满足预设条件;
若否,则在获取所述梯度向量与预设步长之间的乘积之后,将当前线路参数与所述乘积之间的差值,作为更新后的线路参数。
6.根据权利要求1所述的方法,其特征在于,所述根据各量子比特的量子测量结果获取所述初始数据的主成分分析结果包括:
根据预设次数,将所述初始数据的拷贝重复输入对应最终参数的量子线路;
将各量子比特的量子测量结果的出现次数与预设次数的比值,作为所述初始数据的主成分分析结果。
7.一种量子主成分分析的装置,其特征在于,包括:
获取单元,用于获取初始数据;
确定单元,用于将所述初始数据的拷贝输入量子线路,并根据所述量子线路针对各量子比特的输出结果,确定各量子比特的量子测量结果;
计算单元,用于根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值;
判断单元,用于确定所述取值是否满足预设条件,若否,则在更新量子线路的线路参数之后,转至执行将初始数据的拷贝输入量子线路以确定量子测量结果的步骤,以此迭代进行,直至所述取值满足预设条件,将量子线路的当前线路参数作为最终参数;
分析单元,用于将所述初始数据的拷贝输入对应所述最终参数的量子线路之后,根据各量子比特的量子测量结果,获取所述初始数据的主成分分析结果。
8.根据权利要求7所述的装置,其特征在于,所述获取单元在获取初始数据之后,还执行:
确定所述初始数据是否为量子态数据,若否,则将所述初始数据转换为量子态数据。
9.根据权利要求7所述的装置,其特征在于,所述量子线路包含预设层数的量子逻辑门;
其中,每层量子逻辑门包含一组作用于单个量子比特的绕z轴旋转门,以及一组作用于两个相邻量子比特配对的xxφ门。
10.根据权利要求7所述的装置,其特征在于,所述计算单元在根据所述各量子比特的量子测量结果,计算预设的目标函数在量子线路的当前线路参数下的取值时,具体执行:
根据所述各量子比特的量子测量结果,计算可观测量;
根据所述可观测量、量子线路的当前线路参数以及初始数据的拷贝,计算所述预设的目标函数的取值。
11.根据权利要求7所述的装置,其特征在于,所述判断单元在更新量子线路的线路参数时,具体执行:
计算所述目标函数的梯度向量;
确定所述梯度向量的模长是否满足预设条件;
若否,则在获取所述梯度向量与预设步长之间的乘积之后,将当前线路参数与所述乘积之间的差值,作为更新后的线路参数。
12.根据权利要求7所述的装置,其特征在于,所述分析单元在根据各量子比特的量子测量结果获取所述初始数据的主成分分析结果时,具体执行:
根据预设次数,将所述初始数据的拷贝重复输入对应最终参数的量子线路;
将各量子比特的量子测量结果的出现次数与预设次数的比值,作为所述初始数据的主成分分析结果。
13.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的方法。
技术总结