CN111241356A - 基于模拟量子算法的数据搜索方法、装置及设备 - Google Patents

基于模拟量子算法的数据搜索方法、装置及设备 Download PDF

Info

Publication number
CN111241356A
CN111241356A CN202010337586.6A CN202010337586A CN111241356A CN 111241356 A CN111241356 A CN 111241356A CN 202010337586 A CN202010337586 A CN 202010337586A CN 111241356 A CN111241356 A CN 111241356A
Authority
CN
China
Prior art keywords
value
values
processing function
sets
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010337586.6A
Other languages
English (en)
Other versions
CN111241356B (zh
Inventor
陈宇
谢昌谕
陈玉琴
张胜誉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010337586.6A priority Critical patent/CN111241356B/zh
Publication of CN111241356A publication Critical patent/CN111241356A/zh
Application granted granted Critical
Publication of CN111241356B publication Critical patent/CN111241356B/zh
Priority to KR1020217031511A priority patent/KR20210134724A/ko
Priority to EP21773270.0A priority patent/EP3933616A4/en
Priority to JP2021549943A priority patent/JP7176127B2/ja
Priority to PCT/CN2021/081810 priority patent/WO2021218480A1/zh
Priority to US17/523,840 priority patent/US11782937B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Algebra (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Fuzzy Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Operations Research (AREA)
  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例公开了一种基于模拟量子算法的数据搜索方法、装置及设备,属于计算机技术领域。该方法包括:根据待搜索的多个备选数据,创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取第一处理函数的输出值,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,采用第二搜索路径搜索目标数据。通过遍历至少两组数值集合,获取遍历的数值集合对应的输出值,遍历的次数较少,可以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率,采用第二搜索路径可以快速搜索到目标数据。

Description

基于模拟量子算法的数据搜索方法、装置及设备
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种基于模拟量子算法的数据搜索方法、装置及设备。
背景技术
随着量子计算技术的发展,量子计算的应用也越来越多,与经典计算相比,量子计算在很大程度上提高了数据处理效率。量子计算中的绝热量子计算采用搜索路径对数据进行处理,而准确的搜索路径可以提高绝热量子计算的效率。
相关技术中,第一搜索路径中包括取值未确定的多个系数,通过强化学习模型分别确定多个系数的取值,得到第二搜索路径。但是,强化学习模型是通过对每个系数的多个可选数值进行尝试,最终确定一个可选数值,在获取第二搜索路径的过程中,如果取值未确定的每个系数对应有大量的可选数值,则强化学习模型需要尝试多次,导致确定取值的效率较低,从而导致第二搜索路径的获取效率较低。
发明内容
本申请实施例提供了一种基于模拟量子算法的数据搜索方法、装置及设备,提高了第二搜索路径的获取效率。所述技术方案如下:
一方面,提供了一种基于模拟量子算法的数据搜索方法,所述方法包括:
根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
另一方面,提供了一种数据搜索装置,所述装置包括:
状态数据创建模块,用于根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
第一路径创建模块,用于根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
第一函数获取模块,用于获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
集合获取模块,用于遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
输出值获取模块,用于基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
第二路径获取模块,用于在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
数据搜索模块,用于采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
在一种可能实现方式中,概率获取单元,还用于:
在所述至少两组数值集合满足所述高斯分布的情况下,获取所述至少两组数值集合对应的平均值及方差;
根据所述平均值及所述方差,获取所述至少两组数值集合对应的条件概率。
在另一种可能实现方式中,所述第一路径创建模块,还用于:
根据所述第一状态数据、所述第二状态数据和目标搜索时长,创建所述第一搜索路径,所述第一搜索路径还包括所述目标搜索时长,所述目标搜索时长表示将所述第一状态转换为所述第二状态所需的时长。
在另一种可能实现方式中,所述多个备选数据的类型不同,所述搜索条件包括目标类型,所述数据搜索模块,还用于:
采用所述第二搜索路径,在所述多个备选数据中搜索满足所述目标类型的目标数据。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现如所述基于模拟量子算法的数据搜索方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以实现如所述基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例提供的方法、装置及设备,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
并且,在获取第二搜索路径的过程中,当第一处理函数的输出值不收敛时,会更新数值集合,以根据更新的数值集合获取新的第一处理函数的输出值,在更新数值集合的过程中,采用了高斯过程回归算法,该高斯过程回归算法针对连续的、缺乏特定的对称结构和几何结构、难以获取梯度信息的函数,仅需要较短的时间,即可完成对这种复杂的函数的处理,处理效率高。且高斯过程回归算法可以对含有噪声的函数进行处理,可以对多种类型的函数进行处理,应用范围大,则在获取第二搜索路径时,即使该第二搜索路径对应的处理函数是较为复杂的函数,也可以采用高斯过程回归算法快速处理。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图;
图2是本申请实施例提供的一种采用高斯过程回归算法拟合得到估计函数的示意图;
图3是本申请实施例提供的一种数值集合获取方法的流程图;
图4是本申请实施例提供的一种数值集合获取方法的示意图;
图5是本申请实施例提供的一种基于线性路径、非线性路径及第二搜索路径的搜索效果的示意图;
图6是本申请实施例提供的另一种基于线性路径、非线性路径及第二搜索路径的搜索效果的示意图;
图7是本申请实施例提供的一种基于第二搜索路径的搜索效果的示意图;
图8是本申请实施例提供的另一种基于模拟量子算法的搜索路径获取方法的流程图;
图9是本申请实施例提供的一种基于模拟量子算法的数据搜索方法的流程图;
图10是本申请实施例提供的一种数据搜索装置的结构示意图;
图11是本申请实施例提供的另一种数据搜索装置的结构示意图;
图12是本申请实施例提供的一种终端的结构示意图;
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请所使用的术语“第一”、“第二”、“第三”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一处理函数称为第二处理函数,将第二处理函数称为第一处理函数。
本申请所使用的术语“每个”、“多个”等,多个包括两个或两个以上,每个是指对应的多个中的每一个。举例来说,多个系数包括20个系数,而每个系数是指这20个系数中的每一个系数。
为了便于理解本申请实施例提供的基于模拟量子算法的数据搜索方法,下面对涉及到的关键词进行解释。
量子计算:一种基于量子逻辑进行计算的计算方式,量子计算中存储数据的基本单位是量子比特(Qubit)。
量子比特:量子比特是量子计算的基本单位。经典计算中采用0和1作为二进制的基本单位,则采用经典计算对数据进行计算的过程中,数据为0和1中的任一种状态;而量子计算中数据可以同时为0或1,也就是说,量子计算中0和1可以同时存在,即存在0和1的线性叠加态。那么,量子计算与经典计算相比,由于量子计算中存在线性叠加态,可以提高计算速度和可能性。其中,线性叠加态可如公式(1)所示:
Figure 486294DEST_PATH_IMAGE001
(1)
其中,
Figure 482063DEST_PATH_IMAGE002
表示线性叠加态,
Figure 855275DEST_PATH_IMAGE003
表示数据的状态为0时的概率幅,
Figure 588833DEST_PATH_IMAGE004
代表数据的状态为1时的概率幅,
Figure 544151DEST_PATH_IMAGE003
Figure 445242DEST_PATH_IMAGE004
均为复数。因此,采用
Figure 56483DEST_PATH_IMAGE003
的模平方
Figure 114438DEST_PATH_IMAGE005
表示数据处于0的概率,采用
Figure 127524DEST_PATH_IMAGE004
的模平方
Figure 668358DEST_PATH_IMAGE006
表示数据处于1的概率。
本征态:对于一个厄米共轭的矩阵H,满足方程
Figure 563633DEST_PATH_IMAGE007
的解称为H的本征态
Figure 97382DEST_PATH_IMAGE008
Figure 964975DEST_PATH_IMAGE008
具有本征能量E。
基态:能量最低的本征态。
可分态和纠缠态:对于一个纯态:
Figure 998747DEST_PATH_IMAGE009
,如果
Figure 833848DEST_PATH_IMAGE002
可以被分解成
Figure 453179DEST_PATH_IMAGE010
,则将该纯态称为可分态,如果
Figure 503175DEST_PATH_IMAGE002
不可以被分解成
Figure 713708DEST_PATH_IMAGE010
,则将该纯态称为纠缠态。
绝热量子计算:一种量子计算方式。数学定义为:对于两个作用在n个粒子且每个粒子拥有p个状态和k局域的初态哈密顿量H0和末态哈密顿量H1,其中,初态哈密顿量H0的基态是唯一的可分态,初态哈密顿量的输出态在
Figure 521258DEST_PATH_IMAGE011
范数作用下接近末态哈密顿量H1的基态的过程,称之为绝热量子计算。其中,哈密顿量用于描述量子系统中的总能量,初态哈密顿量即为量子系统中初始时的总能量,末态哈密顿量即为量子系统中最终的总能量。其中,
Figure 741018DEST_PATH_IMAGE011
范数是指求取各元素的平方和之后求取平方根。
具体来讲,定义搜索路径对应的函数
Figure 786465DEST_PATH_IMAGE012
,t的取值范围为
Figure 151587DEST_PATH_IMAGE013
,T即为量子系统的演化时间,量子系统依据含时哈密顿量
Figure 712013DEST_PATH_IMAGE014
, 从初态哈密顿量H0的基态开始演化,最后的初态哈密顿量H0的输出态在
Figure 932867DEST_PATH_IMAGE011
范数作用下接近末态哈密顿量H1的基态,这个过程就是绝热量子计算。其中,含时哈密顿量为:
Figure 629558DEST_PATH_IMAGE015
,s为定义的函数
Figure 368844DEST_PATH_IMAGE016
保真度:用于表示绝热量子计算过程的输出态,与末态哈密顿量H1的基态之间的相近程度,输出态越接近末态哈密顿量H1的基态,保真度越大,保真度的取值范围为0到1。
最优的搜索路径:对于固定的演化时间T,获取函数
Figure 416566DEST_PATH_IMAGE016
,以使将演化时间T代入公式(2)中,可以输出一个最小值,公式(3)为薛定谔方程的一种表达形式,薛定谔方程为量子计算中的一种基本方程,用于描述量子系统中的量子动力学。
本申请实施例中,将获取最优的搜索路径的问题转换为获取公式(2)和公式(3)的解的问题,则最优的搜索路径为下述公式(2)和公式(3)的解:
Figure 633920DEST_PATH_IMAGE017
(2)
Figure 716277DEST_PATH_IMAGE018
(3)
其中,
Figure 908355DEST_PATH_IMAGE019
为一个列向量,
Figure 443373DEST_PATH_IMAGE020
为与列向量对应的一个厄米共轭的行向量,这两个向量用于表示量子系统中量子纯态;
Figure 261156DEST_PATH_IMAGE021
表示对
Figure 870123DEST_PATH_IMAGE022
求一阶偏导数;
Figure 764261DEST_PATH_IMAGE023
Figure 973525DEST_PATH_IMAGE024
为两个已知参数;
Figure 363310DEST_PATH_IMAGE025
为虚数单位;当t=0时,
Figure 607210DEST_PATH_IMAGE026
Figure 141090DEST_PATH_IMAGE027
表示初始哈密顿量H0的基态。
图1是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图。本申请实施例的执行主体为计算机设备,计算机设备可以为终端,该终端可以为便携式、袖珍式、手持式等多种类型的终端,如手机、计算机、平板电脑等终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。或者,计算机设备也可以为服务器,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。参见图1,该方法包括。
101、计算机设备获取第一搜索路径,该第一搜索路径包括取值未确定的多个系数。
本申请实施例中,第一搜索路径的表达形式已确定,多个系数之间的关系已确定,自变量已确定,且自变量与多个系数之间的关系已确定,但该多个系数的取值还未确定。其中,该多个系数的取值可以为任意数值,为该多个系数设置不同的数值,可以得到第一搜索路径对应的不同搜索路径。
在一种可能实现方式中,定义第一搜索路径为
Figure 650700DEST_PATH_IMAGE012
,对该第一搜索路径进行傅里叶变换,得到如下述公式(4)所示的搜索路径:
Figure 561018DEST_PATH_IMAGE028
(4)
其中,T为演化时间,t为自变量,
Figure 659424DEST_PATH_IMAGE029
为取值未确定的系数,j的取值范围为1到正无穷,且j为正整数。
上述公式(4)是第一搜索路径在频域上的表达形式,由于在绝热量子计算过程中,高频振荡容易对量子的状态产生干扰,将量子态变为能量更高的激发态,而绝热量子计算需要将量子态变为能量较低的基态,因此需要以频率数为M进行高频截断,也就是说,上述公式(4)中,j的取值范围不再是1到正无穷,而是变为1到M。其中,M可以为任一低频频率,如小于预设低频频率的任一数值,且M为正整数。
因此,下述公式(5)为最终获取的第一搜索路径,该第一搜索路径中需要确定M个系数的数值:
Figure 629786DEST_PATH_IMAGE030
(5)
需要说明的是,本申请实施例仅是以上述公式(5)所示的第一搜索路径为例进行说明,在另一实施例中,第一搜索路径可以为其他的表达形式,本申请实施例对第一搜索路径的表达形式不做限制。
102、计算机设备获取第一搜索路径对应的第一处理函数。
本申请实施例中,第一处理函数与第一搜索路径之间存在关联,该第一处理函数可以是由第一搜索路径与其他的函数经过运算得到的,也即是,第一处理函数的输出值由第一搜索路径确定。该第一处理函数的表达形式已确定,且第一处理函数中除第一搜索路径包括的、取值未确定的该多个系数之外,其他系数的取值均已确定,多个系数之间的关系已确定、自变量已确定,且自变量与多个系数之间的关系已确定。
由于第一处理函数也包括上述取值未确定的多个系数,则如果将数据输入至第一处理函数,需要先确定多个系数的取值,才能够确定第一处理函数的输出值。
并且,由于多个系数的取值不同,第一处理函数的输出值也不同,则为多个系数取不同的数值,当该第一处理函数的输出值收敛于预设数值时,则表示多个系数的取值满足目标。因此该第一处理函数即为该第一搜索路径的目标函数。
在一种可能实现方式中,第一搜索路径与第一处理函数满足以下关系:
Figure 813642DEST_PATH_IMAGE017
(2)
Figure 793231DEST_PATH_IMAGE018
(3)
其中,公式(2)中的
Figure 231296DEST_PATH_IMAGE031
即为第一处理函数,公式(3)中的
Figure 621827DEST_PATH_IMAGE016
即为第一搜索路径。每次确定第一搜索路径
Figure 840449DEST_PATH_IMAGE016
中多个系数的取值,以使将第一搜索路径
Figure 352290DEST_PATH_IMAGE016
代入第一处理函数中后,第一处理函数中变量t的取值为T时,第一处理函数的输出值为最小值,且多次将确定的第一搜索路径
Figure 707179DEST_PATH_IMAGE016
代入第一处理函数,第一处理函数的输出值均收敛,则可以确定最后一次确定的第一搜索路径
Figure 268611DEST_PATH_IMAGE016
中多个系数的取值满足目标。
需要说明的是,本申请实施例仅是根据公式(2)及公式(3)确定的第一处理函数为例进行说明,在另一实施例中,该第一处理函数可以为其他的表达形式,本申请实施例对第一处理函数的具体表达形式不做限制。
103、计算机设备基于模拟量子算法,获取在多个系数的取值为数值集合中的多个数值时,第一处理函数的输出值。
本申请实施例中,计算机设备遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,则根据一组数值集合会得到第一处理函数的一个输出值,则该输出值即为该数值集合对应的输出值。计算机设备获取第一处理函数的输出值的过程中,需要遍历多组数值集合,直至第一处理函数的输出值收敛,在第一处理函数的输出值不收敛的情况下,执行步骤104,在第一处理函数的输出值收敛的情况下,执行步骤106。
其中,第一处理函数的输出值不收敛是指已遍历完成的至少两组数值集合对应的第一处理函数的输出值均不收敛于某一数值;第一处理函数的输出值收敛是指已遍历完成的至少两组数值集合中,最新遍历完成的至少两组数值集合对应的第一处理函数的输出值收敛于同一数值。其中,第一处理函数所收敛的数值根据第一处理函数确定。
在一种可能实现方式中,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式,计算机设备基于模拟量子算法,对数值集合中的多个数值进行处理,分别得到多个子函数输出的第一数值,按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
第一处理函数可能为一个很复杂的函数,直接将数值集合中的多个数值作为该多个系数的取值,代入第一处理函数中,无法得到输出值,但是模拟量子算法可以对多个子函数按照运算方式进行运算,得到第一处理函数,该多个子函数是较为简单的函数,将数值集合中的多个数值作为该多个系数的取值,代入子函数中,可以得到每个子函数输出的第一数值,从而对多个第一数值按照运算方式进行运算处理,即可得到第一处理函数的输出值。
104、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
本申请实施例中,计算机设备遍历第一搜索路径的至少两组数值集合,基于模拟量子算法获取了至少两组数值集合对应的输出值,则计算机设备采用高斯过程回归算法,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数,即根据第二处理函数能够确定至少两组数值集合对应的第一处理函数的输出值的分布情况。其中,高斯过程回归算法是一种利用高斯过程对数据进行回归分析的机器学习算法,可以采用原始目标函数对应的、已知的多个数据点,拟合得到该原始目标函数对应的拟合函数。
在一种可能实现方式中,本申请实施例中的第一处理函数即为原始目标函数,已获取的至少两个数值集合及对应的输出值为第一处理函数对应的、已知的至少两个数据点,则采用下述步骤对已获取的数据点进行拟合得到第二处理函数。
(1)计算机设备获取至少两组数值集合及对应的第一处理函数的输出值。
可选地,对于第一处理函数
Figure 708950DEST_PATH_IMAGE032
来说,该第一处理函数为未确定的函数,且该第一处理函数为一个高维函数,即该第一处理函数的可行域的维数为高维,例如,
Figure 968024DEST_PATH_IMAGE033
,表示可行域为20维。
本申请实施例以已获取了k个数值集合为例进行说明,k个数值集合为:
Figure 426688DEST_PATH_IMAGE034
,且该k个数值集合均满足第一处理函数对系数的取值范围的要求,则将该k个数值集合中的多个数值分别代入第一处理函数中,得到该k个数值集合对应第一处理函数的输出值:
Figure 909753DEST_PATH_IMAGE035
。也就是说,基于模拟量子算法,对k个数值集合进行处理,得到第一处理函数的输出值。其中,k为正整数,x表示一个数值集合。
在一种可能实现方式中,在该k个数值集合对应的第一处理函数的输出值满足高斯分布的情况下,则该k个数值集合对应的第一处理函数的输出值的高斯分布如下述公式(6)所示:
Figure 102968DEST_PATH_IMAGE036
(6)
其中,
Figure 431312DEST_PATH_IMAGE037
表示第一个数值集合到第k个数值集合,
Figure 275640DEST_PATH_IMAGE038
表示k个数值集合对应的第一处理函数的输出值,即:
Figure 398448DEST_PATH_IMAGE039
Figure 265910DEST_PATH_IMAGE040
表示数值集合对应的期望值,
Figure 657665DEST_PATH_IMAGE041
表示k个数值集合对应的期望值,即
Figure 310494DEST_PATH_IMAGE042
Figure 384630DEST_PATH_IMAGE043
表示协方差矩阵,
Figure 286858DEST_PATH_IMAGE044
表示根据数值集合
Figure 691425DEST_PATH_IMAGE045
确定的协方差矩阵,
Figure 244766DEST_PATH_IMAGE046
表示k个数值集合对应的协方差矩阵,即:
Figure 443798DEST_PATH_IMAGE047
(2)计算机设备对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
在一种可能实现方式中,计算机设备在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的条件概率,根据至少两组数值集合及对应的输出值和条件概率,对第二处理函数进行调整,得到调整后的第二处理函数。其中,条件概率表示至少两组数值集合对应的输出值的分布满足高斯分布的条件下,基于至少两组数值集合及对应的输出值得到第二处理函数的概率。其中,高斯分布可以为多元高斯分布。
在第一处理函数的任意输出值的联合分布满足高斯分布的情况下,且基于已获取的至少两组数值集合对应的输出值,得到对于第二处理函数的后验概率,将该后验概率作为至少两组数值集合对应的条件概率。
可选地,在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的平均值及方差;根据平均值及方差,获取至少两组数值集合对应的条件概率。
例如,将上述k个数值集合及对应的第一处理函数的输出值,作为已知的k个数据点,根据已知的k个数据点,判断第一处理函数在数值集合为x时的输出值
Figure 98901DEST_PATH_IMAGE032
,则根据高斯回归过程的假设,
Figure 822006DEST_PATH_IMAGE048
满足高斯分布,根据贝叶斯法则,确定条件概率如下述公式(7)所示:
Figure 980586DEST_PATH_IMAGE049
(7)
其中,
Figure 412836DEST_PATH_IMAGE050
表示第二处理函数的平均值,
Figure 476607DEST_PATH_IMAGE051
表示第一处理函数的方差,平均值
Figure 13855DEST_PATH_IMAGE050
如下述公式(8)所示:
Figure 230204DEST_PATH_IMAGE052
(8)
其中,
Figure 82623DEST_PATH_IMAGE037
表示第一个数值集合到第k个数值集合,
Figure 446739DEST_PATH_IMAGE038
表示k个数值集合对应的第一处理函数的输出值,即:
Figure 996800DEST_PATH_IMAGE039
Figure 316923DEST_PATH_IMAGE053
表示数值集合x对应的期望值,
Figure 356554DEST_PATH_IMAGE041
表示k个数值集合对应的期望值,即
Figure 129338DEST_PATH_IMAGE042
Figure 14249DEST_PATH_IMAGE043
表示协方差矩阵,
Figure 267507DEST_PATH_IMAGE044
表示根据数据
Figure 946881DEST_PATH_IMAGE045
确定的协方差矩阵,
Figure 472540DEST_PATH_IMAGE046
表示k个数值集合对应的协方差矩阵。
方差
Figure 991220DEST_PATH_IMAGE054
如下述公式(9)所示:
Figure 285935DEST_PATH_IMAGE055
(9)
其中,
Figure 136210DEST_PATH_IMAGE043
表示协方差矩阵,
Figure 165477DEST_PATH_IMAGE044
表示根据数值集合
Figure 641458DEST_PATH_IMAGE045
确定的协方差矩阵,
Figure 603729DEST_PATH_IMAGE046
表示k个数值集合对应的协方差矩阵。
在上述确定条件概率的过程中,根据贝叶斯法则,确定条件概率,其中,贝叶斯法则用于描述事件1成立的情况下事件2成立的概率,与事件2成立的情况下事件1成立的概率之间的关系。因此,可以根据贝叶斯法则,确定
Figure 93747DEST_PATH_IMAGE038
满足高斯分布时,
Figure 390736DEST_PATH_IMAGE048
也满足高斯分布的概率。
举例来说:采用高斯过程回归算法,根据已知的多个数据点,确定该多个数据点对应的函数,参见图2,假设存在一个第一处理函数
Figure 358824DEST_PATH_IMAGE056
,从该第一处理函数中获取多个数据点,再根据该多个数据点还原出第一处理函数。图2中的实线为第一处理函数对应的曲线,黑色的点表示获取到的数据点,虚线是根据高斯过程回归算法得到的估计函数(第二处理函数)对应的曲线,阴影对应95%的置信区间,即估计函数的曲线可存在的范围。图2中的曲线示意图201为获取到8个数据点时,根据该8个数据点预测得到的估计函数对应的曲线,图中有较大的阴影部分,表示预测的曲线还不够准确。图2中的曲线示意图202为获取到17个数据点时,根据该17个数据点预测得到的第二处理函数对应的曲线,可以看出利用高斯过程回归算法,根据17个数据点已经可以比较准确描绘这些数据点对应的第一处理函数的曲线,也就是说高斯过程回归算法可以快速准确地对函数进行估计处理。
需要说明的是,本申请实施例仅是以根据上述至少两组数值集合得到第二处理函数的过程为例进行说明,而针对于多组数值集合,可以先初始化第二处理函数,每次根据至少两组数值集合,采用上述步骤对已得到的第二处理函数进行调整,得到调整后的第二处理函数,之后还可以继续根据其他的至少两组数值集合,重复采用上述步骤继续对调整后的第二处理函数进行再次调整,以此类推,即可得到更为准确的第二处理函数。
105、计算机设备获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值。
上述步骤104中根据已知的k个数值集合及对应的输出值,采用高斯过程回归算法可以较为准确地得到第一处理函数对应的第二处理函数,但是如果需要得到更加准确的第二处理函数,则需要继续获取新的数值集合及对应的输出值,以根据更多的数值集合及对应的输出值得到更加准确的第二处理函数,而如何获取新的数值集合是关键。因此获取用于描述第二处理函数的期望收益的期望函数,采用该期望函数指示获取更新的数值集合。其中,期望函数最好的选择就是第一处理函数,即将第一处理函数作为期望函数,但是第一处理函数仍是一个未知的函数,因此获取改良期望(EI,Expected Improvement)对应的期望函数。
在一种可能实现方式中,参见图3,采用下述步骤获取更新的数值集合。
1051、计算机设备获取至少两组数值集合对应的第一处理函数的输出值中的最大输出值。
关于期望函数:对于第一处理函数来说,获取了n个数值集合对应的输出值
Figure 441180DEST_PATH_IMAGE057
,则可以定义当前的最大输出值为
Figure 85788DEST_PATH_IMAGE058
Figure 620806DEST_PATH_IMAGE059
其中,n为正整数,
Figure 641851DEST_PATH_IMAGE058
用于表示n个输出值中的最大输出值。当再获取到一个新的数值集合及对应的输出值
Figure 572855DEST_PATH_IMAGE060
时,当前的最大输出值要么是,即
Figure 404676DEST_PATH_IMAGE061
,要么是
Figure 676257DEST_PATH_IMAGE062
,即
Figure 986147DEST_PATH_IMAGE063
,则根据新的数值集合将当前的最大值提高
Figure 777517DEST_PATH_IMAGE064
。其中,记号“+”定义为
Figure 826244DEST_PATH_IMAGE065
1052、计算机设备根据第二处理函数与最大输出值的差值,确定第二处理函数对应的期望函数。
其中,期望函数为求取该差值和0的最大值的均值的函数。
在一种可能实现方式中,定义期望函数如下述公式(10)所示:
Figure 273537DEST_PATH_IMAGE066
(10)
其中,n表示当前已确定的n个输出值,
Figure 901965DEST_PATH_IMAGE067
表示已确定n个输出值时的期望函数,
Figure 547841DEST_PATH_IMAGE064
表示新的数值集合对应的输出值对当前的最大值的提高,该最大值为0或
Figure 721464DEST_PATH_IMAGE068
Figure 967638DEST_PATH_IMAGE069
表示求均值,
Figure 619330DEST_PATH_IMAGE070
表示已确定n个输出值时求均值。
将上述公式(7)代入公式(10)中,得到的简化之后的期望函数如下述公式(11)所示:
Figure 379433DEST_PATH_IMAGE071
(11)
其中,
Figure 769963DEST_PATH_IMAGE072
Figure 723006DEST_PATH_IMAGE073
表示n个输出值对应的平均值,
Figure 443969DEST_PATH_IMAGE074
表示n个输出值对应的标准差,
Figure 313705DEST_PATH_IMAGE075
为密度函数,
Figure 94710DEST_PATH_IMAGE076
为累计函数。
1053、计算机设备采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的数值集合。
在一种可能实现方式中,根据确定的第二处理函数对应的期望函数,定义数值集合的更新法则如下述公式(12)所示:
Figure 987580DEST_PATH_IMAGE077
(12)
也就是说,当上述期望函数的输出值为最大输出值时,对应的数值集合x即为新获取的数值集合。另外,当期望函数的输出值收敛至0时,表示已知的多个数值集合对应的输出值已经存在最大值,也即是收敛于该最大值,此时第一处理函数的输出值也收敛。
另外,图4示出了一种更新数值集合的流程示意图,获取一组数值集合,基于模拟量子算法对一组数值集合中的多个数值进行处理,得到多个子函数对应的第一数值,根据多个子函数对应的第一数值及根据多个子函数确定第一处理函数的运算方式,确定第一处理函数的输出值,根据当前的数值集合及对应的输出值以及之前的数值集合及对应的输出值,根据高斯过程回归算法得到第二处理函数,根据期望函数,得到一组更新的数值集合。
需要说明的是,本申请实施例中,第一组数值集合中的多个数值是预先设置的,该多个数值可以随机设置,也可以根据经验设置。除第一组数值集合之外,其他的数值集合均采用步骤105获取。
106、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
本申请实施例中,第一处理函数的输出值收敛是指多个数值集合对应的输出值收敛于同一数值,由于上述获取第二处理函数的输出值的过程是一个循环过程,则在多个数值集合对应的输出值收敛时,将最后获取的一组数值集合中的多个数值分别作为多个系数的取值,将该多个数值代入第一搜索路径中,得到第二搜索路径。后续即可根据该第二搜索路径对数据进行处理。
本申请实施例中的第二搜索路径是基于量子计算的搜索路径,由于量子计算中存在线性叠加态,因此,与经典计算相比,在量子计算中采用第二搜索路径对数据的处理速度更快,可以提高数据处理效率。
在一种可能实现方式中,将获取的第二搜索路径应用于量子计算机中,根据获取的第二搜索路径,解决量子计算中的Grover搜索(一种量子搜索算法)问题。对于量子计算中的Grover搜索,假设有n个比特,每个比特对应0和1两个状态,则对该n个比特进行编码,可以编码
Figure 43391DEST_PATH_IMAGE078
个物体,经典算法在最差的情况下,需要尝试
Figure 721629DEST_PATH_IMAGE078
次才能够搜索到目标物体,但是由于量子计算机可以实现二次加速,也就是最多只需要尝试
Figure 719540DEST_PATH_IMAGE079
次,即可搜索到目标物体。
基于绝热量子计算的Grover搜索,也就是对于下面给定的两个哈密顿量H0、H1,设计最优的搜索路径。
Figure 116018DEST_PATH_IMAGE080
其中,
Figure 162471DEST_PATH_IMAGE081
,I是单位矩阵,
Figure 960794DEST_PATH_IMAGE082
是目标二进制字符串。
分别采用传统的线性路径、Roland-Cerf路径(一种非线性路径)、以及采用上述步骤得到的第二搜索路径,将初态哈密顿量H0的基态演化至末态哈密顿量H1的基态,则演化过程的示意图如图5所示,横坐标为演化时间,纵坐标为保真度,曲线1为线性路径对应的曲线,曲线2为Roland-Cerf路径对应的曲线,曲线3为最优的搜索路径对应的曲线,图5中的示意图501为6个量子比特对应的演化示意图,图5中的示意图502为8个量子比特对应的演化示意图,图5中的示意图503为10个量子比特对应的演化示意图,图5中的示意图504为12个量子比特对应的演化示意图。
从图5中可以看出,采用传统的线性路径,演化结束之后保真度无法达到1,而采用Roland-Cerf路径和第二搜索路径,演化结束之后保真度可以达到1,并且采用第二搜索路径比采用Roland-Cerf路径到达保真度为1时的时间短,速度更快,提高了绝热量子计算的效率。
另外,从图5中还可以看出,随着量子比特的数目变大,采用线性路径进行演化的效果逐渐变差,这是由于线性路径在任何时刻的速率都是一样的,那么在能隙很小的时候,相同的速率很容易将量子的能量激发到高能级的状态上去,导致无法回到基态。
将上述图5所示的演化过程采用另一种形式进行表现,如图6所示,图6中的横坐标为
Figure 608901DEST_PATH_IMAGE083
,纵坐标为路径,曲线1为线性路径对应的曲线,曲线2为Roland-Cerf路径对应的曲线,曲线3为第二搜索路径对应的曲线,图6中的示意图601为6个量子比特对应的演化示意图,图6中的示意图602为8个量子比特对应的演化示意图,图6中的示意图603为10个量子比特对应的演化示意图,图6中的示意图604为12个量子比特对应的演化示意图。如图7所示,采用第二搜索路径分别对6个量子比特、8个量子比特、10个量子比特及12个量子比特进行演化的示意图,6个量子比特对应曲线11,8个量子比特对应曲线12,10个量子比特对应曲线13,12个量子比特对应曲线14。
从图6和图7可以看出,第二搜索路径在
Figure 538680DEST_PATH_IMAGE084
时变得较为平坦,这是由于
Figure 405136DEST_PATH_IMAGE085
处的能隙最小,符合量子力学的物理规律。
本申请实施例提供的方法,获取第一搜索路径和第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。
并且,当第一处理函数的输出值不收敛时,会更新数值集合,以根据更新的数值集合获取新的第一处理函数的输出值,在更新数值集合的过程中,采用了高斯过程回归算法,该高斯过程回归算法针对连续的、缺乏特定的对称结构和几何结构、难以获取梯度信息的函数,仅需要较短的时间,即可完成对这种复杂的函数的处理,处理效率高。且高斯过程回归算法可以对含有噪声的函数进行处理,可以对多种类型的函数进行处理,应用范围大,则在获取第二搜索路径时,即使该第二搜索路径对应的处理函数是较为复杂的函数,也可以采用高斯过程回归算法快速处理。
并且,由于经典计算中对复杂的函数进行处理时,时间成本和经济成本较高,而对于量子系统来说,量子系统中经历量子相变时,量子系统会变得较为复杂,也就意味着,该量子系统对应的函数会变为较为复杂的函数,采用本申请中的方法可以对复杂的函数快速处理,降低了时间成本和经济成本。
并且,采用强化学习模型只能够对离散的数据进行处理,而无法直接处理连续的函数,导致采用强化学习模型得到的搜索路径仅是局域最优的搜索路径,而本申请中的搜索路径获取方法,可以对连续的函数进行处理,则得到的第二搜索路径为全局最优的搜索路径。
并且,本申请实施例提供的方法,可以确定第一搜索路径的多个系数的取值,得到第二搜索路径,与该多个系数采用其他取值而得到的搜索路径相比,采用该第二搜索路径对数据进行处理时,数据处理速度最快。
图8是本申请实施例提供的一种基于模拟量子算法的搜索路径获取方法的流程图。本申请实施例的执行主体为计算机设备,参见图8,该方法包括。
801、计算机设备获取第一搜索路径及第一搜索路径对应的第一处理函数。
步骤801中获取第一搜索路径及对应的第一处理函数的实施方式与上述图1所示的实施例中的步骤101和步骤102的实施方式类似,在此不再赘述。
802、计算机设备基于模拟量子算法,对获取的数值集合中的多个数值进行处理,得到多个子函数输出的第一数值。
其中,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式。该多个子函数中包括取值未确定的多个系数,该多个系数与第一处理函数中包括的取值未确定的多个系数可以相同,也可以是对第一处理函数中包括的取值未确定的多个系数进行运算得到的。另外,每个子函数均可以包括取值未确定的系数,或者,多个子函数中的预设数量的子函数包括取值未确定的系数,而除预设数量的子函数之外的其他子函数中不包括取值未确定的系数。
另外,由于本申请实施例中是基于模拟量子算法,对获取的数值集合中的多个数值进行处理,得到多个子函数输出的第一数值。那么,模拟量子算法中包括的每个子函数输出的第一数值均有对应的物理含义,例如,子函数输出的第一数值表示量子速度、量子质量等,则模拟量子算法将第一处理函数表示为多个物理量对应的子函数。
803、计算机设备按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
计算机设备获取到第一处理函数的输出值之后,获取已经遍历的至少两组数值集合对应的第一处理函数的输出值,判断第一处理函数的输出值是否收敛,在第一处理函数的输出值收敛的情况下,则执行步骤807,在第一处理函数的输出值不收敛的情况下,则执行步骤804。
804、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
步骤804中获取第二处理函数的实施方式与上述图1所示的实施例中的步骤104的实施方式类似,在此不再赘述。
805、计算机设备获取至少两组数值集合对应的输出值中的最大输出值,根据第二处理函数与该最大输出值的差值,确定第二处理函数对应的期望函数。
806、计算机设备采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的一组数值集合,重复执行步骤802。
步骤805中确定期望函数的实施方式及步骤806中获取更新的数值集合的实施方式与上述图1所示的实施例中的步骤105的实施方式类似,在此不再赘述。
807、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
本申请实施例提供的搜索路径获取方法,获取第一搜索路径和第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。
上述图1或图8所示的基于模拟量子算法的搜索路径获取方法可以应用于搜索场景下,采用搜索路径,在多个备选数据中搜索目标数据。下面以应用于搜索场景为例,对基于模拟量子算法的数据搜索方法进行说明。
图9是本申请实施例提供的一种基于模拟量子算法的数据搜索方法的流程图。参见图9,本申请实施例的执行主体为计算机设备,该方法包括。
901、计算机设备根据待搜索的多个备选数据,创建第一状态数据和第二状态数据。
本申请实施例中,备选数据可以为物品、图像或其他数据,根据实际的搜索场景的不同,该备选数据可以为不同形式的数据,本申请实施例对此不做限制。第一状态数据用于描述还未开始对多个备选数据进行搜索时多个备选数据的状态,第二状态数据用于描述已经搜索到目标数据时多个备选数据的状态。
其中,第一状态数据对应的第一状态为多个备选数据的选取概率相同的状态,第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态。
也就是说,多个备选数据处于第一状态时,还未开始对多个备选数据进行搜索,多个备选数据的选取概率均相同,即计算机设备第一次对多个备选数据进行搜索时,选取到多个备选数据中的任一备选数据的可能性是相同的;多个备选数据处于第二状态时,已经搜索到目标数据,目标数据的选取概率为1,即计算机设备最后一次对多个备选数据进行搜索时,选取到的必然是目标数据。
例如,有n个备选数据,计算机设备第一次对n备选数据进行搜索时,从n个备选数据中选取任一备选数据,该任一备选数据的选取概率为1/n。
在一种可能实现方式中,第一状态数据中包括多个备选数据的选取概率,第二状态数据中包括预设概率,该多个选取概率根据备选数据的数量确定,预设概率为1。例如,有20个备选数据,需要从这20个备选数据中选取1个目标数据,则可以确定第一状态数据中包括的选取概率为1/20。
在一种可能实现方式中,该多个备选数据位于不同的位置,则在多个备选数据中搜索目标数据时,需要从任一初始位置开始进行搜索,终止位置即为目标数据所在的位置,那么,第一状态数据包括起点位置信息,第二状态数据包括终点位置信息。后续在搜索过程中,如果搜索到的位置信息与终止位置信息相同,则表示搜索到目标数据。
902、计算机设备根据第一状态数据和第二状态数据创建第一搜索路径。
步骤902中创建第一搜索路径的实施方式与上述步骤101中获取第一搜索路径的实施方式类似,不同的是,除第一搜索路径包括取值未确定的多个系数之外,第一搜索路径的起点指代第一状态,且终点指代第二状态。
在一种可能实现方式中,计算机设备根据第一状态数据、第二状态数据和目标搜索时长,创建第一搜索路径。其中,第一搜索路径还包括目标搜索时长,该目标搜索时长表示第一状态转换为第二状态所需的时长。其中,目标搜索时长可以为任意预设时长,例如,可以为1分钟、2分钟或其他时长。
以目标搜索时长为T,第一状态数据为(0,1),第二状态数据为(T,0)为例,可以创建第一搜索路径为
Figure 41654DEST_PATH_IMAGE012
,该第一搜索路径满足目标搜索时长、第一状态数据和第二状态数据的要求。
对该第一搜索路径
Figure 132100DEST_PATH_IMAGE012
的形式进行变换,可以得到如下述公式(4)所示的第一搜索路径:
Figure 972012DEST_PATH_IMAGE028
(4)
其中,T为目标搜索时长,t为自变量,
Figure 688164DEST_PATH_IMAGE029
为取值未确定的系数,j的取值范围为1到正无穷,且j为正整数。
需要说明的是,本申请实施例仅是以第一状态数据为(0,1),第二状态数据为(T,0),创建的第一搜索路径为
Figure 929920DEST_PATH_IMAGE012
为例进行说明,在另一实施例中,可以创建其他满足第一状态数据和第二状态数据的搜索路径。
903、计算机设备获取第一搜索路径对应的第一处理函数。其中,第一处理函数包括多个系数,且第一处理函数的输出值由第一搜索路径确定,第一处理函数的输出值收敛指示多个系数的取值满足目标。
904、计算机设备基于模拟量子算法,获取在多个系数的取值为数值集合中的多个数值时,第一处理函数的输出值。
905、计算机设备在第一处理函数的输出值不收敛的情况下,对已获取的至少两组数值集合及对应的输出值进行函数拟合处理,得到用于描述至少两组数值集合对应的输出值的分布的第二处理函数。
906、计算机设备获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值。
907、计算机设备在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径。
步骤903-步骤907中确定第二搜索路径的实施方式与上述图1所示的实施例中步骤102-步骤106中确定第二搜索路径的实施方式类似,在此不再赘述。不同的是,图1所示的实施例中获取的是第二搜索路径,步骤906中获取的是第二搜索路径。
908、计算机设备采用第二搜索路径,在多个备选数据中搜索目标数据。
本申请实施例中,计算机设备采用第二搜索路径,在多个备选数据中搜索目标数据,如果搜索到的备选数据满足搜索条件,则表示该备选数据即为目标数据。
在一种可能实现方式中,多个备选数据的类型不同,搜索条件包括目标类型,计算机设备采用第二搜索路径,在多个备选数据中搜索满足目标类型的目标数据。
例如,备选数据为20个备选物品,需要从20个备选物品中选取1个目标物品,搜索条件为目标物品类型,即需要从20个备选物品中搜索出目标物品类型的目标物品。则在搜索过程中,从搜索路径的起点开始搜索,此时第一次进行搜索能够选取到目标物品的概率为1/20,如果第一次搜索就选取到目标物品,则概率变为1,则结束搜索;如果第一次搜索没有搜索到目标物品,则第二次进行搜索能够选取到目标物品的概率为1/19,如果第二次搜索选取到目标物品,则概率变为1,则结束搜索;如果第二次搜索还没有搜索到目标物品,则第三次进行搜索能够选取到目标物品的概率变为1/18,继续对剩余的备选物品进行搜索,直至搜索到目标物品。
可选地,多个备选数据中包括类型相同的数据,搜索条件可以包括数据标识或其他可以唯一表示该目标数据的数据特征。
需要说明的是,本申请实施例对备选数据的形式、搜索条件不做限制,根据实际的应用场景,该备选数据可以为多种形式的数据,搜索条件可以根据备选数据的形式确定。
本申请实施例提供的方法,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
并且,由于获取的第二搜索路径为搜索时间最短、搜索速度最快的搜索路径,采用第二搜索路径搜索目标数据的过程中,可以根据搜索条件快速从多个备选数据中搜索到目标数据,提高了数据搜索效率。并且,与经典计算中的数据搜索方式相比较,第二搜索路径是基于量子计算的数据搜索方式,采用第二搜索路径搜索目标数据的效率高于采用经典计算搜索目标数据的效率。
图10是本申请实施例提供的一种数据搜索装置的结构示意图。参见图10,该装置包括。
状态数据创建模块1001,用于根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,第一状态数据对应的第一状态为多个备选数据的选取概率相同的状态,第二状态数据对应的第二状态为多个备选数据中满足搜索条件的目标数据的选取概率为预设概率,且其他备选数据的选取概率小于预设概率的状态;
第一路径创建模块1002,用于根据第一状态数据和第二状态数据创建第一搜索路径,第一搜索路径的起点指代第一状态,且终点指代第二状态,第一搜索路径包括取值未确定的多个系数;
第一函数获取模块1003,用于获取第一搜索路径对应的第一处理函数,第一处理函数包括多个系数,且第一处理函数的输出值由第一搜索路径确定,第一处理函数的输出值收敛指示多个系数的取值满足目标;
集合获取模块1004,用于遍历第一搜索路径的至少两组数值集合,每组数值集合包括多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
输出值获取模块1005,用于基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值;
第二路径获取模块1006,用于在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径
数据搜索模块1007,用于采用第二搜索路径,在多个备选数据中搜索目标数据。
本申请实施例提供的装置,根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,根据第一状态数据和第二状态数据创建第一搜索路径,获取第一搜索路径对应的第一处理函数,遍历第一搜索路径的至少两组数值集合,基于模拟量子算法,获取在多个系数的取值分别为遍历的数值集合中的多个数值时,第一处理函数的输出值,对数值集合进行遍历的过程中,一次遍历即可分别对多个系数的不同取值进行处理,在第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为多个系数的取值,得到第二搜索路径,只需要遍历较少的次数即可使第一处理函数的输出值收敛,以快速获取多个系数的准确取值,从而提高获取第二搜索路径的效率。并且,由于第一搜索路径是根据多个备选数据对应的第一状态数据和第二状态数据进行创建的,获取的第二搜索路径适用于该多个备选数据,可以采用第二搜索数据在对多个备选数据中快速搜索出目标数据。
在一种可能实现方式中,参见图11,装置还包括:
信息获取模块1008,用于在第一处理函数的输出值不收敛的情况下,获取已遍历完成的至少两组数值集合,以及至少两组数值集合对应的第一处理函数的输出值;
第二函数获取模块1009,用于对至少两组数值集合及对应的输出值进行函数拟合处理,得到第二处理函数,第二处理函数用于描述至少两组数值集合对应的输出值的分布,第二处理函数包括多个系数;
集合更新模块1010,用于获取更新的数值集合,以使更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为期望函数的最大输出值,期望函数用于描述第二处理函数的期望收益。
在另一种可能实现方式中,参见图11,第二函数获取模块1009,包括:
概率获取单元1019,用于在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的条件概率,条件概率表示至少两组数值集合对应的输出值的分布满足高斯分布的条件下,基于至少两组数值集合及对应的输出值得到第二处理函数的概率;
函数调整单元1029,用于根据至少两组数值集合及对应的输出值和条件概率,对已得到的第二处理函数进行调整,得到调整后的第二处理函数。
在另一种可能实现方式中,参见图11,集合更新模块1010,还用于:
获取至少两组数值集合对应的第一处理函数的输出值中的最大输出值;
根据第二处理函数与最大输出值的差值,确定第二处理函数对应的期望函数,期望函数为求取差值和0的最大值的均值的函数;
采用梯度算法,确定期望函数的最大输出值对应的一组数值集合,作为更新的数值集合。
在另一种可能实现方式中,参见图11,概率获取单元1019,还用于:
在至少两组数值集合满足高斯分布的情况下,获取至少两组数值集合对应的平均值及方差;
根据平均值及方差,获取至少两组数值集合对应的条件概率。
在另一种可能实现方式中,参见图11,模拟量子算法包括多个子函数及根据多个子函数确定第一处理函数的运算方式,输出值获取模块1005,包括:
第一数值获取单元1015,用于基于模拟量子算法,对遍历的数值集合中的多个数值进行处理,分别得到多个子函数输出的第一数值;
输出值获取单元1025,用于按照运算方式,对多个子函数输出的第一数值进行运算处理,得到第一处理函数的输出值。
在另一种可能实现方式中,第一路径创建模块1002,还用于:
根据第一状态数据、第二状态数据和目标搜索时长,创建第一搜索路径,第一搜索路径还包括目标搜索时长,目标搜索时长表示将第一状态转换为第二状态所需的时长。
在另一种可能实现方式中,多个备选数据的类型不同,搜索条件包括目标类型,数据搜索模块1007,还用于:
采用第二搜索路径,在多个备选数据中搜索满足目标类型的目标数据。
图12示出了本申请一个示例性实施例提供的终端1200的结构示意图。该终端1200用于执行上述基于模拟量子算法的数据搜索方法中终端所执行的步骤。
通常,终端1200包括有:处理器1201和存储器1202。
处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以在集成有GPU(Graphics Processing Unit,图像处理的交互器), GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1201所具有以实现本申请中方法实施例提供的基于模拟量子算法的数据搜索方法。
在一些实施例中,终端1200还可选包括有:外围设备接口1203和至少一个外围设备。处理器1201、存储器1202和外围设备接口1203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1203相连。具体地,外围设备包括:射频电路1204、触摸显示屏1205、摄像头1206、音频电路1207、定位组件1208和电源1209中的至少一种。
外围设备接口1203可被用于将I/O(Input /Output,输入/输出)相关的至少一个外围设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和外围设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和外围设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1204用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1204可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1204还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1205用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1205可以为一个,设置终端1200的前面板;在另一些实施例中,显示屏1205可以为至少两个,分别设置在终端1200的不同表面或呈折叠设计;在再一些实施例中,显示屏1205可以是柔性显示屏,设置在终端1200的弯曲表面上或折叠面上。甚至,显示屏1205还可以设置成非矩形的不规则图形,也即异形屏。显示屏1205可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端1200的前面板,后置摄像头设置在终端1200的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1206还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1200的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1201或射频电路1204的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1207还可以包括耳机插孔。
定位组件1208用于定位终端1200的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1208可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1209用于为终端1200中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。当电源1209包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1200还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。
加速度传感器1211可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1211可以用于检测重力加速度在三个坐标轴上的分量。处理器1201可以根据加速度传感器1211采集的重力加速度信号,控制触摸显示屏1205以横向视图或纵向视图进行用户界面的显示。加速度传感器1211还可以用于应用或者用户的运动数据的采集。
陀螺仪传感器1212可以检测终端1200的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端1200的3D动作。处理器1201根据陀螺仪传感器1212采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、应用控制以及惯性导航。
压力传感器1213可以设置在终端1200的侧边框和/或触摸显示屏1205的下层。当压力传感器1213设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或快捷操作。当压力传感器1213设置在触摸显示屏1205的下层时,由处理器1201根据用户对触摸显示屏1205的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1201授权该用户具有相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1214可以被设置终端1200的正面、背面或侧面。当终端1200上设置有物理按键或厂商Logo时,指纹传感器1214可以与物理按键或厂商标志集成在一起。
光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制触摸显示屏1205的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1205的显示亮度;当环境光强度较低时,调低触摸显示屏1205的显示亮度。在另一个实施例中,处理器1201还可以根据光学传感器1215采集的环境光强度,动态调整摄像头组件1206的拍摄参数。
接近传感器1216,也称距离传感器,通常设置在终端1200的前面板。接近传感器1216用于采集用户与终端1200的正面之间的距离。在一个实施例中,当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变小时,由处理器1201控制触摸显示屏1205从亮屏状态切换为息屏状态;当接近传感器1216检测到用户与终端1200的正面之间的距离逐渐变大时,由处理器1201控制触摸显示屏1205从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图13是本申请实施例提供的一种服务器的结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1301和一个或一个以上的存储器1302,其中,存储器1302中存储有至少一条指令,该至少一条指令由处理器1301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1300可以用于执行上述基于模拟量子算法的数据搜索方法中服务器所执行的步骤。
本申请实施例还提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本申请实施例还提供了一种计算机程序,该计算机程序中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的基于模拟量子算法的数据搜索方法中所执行的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种基于模拟量子算法的数据搜索方法,其特征在于,所述方法包括:
根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
2.根据权利要求1所述的方法,其特征在于,所述基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值之后,所述方法还包括:
在所述第一处理函数的输出值不收敛的情况下,获取已遍历完成的至少两组数值集合,以及所述至少两组数值集合对应的所述第一处理函数的输出值;
对所述至少两组数值集合及对应的输出值进行函数拟合处理,得到第二处理函数,所述第二处理函数用于描述所述至少两组数值集合对应的输出值的分布,所述第二处理函数包括所述多个系数;
获取更新的数值集合,以使所述更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为所述期望函数的最大输出值,所述期望函数用于描述所述第二处理函数的期望收益。
3.根据权利要求2所述的方法,其特征在于,所述对所述至少两组数值集合及对应的输出值进行函数拟合处理,得到第二处理函数,包括:
在所述至少两组数值集合满足高斯分布的情况下,获取所述至少两组数值集合对应的条件概率,所述条件概率表示所述至少两组数值集合对应的输出值的分布满足所述高斯分布的条件下,基于所述至少两组数值集合及对应的输出值得到所述第二处理函数的概率;
根据所述至少两组数值集合及对应的输出值和条件概率,对已得到的第二处理函数进行调整,得到调整后的所述第二处理函数。
4.根据权利要求2所述的方法,其特征在于,所述获取更新的数值集合,以使所述更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为所述期望函数的最大输出值,包括:
获取所述至少两组数值集合对应的所述第一处理函数的输出值中的最大输出值;
根据所述第二处理函数与所述最大输出值的差值,确定所述第二处理函数对应的所述期望函数,所述期望函数为求取所述差值和0的最大值的均值的函数;
采用梯度算法,确定所述期望函数的最大输出值对应的一组数值集合,作为所述更新的数值集合。
5.根据权利要求3所述的方法,其特征在于,所述在所述至少两组数值集合满足高斯分布的情况下,获取所述至少两组数值集合对应的条件概率,包括:
在所述至少两组数值集合满足所述高斯分布的情况下,获取所述至少两组数值集合对应的平均值及方差;
根据所述平均值及所述方差,获取所述至少两组数值集合对应的条件概率。
6.根据权利要求1所述的方法,其特征在于,所述模拟量子算法包括多个子函数及根据所述多个子函数确定所述第一处理函数的运算方式,所述基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值,包括:
基于所述模拟量子算法,对所述遍历的数值集合中的多个数值进行处理,分别得到所述多个子函数输出的第一数值;
按照所述运算方式,对所述多个子函数输出的第一数值进行运算处理,得到所述第一处理函数的输出值。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一状态数据和所述第二状态数据创建第一搜索路径,包括:
根据所述第一状态数据、所述第二状态数据和目标搜索时长,创建所述第一搜索路径,所述第一搜索路径还包括所述目标搜索时长,所述目标搜索时长表示将所述第一状态转换为所述第二状态所需的时长。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述多个备选数据的类型不同,所述搜索条件包括目标类型,所述采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据,包括:
采用所述第二搜索路径,在所述多个备选数据中搜索满足所述目标类型的目标数据。
9.一种数据搜索装置,其特征在于,所述装置包括:
状态数据创建模块,用于根据待搜索的多个备选数据,创建第一状态数据和第二状态数据,所述第一状态数据对应的第一状态为所述多个备选数据的选取概率相同的状态,所述第二状态数据对应的第二状态为已经搜索到满足搜索条件的目标数据的状态;
第一路径创建模块,用于根据所述第一状态数据和所述第二状态数据创建第一搜索路径,所述第一搜索路径的起点指代所述第一状态,且终点指代所述第二状态,所述第一搜索路径包括取值未确定的多个系数;
第一函数获取模块,用于获取所述第一搜索路径对应的第一处理函数,所述第一处理函数包括所述多个系数,且所述第一处理函数的输出值由所述第一搜索路径确定,所述第一处理函数的输出值收敛指示所述多个系数的取值满足目标;
集合获取模块,用于遍历所述第一搜索路径的至少两组数值集合,每组数值集合包括所述多个系数对应的多个数值,且不同的数值集合中的多个数值不完全相同;
输出值获取模块,用于基于模拟量子算法,获取在所述多个系数的取值分别为遍历的数值集合中的多个数值时,所述第一处理函数的输出值;
第二路径获取模块,用于在所述第一处理函数的输出值收敛的情况下,将收敛的输出值对应的数值集合中的多个数值分别作为所述多个系数的取值,得到第二搜索路径;
数据搜索模块,用于采用所述第二搜索路径,在所述多个备选数据中搜索所述目标数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
信息获取模块,用于在所述第一处理函数的输出值不收敛的情况下,获取已遍历完成的至少两组数值集合,以及所述至少两组数值集合对应的所述第一处理函数的输出值;
第二函数获取模块,用于对所述至少两组数值集合及对应的输出值进行函数拟合处理,得到第二处理函数,所述第二处理函数用于描述所述至少两组数值集合对应的输出值的分布,所述第二处理函数包括所述多个系数;
集合更新模块,用于获取更新的数值集合,以使所述更新的数值集合中的多个数值采用期望函数进行处理后得到的输出值为所述期望函数的最大输出值,所述期望函数用于描述所述第二处理函数的期望收益。
11.根据权利要求10所述的装置,其特征在于,所述第二函数获取模块,包括:
概率获取单元,用于在所述至少两组数值集合满足高斯分布的情况下,获取所述至少两组数值集合对应的条件概率,所述条件概率表示所述至少两组数值集合对应的输出值的分布满足所述高斯分布的条件下,基于所述至少两组数值集合及对应的输出值得到所述第二处理函数的概率;
函数调整单元,用于根据所述至少两组数值集合及对应的输出值和条件概率,对已得到的第二处理函数进行调整,得到调整后的所述第二处理函数。
12.根据权利要求10所述的装置,其特征在于,所述集合更新模块,还用于:
获取所述至少两组数值集合对应的所述第一处理函数的输出值中的最大输出值;
根据所述第二处理函数与所述最大输出值的差值,确定所述第二处理函数对应的所述期望函数,所述期望函数为求取所述差值和0的最大值的均值的函数;
采用梯度算法,确定所述期望函数的最大输出值对应的一组数值集合,作为所述更新的数值集合。
13.根据权利要求9所述的装置,其特征在于,所述模拟量子算法包括多个子函数及根据所述多个子函数确定所述第一处理函数的运算方式,所述输出值获取模块,包括:
第一数值获取单元,用于基于所述模拟量子算法,对所述遍历的数值集合中的多个数值进行处理,分别得到所述多个子函数输出的第一数值;
输出值获取单元,用于按照所述运算方式,对所述多个子函数输出的第一数值进行运算处理,得到所述第一处理函数的输出值。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现如权利要求1至8任一权利要求所述的基于模拟量子算法的数据搜索方法中所执行的操作。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以实现如权利要求1至8任一权利要求所述的基于模拟量子算法的数据搜索方法中所执行的操作。
CN202010337586.6A 2020-04-26 2020-04-26 基于模拟量子算法的数据搜索方法、装置及设备 Active CN111241356B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN202010337586.6A CN111241356B (zh) 2020-04-26 2020-04-26 基于模拟量子算法的数据搜索方法、装置及设备
KR1020217031511A KR20210134724A (ko) 2020-04-26 2021-03-19 시뮬레이션된 양자 알고리즘에 기초한 데이터 검색 방법 및 장치 및 디바이스
EP21773270.0A EP3933616A4 (en) 2020-04-26 2021-03-19 METHOD AND APPARATUS FOR DATA RESEARCH BASED ON AN ANALOG QUANTUM ALGORITHM AND DEVICE
JP2021549943A JP7176127B2 (ja) 2020-04-26 2021-03-19 量子シミュレーションアルゴリズムに基づくデータサーチ方法、装置及び機器並びにコンピュータプログラム
PCT/CN2021/081810 WO2021218480A1 (zh) 2020-04-26 2021-03-19 基于模拟量子算法的数据搜索方法、装置及设备
US17/523,840 US11782937B2 (en) 2020-04-26 2021-11-10 Data search method and apparatus based on quantum simulated algorithm, and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010337586.6A CN111241356B (zh) 2020-04-26 2020-04-26 基于模拟量子算法的数据搜索方法、装置及设备

Publications (2)

Publication Number Publication Date
CN111241356A true CN111241356A (zh) 2020-06-05
CN111241356B CN111241356B (zh) 2020-08-11

Family

ID=70880790

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010337586.6A Active CN111241356B (zh) 2020-04-26 2020-04-26 基于模拟量子算法的数据搜索方法、装置及设备

Country Status (6)

Country Link
US (1) US11782937B2 (zh)
EP (1) EP3933616A4 (zh)
JP (1) JP7176127B2 (zh)
KR (1) KR20210134724A (zh)
CN (1) CN111241356B (zh)
WO (1) WO2021218480A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112651509A (zh) * 2020-10-14 2021-04-13 腾讯科技(深圳)有限公司 量子线路的确定方法及装置
WO2021218480A1 (zh) * 2020-04-26 2021-11-04 腾讯科技(深圳)有限公司 基于模拟量子算法的数据搜索方法、装置及设备
CN114819166A (zh) * 2022-05-27 2022-07-29 北京大学 一种量子系统的演化方法及装置
CN115907016A (zh) * 2021-09-30 2023-04-04 合肥本源量子计算科技有限责任公司 一种基于量子计算搜索目标范围值的方法及相关装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118014095A (zh) * 2024-04-10 2024-05-10 国开启科量子技术(安徽)有限公司 分布式的多目标量子搜索方法、装置、介质及设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902826A (zh) * 2014-04-02 2014-07-02 哈尔滨工程大学 一种冲击噪声环境下的多移动目标跟踪方法
CN107248014A (zh) * 2017-06-27 2017-10-13 安徽师范大学 基于量子布谷鸟搜索算法的智能垃圾回收路径规划方法
US20180011981A1 (en) * 2016-07-05 2018-01-11 The Regents Of The University Of Michigan Quantum-based machine learning for oncology treatment
CN107742156A (zh) * 2017-10-18 2018-02-27 浙江工商大学 基于优化量子随机行走搜索算法的量子相干性方法
CN109241022A (zh) * 2018-09-11 2019-01-18 天津理工大学 一种基于蓝光存储的档案管理系统及其蚁群搜索算法
CN109816113A (zh) * 2019-01-23 2019-05-28 深圳市永达电子信息股份有限公司 基于分布式量子计算机的搜索方法及系统
CN110162536A (zh) * 2019-04-10 2019-08-23 深圳大学 一种量子搜索方法、系统、电子装置及存储介质
AU2020100264A4 (en) * 2020-02-03 2020-03-26 Chengdu University Of Information Technology A practical one-way quantum private query method
CN110990638A (zh) * 2019-10-28 2020-04-10 北京大学 基于fpga-cpu异构环境的大规模数据查询加速装置及方法
CN111027703A (zh) * 2019-12-11 2020-04-17 合肥本源量子计算科技有限责任公司 一种量子线路查询的方法、装置、存储介质及电子装置
CN111027702A (zh) * 2019-12-11 2020-04-17 合肥本源量子计算科技有限责任公司 一种实现量子线路替换的方法、装置、存储介质和电子装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010525431A (ja) 2007-04-19 2010-07-22 ディー−ウェイブ システムズ,インコーポレイテッド 自動画像認識用のシステム、方法、および装置
EP3014534A4 (en) * 2013-06-28 2017-03-22 D-Wave Systems Inc. Systems and methods for quantum processing of data
CN103324978B (zh) * 2013-07-03 2015-12-09 哈尔滨工程大学 基于多目标量子蚁群算法的多目标决策引擎参数优化方法
US10176433B2 (en) * 2016-05-13 2019-01-08 Microsoft Technology Licensing, Llc Training a quantum optimizer
US10275721B2 (en) 2017-04-19 2019-04-30 Accenture Global Solutions Limited Quantum computing machine learning module
US10452990B2 (en) 2017-11-28 2019-10-22 International Business Machines Corporation Cost function deformation in quantum approximate optimization
WO2019165439A1 (en) * 2018-02-26 2019-08-29 Microsoft Technology Licensing, Llc Short path quantum procedures for solving combinatorial optimization problems
EP3807804A4 (en) * 2018-06-18 2022-04-06 1QB Information Technologies Inc. VARIATIONAL AND ADIABATIC NAVIGATED QUANTUM OWN SOLVER
CN110969254A (zh) * 2019-10-22 2020-04-07 天津大学 一种基于绝热量子算法求解超图Ramsey数方法
CN111241356B (zh) * 2020-04-26 2020-08-11 腾讯科技(深圳)有限公司 基于模拟量子算法的数据搜索方法、装置及设备

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902826A (zh) * 2014-04-02 2014-07-02 哈尔滨工程大学 一种冲击噪声环境下的多移动目标跟踪方法
US20180011981A1 (en) * 2016-07-05 2018-01-11 The Regents Of The University Of Michigan Quantum-based machine learning for oncology treatment
CN107248014A (zh) * 2017-06-27 2017-10-13 安徽师范大学 基于量子布谷鸟搜索算法的智能垃圾回收路径规划方法
CN107742156A (zh) * 2017-10-18 2018-02-27 浙江工商大学 基于优化量子随机行走搜索算法的量子相干性方法
CN109241022A (zh) * 2018-09-11 2019-01-18 天津理工大学 一种基于蓝光存储的档案管理系统及其蚁群搜索算法
CN109816113A (zh) * 2019-01-23 2019-05-28 深圳市永达电子信息股份有限公司 基于分布式量子计算机的搜索方法及系统
CN110162536A (zh) * 2019-04-10 2019-08-23 深圳大学 一种量子搜索方法、系统、电子装置及存储介质
CN110990638A (zh) * 2019-10-28 2020-04-10 北京大学 基于fpga-cpu异构环境的大规模数据查询加速装置及方法
CN111027703A (zh) * 2019-12-11 2020-04-17 合肥本源量子计算科技有限责任公司 一种量子线路查询的方法、装置、存储介质及电子装置
CN111027702A (zh) * 2019-12-11 2020-04-17 合肥本源量子计算科技有限责任公司 一种实现量子线路替换的方法、装置、存储介质和电子装置
AU2020100264A4 (en) * 2020-02-03 2020-03-26 Chengdu University Of Information Technology A practical one-way quantum private query method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
于景水: "《量子搜索算法研究及量子纠缠计算》", 《中国优秀硕士学位论文全文数据库基础科学辑》 *
代永涛: "《基于Grover算法的量子处理架构的设计与仿真研究》", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021218480A1 (zh) * 2020-04-26 2021-11-04 腾讯科技(深圳)有限公司 基于模拟量子算法的数据搜索方法、装置及设备
US11782937B2 (en) 2020-04-26 2023-10-10 Tencent Technology (Shenzhen) Company Limited Data search method and apparatus based on quantum simulated algorithm, and device
CN112651509A (zh) * 2020-10-14 2021-04-13 腾讯科技(深圳)有限公司 量子线路的确定方法及装置
CN112651509B (zh) * 2020-10-14 2022-04-22 腾讯科技(深圳)有限公司 量子线路的确定方法及装置
CN115907016A (zh) * 2021-09-30 2023-04-04 合肥本源量子计算科技有限责任公司 一种基于量子计算搜索目标范围值的方法及相关装置
CN115907016B (zh) * 2021-09-30 2024-06-14 本源量子计算科技(合肥)股份有限公司 一种基于量子计算搜索目标范围值的方法及相关装置
CN114819166A (zh) * 2022-05-27 2022-07-29 北京大学 一种量子系统的演化方法及装置

Also Published As

Publication number Publication date
EP3933616A4 (en) 2022-07-06
WO2021218480A1 (zh) 2021-11-04
JP2022533809A (ja) 2022-07-26
CN111241356B (zh) 2020-08-11
KR20210134724A (ko) 2021-11-10
US20220067040A1 (en) 2022-03-03
JP7176127B2 (ja) 2022-11-21
US11782937B2 (en) 2023-10-10
EP3933616A1 (en) 2022-01-05

Similar Documents

Publication Publication Date Title
CN111241356B (zh) 基于模拟量子算法的数据搜索方法、装置及设备
US11275931B2 (en) Human pose prediction method and apparatus, device, and storage medium
US11565181B2 (en) Virtual object control method and apparatus, computer device, and storage medium
CN110083791B (zh) 目标群组检测方法、装置、计算机设备及存储介质
CN109284445B (zh) 网络资源的推荐方法、装置、服务器及存储介质
CN110059652B (zh) 人脸图像处理方法、装置及存储介质
CN112907725B (zh) 图像生成、图像处理模型的训练、图像处理方法和装置
CN109558837B (zh) 人脸关键点检测方法、装置及存储介质
CN111104980B (zh) 确定分类结果的方法、装置、设备及存储介质
CN111931946B (zh) 数据处理方法、装置、计算机设备及存储介质
CN110796248A (zh) 数据增强的方法、装置、设备及存储介质
CN110210573A (zh) 对抗图像的生成方法、装置、终端及存储介质
US20210142516A1 (en) Method and electronic device for virtual interaction
CN110490389B (zh) 点击率预测方法、装置、设备及介质
JP7483056B2 (ja) 選択ターゲットの決定方法、装置、機器、及びコンピュータプログラム
CN108196701B (zh) 确定姿态的方法、装置及vr设备
CN111563201A (zh) 内容推送方法、装置、服务器及存储介质
JP2022540736A (ja) キャラクタ推薦方法、キャラクタ推薦装置、コンピュータ装置およびプログラム
CN113822916B (zh) 图像匹配方法、装置、设备及可读存储介质
CN113763932B (zh) 语音处理方法、装置、计算机设备及存储介质
CN109388732B (zh) 音乐地图的生成和显示方法、装置及存储介质
CN112417263B (zh) 数据推荐方法、装置及存储介质
CN112329909B (zh) 生成神经网络模型的方法、装置及存储介质
CN113139614A (zh) 特征提取方法、装置、电子设备及存储介质
CN111523876A (zh) 支付方式的显示方法、装置、系统及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40025289

Country of ref document: HK