发明内容
本发明的目的是提供一种量子GAN的训练方法、装置、介质及电子装置,旨在实现对构造的量子GAN进行训练,从而避开构造经典GAN和对经典GAN进行训练,进而解决了经典GAN训练过程收敛失败的问题。
本发明的一个实施例提供了一种量子生成对抗网络的训练方法,所述量子生成对抗网络包括量子生成器和量子鉴别器,所述方法包括:
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子生成对抗网络的训练。
可选的,所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,包括:
运行所述量子生成器,基于所述量子生成器的输出确定生成数据;
将所述生成数据作为所述量子鉴别器的输入,以及运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述生成数据的第一损失函数。
可选的,所述基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数,包括:
将获取的真实数据编码为量子数据;
将所述量子数据作为所述量子鉴别器的输入,运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述真实数据的第二损失函数。
可选的,所述基于所述第一损失函数更新所述量子生成器的参数,包括:
基于所述第一损失函数确定所述量子生成器的第一代价函数;
基于所述量子生成器的第一代价函数和量子门微分公式调用梯度下降法更新所述量子生成器的参数。
可选的,所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,包括:
基于所述第一损失函数和所述第二损失函数确定所述量子鉴别器的第二代价函数;
基于所述量子鉴别器的第二代价函数和量子门微分公式调用梯度下降法更新所述量子鉴别器的参数。
可选的,所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数之后,所述方法还包括:
运行更新参数后的所述量子生成器,基于所述量子生成器的输出确定更新后的生成数据;
确定更新后的所述生成数据和所述真实数据的相似度;
在所述相似度大于预设阈值时,停止更新所述量子生成器的参数和所述量子鉴别器的参数。
可选的,所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数之前,所述方法还包括:
确定对单量子比特的量子态执行叠加操作的第一量子逻辑门,确定对两量子比特的量子态执行叠加操作的第二量子逻辑门,确定对两量子比特的量子态执行纠缠操作的第三量子逻辑门,以及确定用于求解两个不同量子态的保真度的第四量子逻辑门;
将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第一数据比特上,得到所述量子生成器;将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第二数据比特上,以及将所述第四量子逻辑门作用在所述第二数据比特和预设的辅助比特上,得到所述量子鉴别器。
本发明的又一实施例提供了一种量子生成对抗网络的训练装置,所述量子生成对抗网络包括量子生成器和量子鉴别器,所述装置包括:
确定单元,用于基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
更新单元,用于基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子生成对抗网络的训练。
可选的,在所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数方面,所述确定单元,用于:
运行所述量子生成器,基于所述量子生成器的输出确定生成数据;
将所述生成数据作为所述量子鉴别器的输入,以及运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述生成数据的第一损失函数。
可选的,在所述基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数方面,所述确定单元,具体用于:
将获取的真实数据编码为量子数据;
将所述量子数据作为所述量子鉴别器的输入,运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述真实数据的第二损失函数。
可选的,在所述基于所述第一损失函数更新所述量子生成器的参数方面,所述更新单元,具体用于:
基于所述第一损失函数确定所述量子生成器的第一代价函数;
基于所述量子生成器的第一代价函数和量子门微分公式调用梯度下降法更新所述量子生成器的参数。
可选的,在所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数方面,所述更新单元,具体用于:
基于所述第一损失函数和所述第二损失函数确定所述量子鉴别器的第二代价函数;
基于所述量子鉴别器的第二代价函数和量子门微分公式调用梯度下降法更新所述量子鉴别器的参数。
可选的,在所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数之后,所述装置还包括判断单元,用于:
运行更新参数后的所述量子生成器,基于所述量子生成器的输出确定更新后的生成数据;
确定更新后的所述生成数据和所述真实数据的相似度;
在所述相似度大于预设阈值时,停止更新所述量子生成器的参数和所述量子鉴别器的参数。
可选的,在所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数之前,所述装置还包括构造单元,用于:
确定对单量子比特的量子态执行叠加操作的第一量子逻辑门,确定对两量子比特的量子态执行叠加操作的第二量子逻辑门,确定对两量子比特的量子态执行纠缠操作的第三量子逻辑门,以及确定用于求解两个不同量子态的保真度的第四量子逻辑门;
将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第一数据比特上,得到所述量子生成器;将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第二数据比特上,以及将所述第四量子逻辑门作用在所述第二数据比特和预设的辅助比特上,得到所述量子鉴别器。
本发明的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
本发明的又一实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中所述的方法。
与现有技术相比,本发明提供的一种量子GAN包括量子生成器和量子鉴别器,其利用量子叠加的特性去高效的处理数学问题,减少了GAN计算量,同时避开了构造经典GAN和对经典GAN进行训练,进而解决了经典GAN训练过程收敛失败的问题;
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,实现了对所述量子生成对抗网络的训练,从而证明了构造的量子QAN的有效可训练性,进而也可以解决经典QAN训练过程收敛失败的问题。
具体实施方式
下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明实施例首先提供了一种量子GAN的训练方法,该方法可以应用于电子设备,如计算机终端,具体如普通电脑、量子计算机等。
下面以运行在计算机终端上为例对其进行详细说明。图1为本发明实施例提供的一种量子GAN的训练方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储一种量子GAN的训练方法的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的量子GAN的训练方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
需要说明的是,真正的量子计算机是混合结构的,它包含两大部分:一部分是经典计算机,负责执行经典计算与控制;另一部分是量子设备,负责运行量子程序进而实现量子计算。而量子程序是由量子语言如QRunes语言编写的一串能够在量子计算机上运行的指令序列,实现了对量子逻辑门操作的支持,并最终实现量子计算。具体的说,量子程序就是一系列按照一定时序操作量子逻辑门的指令序列。
在实际应用中,因受限于量子设备硬件的发展,通常需要进行量子计算模拟以验证量子算法、量子应用等等。量子计算模拟即借助普通计算机的资源搭建的虚拟架构(即量子虚拟机)实现特定问题对应的量子程序的模拟运行的过程。通常,需要构建特定问题对应的量子程序。本发明实施例所指量子程序,即是经典语言编写的表征量子比特及其演化的程序,其中与量子计算相关的量子比特、量子逻辑门等等均有相应的经典代码表示。
量子线路作为量子程序的一种体现方式,也称量子逻辑电路,是最常用的通用量子计算模型,表示在抽象概念下对于量子比特进行操作的线路,其组成包括量子比特、线路(时间线)、以及各种量子逻辑门,最后常需要通过量子测量操作将结果读取出来。
不同于传统电路是用金属线所连接以传递电压信号或电流信号,在量子线路中,线路可看成是由时间所连接,亦即量子比特的状态随着时间自然演化,在这过程中按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。
一个量子程序整体上对应有一条总的量子线路,本发明所述量子程序即指该条总的量子线路,其中,该总的量子线路中的量子比特总数与量子程序的量子比特总数相同。可以理解为:一个量子程序可以由量子线路、针对量子线路中量子比特的测量操作、保存测量结果的寄存器及控制流节点(跳转指令)组成,一条量子线路可以包含几十上百个甚至成千上万个量子逻辑门操作。量子程序的执行过程,就是对所有的量子逻辑门按照一定时序执行的过程。需要说明的是,时序即单个量子逻辑门被执行的时间顺序。
需要说明的是,经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门。使用量子逻辑门,能够使量子态发生演化,量子逻辑门是构成量子线路的基础,量子逻辑门包括单比特量子逻辑门,如Hadamard门(H门,阿达马门)、泡利-X门(X门)、泡利-Y门(Y门)、泡利-Z门(Z门)、RX门、RY门、RZ门等等;多比特量子逻辑门,如CNOT门、CR门、iSWAP门、Toffoli门等等。量子逻辑门一般使用酉矩阵表示,而酉矩阵不仅是矩阵形式,也是一种操作和变换。一般量子逻辑门在量子态上的作用是通过酉矩阵左乘以量子态右矢对应的矩阵进行计算。
参见图2,图2为本发明实施例提供的一种量子GAN的训练方法的流程示意图。所述量子GAN包括量子生成器和量子鉴别器,所述方法包括:
步骤201:基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
其中,量子生成器用于产生生成数据,量子生成器与经典生成器的区别在于,经典生成器的输入为含噪声的随机数据,而量子生成器的输入不需要含噪声的随机数据,或者输入可以为|0>或|1>。
其中,量子鉴别器用于判断输入的数据是量子生成器产生的生成数据还是真实数据。
在本发明的一具体实施方式中,在所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数之前,所述方法还包括:
确定对单量子比特的量子态执行叠加操作的第一量子逻辑门,确定对两量子比特的量子态执行叠加操作的第二量子逻辑门,确定对两量子比特的量子态执行纠缠操作的第三量子逻辑门,以及确定用于求解两个不同量子态的保真度的第四量子逻辑门;
将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第一数据比特上,得到所述量子生成器;将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第二数据比特上,以及将所述第四量子逻辑门作用在所述第二数据比特和预设的辅助比特上,得到所述量子鉴别器。
其中,所述第一量子逻辑门可以包括以下至少一个,H门、RX门、RY门、RZ门。
具体的,所述确定对单量子比特的量子态执行叠加操作的第一量子逻辑门,包括:
将RY门确定为对单量子比特的量子态执行叠加操作的第一量子逻辑门。
其中,所述第二量子逻辑门例如可以是CNOT门、SWAP门、CZ门、CR门、ISWAP门等。
具体的,所述确定对两量子比特的量子态执行叠加操作的第二量子逻辑门,包括:
获取四个RX门、两个CNOT门和一个RZ门;
将其中两个所述RX门的输出项作为其中一个所述CNOT门的输入项,将其中一个所述CNOT门的其中一个输出项作为所述RZ门的输入项,将其中一个所述CNOT门的另外一个输出项和所述RZ门的输出项作为另外一个所述CNOT门的输入项,将另外一个所述CNOT门的两个输出项分别作为另外两个RX门的输入项,得到对两量子比特的量子态执行叠加操作的第二量子逻辑门。
如图3所示,图3为本发明实施例提供的一种第二量子逻辑门的结构示意图。
其中,所述第三量子逻辑门可以包括以下至少一个,CNOT门、受控RX门、受控RY门、受控RZ门。
具体的,所述确定对两量子比特的量子态执行纠缠操作的第三量子逻辑门,包括:
将受控RY门确定为对两量子比特的量子态执行纠缠操作的第三量子逻辑门。
具体的,所述确定用于求解两个不同量子态的保真度的第四量子逻辑门,包括:
将SWAP测试逻辑门确定为用于求解两个不同量子态的保真度的第四量子逻辑门。
如图4所示,图4为本发明实施例提供的一种SWAP测试逻辑门的结构示意图。SWAP测试线路包括作用于q
0、q
1、q
2的受控SWAP门和H门,受控SWAP门和H门即为SWAP测试逻辑门,用于将输入态
演化至
如果
那么测量q
0为|0>的概率为
因此,可以通过多次测量确定
<φ>之间的差异有多大,即确定两个不同量子态的保真度。
在本发明的一具体实施方式中,所述将所述第一量子逻辑门作用在第一数据比特上,包括:
将所述第一量子逻辑门分别作用在每个第一数据比特上。
在本发明的一具体实施方式中,所述将所述第二量子逻辑门作用在第二数据比特上,包括:
将所述第二量子逻辑门分别作用在每两个相邻的所述第一数据比特上。
进一步地,除将所述第二量子逻辑门分别作用在每两个相邻的第一数据比特上之外,还可以将第二量子逻辑门作用在第一个和最后一个第一数据比特上。
在本发明的一具体实施方式中,所述将所述第三量子逻辑门作用在第一数据比特上,包括:
将所述第三量子逻辑门分别作用在每两个相邻的所述第一数据比特上。
进一步地,除将所述第三量子逻辑门分别作用在每两个相邻的第一数据比特上之外,还可以将第三量子逻辑门作用在第一个和最后一个第一数据比特上,可以是第一个第一数据比特为控制比特,最后一个第一数据比特为受控比特;也可以是最后一个第一数据比特为控制比特,第一个第一数据比特为受控比特。
如图5所示,图5为本发明实施例提供的一种量子生成器的结构示意图。图中包括4个第一数据比特:q0、q1、q2、q3,第一量子逻辑门RY门分别作用在q0、q1、q2、q3上,第二量子逻辑门分别作用在q0和q1、q1和q2、q2和q3,第二量子逻辑门为图3所示的结构,第三量子逻辑门受控RY门分别作用在q0和q1、q1和q2、q2和q3,控制比特依次为q0、q1、q2。
其中,第二数据比特包括第一量子比特和第二量子比特。将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第二数据比特上,即将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第一量子比特上,具体作用方式,参见上述量子生成器的具体实现方式。
在本发明的一具体实施方式中,所述将所述第四量子逻辑门作用在所述第二数据比特和预设的辅助比特上,包括:
将所述H门作用在预设的辅助比特上,将所述受控SWAP门作用在所述辅助比特、所述第一量子比特以及所述第一量子比特对应的所述第二量子比特上,将所述H门再次作用在所述辅助比特上,所述受控SWAP门的控制比特为所述辅助比特。
进一步地,如果第一量子比特和第二量子比特的数量不止一个,则需要将受控SWAP门作用于辅助比特、每个第一量子比特以及其对应的第二量子比特。
如图6所示,图6为本发明实施例提供的一种量子鉴别器的结构示意图。图中包括9个数据比特:q0、q1、q2、q3、q4、q5、q6、q7、q8。q0为辅助比特,q1、q2、q3、q4为第一量子比特,q5、q6、q7、q8为第二量子比特。第一量子逻辑门RY门分别作用在q0、q1、q2、q3上,第二量子逻辑门分别作用在q0和q1、q1和q2、q2和q3,第二量子逻辑门为图3所示的结构,第三量子逻辑门受控RY门分别作用在q0和q1、q1和q2、q2和q3,控制比特依次为q0、q1、q2。第四量子逻辑门为如图4所示的结构,第一个H门作用于q0,第一个受控SWAP门作用于q0、q1、q5,第二个受控SWAP门作用于q0、q2、q6,第三个受控SWAP门作用于q0、q3、q7,第二个受控SWAP门作用于q0、q4、q8,第一个H门作用于q0。
在本发明的一具体实施方式中,所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,包括:
运行所述量子生成器,基于所述量子生成器的输出确定生成数据;
将所述生成数据作为所述量子鉴别器的输入,以及运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述生成数据的第一损失函数。
具体的,基于所述量子生成器的输出确定生成数据,可以是将量子生成器运行依次,然后测量所有的量子比特,将所有量子比特的测量值表示的数据作为生成数据;也可以是将量子生成器运行多次,然后将每个量子比特多次测量后的平均值表示的数据作为生成数据。
如图7所示,图7是本发明实施例提供的一种用于确定第一损失函数的量子线路的结构示意图。将图5的量子生成器和图6的量子鉴别器进行级联,令图5中的q0、q1、q2、q3分别为图6中的q5、q6、q7、q8,即得到用于确定第一损失函数的量子线路的结构示意图。若量子鉴别器的输入为δ,量子生成器的输入为ζ,则测量q0为|0>的概率为1/2(1+|<ζ|δ>|2),第一损失函数值为|<ζ|δ>|2,对于多个量子生成器和量子鉴别器的输入,则可以确定第一损失函数D(|<ζ|δ>|2)。
在本发明的一具体实施方式中,所述基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数,包括:
将获取的真实数据编码为量子数据;
将所述量子数据作为所述量子鉴别器的输入,运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述真实数据的第二损失函数。
如图8所示,图8是本发明实施例提供的一种用于确定第二损失函数的量子线路的结构示意图。用RY门将真实数据编码到图6中的q5、q6、q7、q8上,即得到用于确定第二损失函数的量子线路的结构示意图。若量子鉴别器的输入为δ,真实数据对应的量子数据为γ,则测量q0为|0>的概率为1/2(1+|<γ|δ>|2),第二损失函数值为|<γ|δ>|2,对于多个真实数据和量子鉴别器的输入,则可以确定第二损失函数D(|<γ|δ>|2)。
步骤202:基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子GAN的训练。
在本发明的一具体实施方式中,所述基于所述第一损失函数更新所述量子生成器的参数,包括:
基于所述第一损失函数确定所述量子生成器的第一代价函数;
基于所述量子生成器的第一代价函数和量子门微分公式调用梯度下降法更新所述量子生成器的参数。
具体的,基于第一公式和所述第一损失函数确定所述量子生成器的第一代价函数,第一公式为Gloss=E[log(D(|<ζ|δ>|2))],其中,第一代价为Gloss,E表示求期望值,即第一代价函数为第一损失函数的对数的期望值。
具体的,量子门微分公式如下:
在本实施例中,f为量子生成器的输出,θ为量子生成器中的参数,即第一、第二、第三量子逻辑门的旋转参数。
在本发明的一具体实施方式中,所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,包括:
基于所述第一损失函数和所述第二损失函数确定所述量子鉴别器的第二代价函数;
基于所述量子鉴别器的第二代价函数和量子门微分公式调用梯度下降法更新所述量子鉴别器的参数。
具体的,基于第二公式、所述第一损失函数和所述第二损失函数确定所述量子鉴别器的第二代价函数,第二公式为Dloss=E[log(D(|<ζ|δ>|2))]+E[log(1-D(|<γ|δ>|2))],Dloss为第二代价,同第一代价函数,这里E也表示求期望值。
需要说明的是,量子门微分公式同上实施例,在本实施例中,f为量子鉴别器的输出,θ为量子鉴别器中的参数,即第一、第二、第三量子逻辑门的旋转参数。
在本发明的一具体实施方式中,所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数之后,所述方法还包括:
运行更新参数后的所述量子生成器,基于所述量子生成器的输出确定更新后的生成数据;
确定更新后的所述生成数据和所述真实数据的相似度;
在所述相似度大于预设阈值时,停止更新所述量子生成器的参数和所述量子鉴别器的参数。
其中,相似度例如可以为海林格距离(Hellinger Distance)。
具体的,可以基于海林格距离确定更新后的所述生成数据和所述真实数据的相似度,对于真实数据的分布P和生成数据的分布Q,两者的海林格距离的计算公式为:
与现有技术相比,本发明提供的一种量子GAN包括量子生成器和量子鉴别器,其利用量子叠加的特性去高效的处理数学问题,减少了GAN计算量,同时避开了构造经典GAN和对经典GAN进行训练,进而解决了经典GAN训练过程收敛失败的问题;
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,实现了对所述量子生成对抗网络的训练,从而证明了构造的量子QAN的有效可训练性,进而也可以解决经典QAN训练过程收敛失败的问题。
参见图9,图9为本发明实施例提供的一种量子GAN的训练装置的结构示意图。所述量子生成对抗网络包括量子生成器和量子鉴别器,所述装置包括:
确定单元901,用于基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
更新单元902,用于基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子生成对抗网络的训练。
可选的,在所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数方面,所述确定单元901,用于:
运行所述量子生成器,基于所述量子生成器的输出确定生成数据;
将所述生成数据作为所述量子鉴别器的输入,以及运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述生成数据的第一损失函数。
可选的,在所述基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数方面,所述确定单元901,具体用于:
将获取的真实数据编码为量子数据;
将所述量子数据作为所述量子鉴别器的输入,运行所述量子鉴别器;
基于所述量子鉴别器的输出确定所述量子鉴别器相对于所述真实数据的第二损失函数。
可选的,在所述基于所述第一损失函数更新所述量子生成器的参数方面,所述更新单元902,具体用于:
基于所述第一损失函数确定所述量子生成器的第一代价函数;
基于所述量子生成器的第一代价函数和量子门微分公式调用梯度下降法更新所述量子生成器的参数。
可选的,在所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数方面,所述更新单元902,具体用于:
基于所述第一损失函数和所述第二损失函数确定所述量子鉴别器的第二代价函数;
基于所述量子鉴别器的第二代价函数和量子门微分公式调用梯度下降法更新所述量子鉴别器的参数。
可选的,在所述基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数之后,所述装置还包括判断单元903,用于:
运行更新参数后的所述量子生成器,基于所述量子生成器的输出确定更新后的生成数据;
确定更新后的所述生成数据和所述真实数据的相似度;
在所述相似度大于预设阈值时,停止更新所述量子生成器的参数和所述量子鉴别器的参数。
可选的,在所述基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数之前,所述装置还包括构造单元904,用于:
确定对单量子比特的量子态执行叠加操作的第一量子逻辑门,确定对两量子比特的量子态执行叠加操作的第二量子逻辑门,确定对两量子比特的量子态执行纠缠操作的第三量子逻辑门,以及确定用于求解两个不同量子态的保真度的第四量子逻辑门;
将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第一数据比特上,得到所述量子生成器;将所述第一量子逻辑门、所述第二量子逻辑门和所述第三量子逻辑门作用在第二数据比特上,以及将所述第四量子逻辑门作用在所述第二数据比特和预设的辅助比特上,得到所述量子鉴别器。
与现有技术相比,本发明提供的一种量子GAN包括量子生成器和量子鉴别器,其利用量子叠加的特性去高效的处理数学问题,减少了GAN计算量,同时避开了构造经典GAN和对经典GAN进行训练,进而解决了经典GAN训练过程收敛失败的问题;
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,实现了对所述量子生成对抗网络的训练,从而证明了构造的量子QAN的有效可训练性,进而也可以解决经典QAN训练过程收敛失败的问题。
本发明实施例还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述图2中任一项方法实施例中的步骤。
具体的,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子生成对抗网络的训练。
具体的,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的再一实施例还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项中方法实施例中的步骤。
具体的,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
具体的,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
基于所述量子生成器和所述量子鉴别器确定所述量子鉴别器相对于生成数据的第一损失函数,以及基于获取的真实数据和所述量子鉴别器确定所述量子鉴别器相对于所述真实数据的第二损失函数;
基于所述第一损失函数更新所述量子生成器的参数,以及基于所述第一损失函数和所述第二损失函数更新所述量子鉴别器的参数,以实现对所述量子生成对抗网络的训练。
以上依据图式所示的实施例详细说明了本发明的构造、特征及作用效果,以上所述仅为本发明的较佳实施例,但本发明不以图面所示限定实施范围,凡是依照本发明的构想所作的改变,或修改为等同变化的等效实施例,仍未超出说明书与图示所涵盖的精神时,均应在本发明的保护范围内。