掌桥专利:专业的专利平台
掌桥专利
首页

基于先验知识的拓扑特征分类

文献发布时间:2023-06-19 12:16:29


基于先验知识的拓扑特征分类

技术领域

本公开涉及拓扑特征分类,并且更具体地涉及使用量子和经典计算技术的混合的一个或多个贝蒂(Betti)数的一个或多个基于先验知识的推断。

背景技术

拓扑数据分析技术利用代数拓扑公式来提供可以对所选择的特定度量不敏感、提供维度减少和/或对在主题数据中发现的噪声鲁棒的框架。此外,拓扑数据分析可通过机器学习、深度学习、分类、推断和/或人工智能任务来促进。例如,一个或多个机器学习任务可利用代数拓扑的原理来生成主题数据的越来越高级别的抽象,其中然后可基于抽象而不是原始数据来执行关于数据的特性的确定。

传统上,已经实施了经典计算技术或量子计算技术来执行拓扑数据分析。经典计算技术可容易地对大数据集执行拓扑数据分析。考虑到经典计算设备的处理能力的低成本和可用性,经典计算技术可在分析大数据集时展现出期望的效率。然而,通过经典计算技术的分析可能受到数据的复杂性的限制。相比之下,量子计算技术可以容易地对复杂的数据集执行拓扑数据分析,但是在能够被处理的数据量方面受到限制。例如,常规的量子算法可能需要在近期量子计算中不能容易地实现的电路深度或容错的水平。

因此,本领域需要解决上述问题。

发明内容

从第一方面来看,以下发明提供了一种用于拓扑分类的系统,该系统包括:存储器,其存储计算机可执行组件;处理器,可操作地耦接到所述存储器,并且执行存储在所述存储器中的所述计算机可执行组件,其中所述计算机可执行组件包括:量子计算组件,其可操作用于将特征值(eigenvalue)编码到量子电路的量子态上的相位中;以及经典计算组件,其通过测量量子电路的辅助(ancilla)状态使用贝叶斯学习算法来推断贝蒂数。

从另一方面来看,以下发明提供了一种用于拓扑分类的计算机实现的方法,该方法包括:由操作地耦接到处理器的系统将特征值编码到量子电路的量子态上的相位中;并且由所述系统通过测量量子电路的辅助态,利用贝叶斯学习算法推断贝蒂数。

从另一方面来看,本发明提供了一种用于拓扑分类的计算机程序产品,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质可由处理电路读取并且存储用于由处理电路运行来执行用于执行本发明的步骤的方法的指令。

从另一方面来看,本发明提供了一种存储在计算机可读介质上并且可加载到数字计算机的内部存储器中的计算机程序,所述计算机程序包括软件代码部分,当所述程序在计算机上运行时,所述软件代码部分用于执行本发明的步骤。

下面给出概述以提供对本发明的一个或多个实施例的基本理解。本概述不旨在标识关键或重要元素,或描绘特定实施例的任何范围或权利要求的任何范围。其唯一目的是以简化形式呈现概念,作为稍后呈现的更详细描述的序言。在本文描述的一个或多个实施例中,描述了可促进复杂数据集的拓扑分类的系统、计算机实现的方法、装置和/或计算机程序产品。

根据一个实施例,提供了一种系统。该系统可以包括可以存储计算机可执行组件的存储器。该系统还可以包括处理器,其可操作地耦接到存储器,并且可以执行存储在存储器中的计算机可执行组件。计算机可执行组件可以包括量子计算组件,该量子计算组件可以将拉普拉斯矩阵的特征值编码到量子电路的量子态上的相位中。这些计算机可执行组件还可以包括经典计算组件,该经典计算组件通过测量该量子电路的辅助态使用贝叶斯学习算法推断贝蒂数。这种系统的优点可以是利用量子计算用于复杂计算并且利用经典计算用于大计算。

在一些示例中,贝蒂数可包括在由经典计算组件推断的多个贝蒂数内,并且该多个贝蒂数可表征对象的拓扑。这样的系统的优点可以是复杂数据集的拓扑分类。

根据一个实施例,提供了一种计算机实施的方法。该计算机实现的方法可以包括通过可操作地耦接到处理器的系统将拉普拉斯矩阵的特征值编码到量子电路的量子态上的相位中。该计算机实现的方法还可以包括由该系统通过测量该量子电路的辅助态使用贝叶斯学习算法推断贝蒂数。这种计算机实现的方法的优点可以是可以结合先验知识的深度学习任务的自主实现。

在一些示例中,该计算机实现的方法可以包括由系统重复地测量辅助态。辅助态可以是与量子态的乘积态。该计算机实现的方法还可以包括由系统基于重复测量来生成概率分布。此外,该计算机实现的方法可以包括由系统使用蒙特卡罗采样算法分析所述概率分布以更新先验知识分布。这种计算机实现的方法的优点可以是可以基于先前的计算来细化系统的分析,以提高准确度和/或效率。

根据一个实施例,提供了一种用于拓扑分类的计算机程序产品。所述计算机程序产品可包括计算机可读存储介质,所述计算机可读存储介质具有实施的程序指令,所述程序指令可由处理器执行以使所述处理器通过操作地耦接到所述处理器的系统将拉普拉斯矩阵的特征值编码到量子电路的量子态上的相位中。这些程序指令还可以使处理器通过该系统通过测量量子电路的辅助态使用贝叶斯学习算法推断贝蒂数。这种计算机程序产品的优点可以是使用量子计算来促进拓扑分类而不引起不希望的容错。

在一些示例中,这些程序指令还可以使该处理器通过该系统通过选择性地对对象进行采样来生成子样本对象。此外,程序指令还可以使处理器通过系统使用持续同调(persistent homology)算法表征子样本对象以生成量子叠加态。此外,程序指令可以使得处理器通过系统基于量子叠加态生成拉普拉斯矩阵作为量子对象。这样的程序产品的优点可以是复杂数据集的拓扑分类。

根据一个实施例,提供了一种系统。该系统可以包括可以存储计算机可执行组件的存储器。该系统还可以包括处理器,其可操作地耦接到存储器,并且可以执行存储在存储器中的计算机可执行组件。计算机可执行组件可以包括量子计算组件,该量子计算组件可以将特征值编码到量子电路的量子态上的相位中。特征值可以与对象的拓扑特征有关。计算机可执行组件还可以包括经典计算组件,该经典计算组件可以通过测量该量子电路的辅助态使用贝叶斯学习算法来推断贝蒂数。这种系统的优点可以是利用量子计算用于复杂计算并且利用经典计算用于拓扑分类。

在一些示例中,该系统可以进一步包括子样本组件,该子样本组件可以通过选择性地对对象进行采样而生成子样本对象。此外,该系统可以包括同调组件,该同调组件可以使用持续同调算法对该子样本对象进行表征以产生量子叠加态。此外,该系统可以包括矩阵组件,该矩阵组件可以基于量子叠加态生成拉普拉斯矩阵作为量子对象。这种系统的优点可以是从复杂数据集中拆分出数据以便通过量子和/或经典计算技术来促进拓扑分类。

根据一个实施例,提供了一种用于拓扑分类的计算机程序产品。该计算机程序产品可以包括计算机可读存储介质,该计算机可读存储介质具有实施的程序指令,所述程序指令可由处理器执行以使所述处理器通过可操作地耦接到所述处理器的系统将特征值编码到量子电路的量子态上的相位中,其中所述特征值与对象的拓扑特征有关。这些程序指令还可以使该系统通过测量该量子电路的辅助态使用贝叶斯学习算法推断贝蒂数。这种计算机程序产品的优点可以是使用量子计算来促进具有期望电路深度的拓扑分类。

在一些实例中,这些程序指令可以进一步使该处理器通过系统基于该量子电路的先前测量生成贝叶斯学习算法。这样的程序产品的优点可以是将先验知识结合到复杂数据集的拓扑分类中。

附图说明

现在将参考如在以下附图中展示的优选实施例仅通过举例来描述本发明:

图1示出了根据本文描述的一个或多个实施例的包括可以促进拓扑特征分类的一个或多个量子计算组件的示例非限制性系统的框图。

图2A示出了根据本文描述的一个或多个实施例的可由一个或多个系统进行拓扑数据分析的示例非限制性对象的图。

图2B示出了根据本文描述的一个或多个实施例的可以由一个或多个量子计算组件生成以促进拓扑数据分析的示例非限制性子样本对象的图。

图3示出了根据本文描述的一个或多个实施例的包括可以促进拓扑特征分类的一个或多个量子计算组件的示例非限制性系统的框图。

图4示出了根据本文描述的一个或多个实施例的可以由一个或多个量子计算组件生成以促进拓扑数据分析的示例非限制性单纯形(simplex)构造的图。

图5示出了根据本文描述的一个或多个实施例的包括可以促进拓扑特征分类的一个或多个量子计算组件的示例非限制性系统的框图。

图6示出了根据本文描述的一个或多个实施例的示例非限制性量子电路的图,该量子电路可以将一个或多个特征值编码到一个或多个量子相位中以促进拓扑数据分析。

图7示出了根据本文描述的一个或多个实施例的包括可以促进拓扑特征分类的一个或多个量子计算组件和经典计算组件的示例非限制性系统的框图。

图8A示出了根据本文描述的一个或多个实施例的可以描绘概率分布的示例非限制性图表的图,该概率分布可以被生成以促进一个或多个贝蒂数的推断。

图8B示出了根据本文描述的一个或多个实施例的可以描绘概率分布的示例非限制性图表的图,该概率分布可以被生成以促进一个或多个贝蒂数的推断。

图9示出了根据本文描述的一个或多个实施例的示例非限制性方法的流程图,该方法可以利用量子计算技术和经典计算技术两者的混合方案来促进拓扑数据分析。

图10示出了根据本文描述的一个或多个实施例的示例非限制性方法的流程图,该方法可以利用量子计算技术和经典计算技术两者的混合方案来促进拓扑数据分析。

图11描绘了根据本文描述的一个或多个实施例的云计算环境。

图12描绘了根据本文描述的一个或多个实施例的抽象模型层。

图13示出了其中可以促进本文描述的一个或多个实施例的示例非限制性操作环境的框图。

具体实施方式

以下详细描述仅是说明性的并且不旨在限制实施例和/或实施例的应用或用途。此外,没有意图被在前面的背景技术或概述部分中或在具体实施方式部分中呈现的任何表达或暗示的信息所约束。

现在参考附图来描述一个或多个实施例,其中,贯穿全文,相同的附图标记用于指代相同的元件。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对一个或多个实施例的更透彻的理解。然而,显而易见的是,在不同情况下,可以在没有这些具体细节的情况下实践一个或多个实施例。

考虑到拓扑数据分析的常规实现方式的问题,可以实施本公开以使用经典计算技术和量子计算技术的混合以贝蒂数的基于先验知识的推断的形式产生对这些问题中的一个或多个的解决方案。有利地,结合先验知识可以克服关于量子计算的维度的一个或多个缺点。另外,经典计算技术的结合可以减轻与常规量子计算技术相关联的容错的一个或多个挑战。此外,量子计算技术的使用可以促进复杂数据集的分析,这些复杂数据集包括关于应用的数据集,这些应用诸如为:推荐系统、中微子检测、分析从大型强子对撞机(“LHC”)收集的数据、化学化合物再利用、化学分析、它们的组合和/或类似物。

本发明的各个实施例可以涉及促进高效、有效和自主(例如,没有直接的人类指导)的拓扑分类的计算机处理系统、计算机实现的方法、装置和/或计算机程序产品。例如,一个或多个实施例可以通过在经典计算技术和量子计算技术的混合中结合先验知识来推断一个或多个贝蒂数。例如,一个或多个量子计算组件可以将一个或多个特征值编码到量子态的相位中以便于概率分布的确定。此外,一个或多个经典计算组件可结合概率分布的知识以经由条件概率(例如,诸如贝叶斯学习算法的实现)来推断一个或多个贝蒂数。

所述计算机处理系统、计算机实现的方法、装置和/或计算机程序产品采用硬件和/或软件来解决本质上是高度技术性的(例如,拓扑分类)、不是抽象的并且不能作为人的一组精神动作来执行的问题。例如,在此描述的不同实施例可以考虑一个或多个机器学习任务和/或可以实施量子计算算法来促进复杂数据的分析。

图1示出了可使用经典和量子计算技术的混合来促进复杂数据集的拓扑分类的示例非限制性系统100的框图。为了简短起见,省略了对在本文中描述的其他实施例中采用的类似元件的重复描述。本发明的各实施例中的系统(例如,系统100等)、装置或过程的各方面可构成在一个或多个机器内实施(例如,在与一个或多个机器相关联的一个或多个计算机可读介质中实施)的一个或多个机器可执行组件。这样的组件在由一个或多个机器(例如,计算机、计算设备、虚拟机等)执行时可使得机器执行所描述的操作。

如图1所示,系统100可以包括一个或多个服务器102、一个或多个网络104和/或一个或多个输入设备106。服务器102可以包括量子计算组件108。量子计算组件108可以进一步包括通信组件110和/或子采样组件112。同样,服务器102可以包括至少一个存储器116或者以其他方式与其相关联。服务器102可以进一步包括系统总线118,该系统总线可以耦接到不同的组件,例如但不限于量子计算组件108和相关联的组件、存储器116和/或处理器120。虽然在图1中示出了服务器102,但是在其他实施例中,不同类型的多个设备可以与图1中所示的特征相关联或包括图1中所示的特征。此外,服务器102可经由一个或多个网络104与一个或多个云计算环境通信。

一个或多个网络104可包括有线和无线网络,包括但不限于蜂窝网络、广域网(WAN)(例如,互联网)或局域网(LAN)。例如,服务器102可以使用几乎任何期望的有线或无线技术来与一个或多个输入设备106通信(并且反之亦然),包括例如但不限于:蜂窝、WAN、无线保真(Wi-Fi)、Wi-Max、WLAN、蓝牙技术、它们的组合和/或类似物。此外,尽管在所示的实施例中,量子计算组件108可以被设置在一个或多个服务器102上,但是应当理解的是,系统100的架构并不受此限制。例如,量子计算组件108或量子计算组件108的一个或多个组件可以位于另一个计算机设备上,诸如另一个服务器设备、客户端设备等上。

一个或多个输入设备106可包括一个或多个计算机化设备,其可包括但不限于:个人计算机、台式计算机、膝上型计算机、蜂窝电话(例如,智能电话)、计算机化平板计算机(例如,包括处理器)、智能手表、键盘、触摸屏、鼠标、它们的组合和/或类似物。系统100的用户可以利用一个或多个输入设备106将数据输入到系统100中,由此与服务器102共享(例如,经由直接连接和/或经由一个或多个网络104)所述数据。例如,一个或多个输入设备106可将数据发送到通信组件110(例如,经由直接连接和/或经由一个或多个网络104)。另外,一个或多个输入设备106可以包括一个或多个显示器,该一个或多个显示器可以向用户呈现由系统100生成的一个或多个输出。例如,该一个或多个显示器可以包括但不限于:阴极管显示器(“CRT”)、发光二极管显示器(“LED”)、电致发光显示器(“ELD”)、等离子体显示面板(“PDP”)、液晶显示器(“LCD”)、有机发光二极管显示器(“OLED”)、它们的组合和/或类似物。

系统100的用户可以利用一个或多个输入设备106和/或一个或多个网络104将一个或多个设置和/或命令输入到系统100中。例如,在本文所描述的各实施例中,系统100的用户可以经由一个或多个输入设备106来操作和/或操纵服务器102和/或相关联组件。另外,系统100的用户可以利用一个或多个输入设备106来显示由服务器102和/或相关联的组件生成的一个或多个输出(例如,显示、数据、可视化等)。在各实施例中,系统100的用户可利用一个或多个输入设备106和/或一个或多个网络104来向服务器102提供一个或多个复杂数据集。如在此使用的,术语“复杂数据集”可以指包括用于主题数据集中的底层模式的高丰富度特征的一个或多个数据集。例如,一个或多个复杂数据集可包括可由非线性模式表征的数据。复杂数据集本质上可以是通用的(例如,不绑定于特定应用)或根据特定上下文来制定。此外,在一个或多个实施例中,一个或多个输入设备106可以被包括在云计算环境内和/或可操作地耦接到云计算环境。云计算技术可被用来收集和/或分析各种各样的复杂数据集。

量子计算组件108可以分析由一个或多个输入设备106共享的一个或多个复杂数据集,以促进拓扑分类。例如,通信组件110可以从一个或多个输入设备106(例如,经由直接电连接和/或通过一个或多个网络104)接收数据(例如,复杂数据集),并且与量子计算组件108的不同的相关联的组件共享该数据。

子样本组件112可以选择性地对由复杂数据集(例如,经由一个或多个输入设备106输入到系统100中)表征的一个或多个对象进行采样,以生成一个或多个子样本对象。子样本组件112可以通过由子样本组件112的选择性采样来减少最初由量子计算组件108分析的数据的大小。可由子样本组件112执行的示例选择性采样技术可包括但不限于:随机网格选择、随机分散选择、点云选择、蒙特卡罗选择、提升选择、它们的组合和/或类似物。例如,子样本组件112可经由一个或多个点云选择性地对复杂数据集进行采样以生成一个或多个子样本对象。

图2A示出了根据本文描述的一个或多个实施例的可以描绘示例性对象202的示例非限制性图表200的图,该示例性对象202可以由一个或多个量子计算组件108分析。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。示例性对象202可以由经由一个或多个输入设备106输入到系统100中的一个或多个数据集(例如,复杂数据集)来表征。例如,图表200中所示的示例性对象202可以是数字三。

图2B示出了可以描绘由一个或多个子样本组件112基于图表200中所示的示例性对象202生成的示例性子样本对象206的示例性非限制性图表204的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。例如,一个或多个子样本组件112可以选择性地对示例性对象202(例如,由诸如复杂数据集的一个或多个数据集表征)进行采样,以生成一个或多个示例性子样本对象206(例如,如图2B所示)。例如,一个或多个子样本组件112可经由一个或多个点云技术生成图表204中所示的示例性子样本对象206。

图3示出了根据本文描述的一个或多个实施例的还包括同调组件302的示例非限制性系统100的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。一个或多个同调组件302可以使用一个或多个持续同调算法对由一个或多个子样本组件112生成的一个或多个子样本对象进行表征以生成量子叠加态。

例如,同调组件302可以利用一个或多个持续同调算法来辨别一个或多个子样本对象(例如,示例性子样本对象206)的一个或多个局部特征(例如,簇和/或孔)。例如,同调组件302可以生成多个单纯形以描画从最初分析的对象(例如,示例性对象202)选择性采样的点之间的连通性。一个或多个同调组件302可以基于定义的距离从共享连通性的一个或多个单纯复形建立一个或多个单纯形构造。此外,同调组件302可以生成一个或多个量子叠加态以促进在量子电路上的编码。

在一个或多个实施例中,同调组件302可以基于以下呈现的等式1生成一个或多个量子叠加态(“ρ”)。

其中“S

图4示出了根据本文描述的一个或多个实施例的可由一个或多个同调组件302产生的示例非限制性单纯形构造400的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。图4中描绘的示例性单纯形构造400可以基于图2B中描绘的示例性子样本对象206由一个或多个同调组件302生成。如图4所示,一个或多个同调组件302可以通过多条互连线确定选择性采样(例如,经由一个或多个子样本组件112选择性采样)的数据点之间的连通性。此外,基于子样本对象(例如,示例性子样本对象206)的所确定的连通性,一个或多个同调组件302可以开始辨别一个或多个拓扑特征(例如,组件、簇、孔和/或空白)。

图5示出了根据本文描述的一个或多个实施例的进一步包括矩阵组件502的示例非限制性系统100的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。一个或多个矩阵组件502可基于由一个或多个同调组件302生成的量子叠加态,生成一个或多个拉普拉斯矩阵作为量子对象。

例如,一个或多个矩阵组件502可以生成一个或多个拉普拉斯矩阵作为量子图拉普拉斯算子,其可以将一个或多个特征值编码到量子态的一个或多个相位中。一个或多个特征值可以与一个或多个同调组件302所辨别的一个或多个拓扑特征相关和/或以其他方式描述该一个或多个拓扑特征。在各实施例中,一个或多个特征值可以表征一般拓扑特征(例如,所述一个或多个特征值不需要特定于特定拓扑特征)。由此,一个或多个矩阵组件502可以生成一个或多个拉普拉斯矩阵,所述拉普拉斯矩阵包括与通过由一个或多个同调组件302建立的数据连通性辨别的拓扑特征相关的特征值。此外,一个或多个矩阵组件502可以通过使用可以将期望值的绝对值投影到量子态的相位上的量子门来将特征值编码到量子态的一个或多个相位中。

图6示出了根据本文所描述的一个或多个实施例的可以促进由一个或多个矩阵组件502执行的量子编码的执行的示例非限制性量子电路600的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。

如图6所示,示例性量子电路600可以包括一个或多个第一量子态602(例如,由

此外,示例性量子电路600可以包括位于一个或多个第一量子态602上的一个或多个第二量子门608。该一个或多个第二量子门608可以促进在此关于该一个或多个矩阵分量502所描述的量子编码。例如,一个或多个第二量子门608可以促进将一个或多个特征值编码到一个或多个第一量子态602上的一个或多个相位中。在一个或多个实施例中,一个或多个第二量子门608不限于特定量子门类型;相反,本领域的普通技术人员将认识到,可应用的量子门的类型可以取决于主题分析和/或电路配置。

如图6所示,可以在由一个或多个第二量子门608促进的量子编码之后测量一个或多个辅助态604。在图6中还示出,可以通过经典计算装置来执行一个或多个辅助态604的测量。例如,示例性量子电路600通过描绘从测量指示延伸的两条线来描绘所描述的到经典计算的转换。由此,可以实现示例性量子电路600的经典计算测量。示例性量子电路600的重复操作和/或测量可以使得能够生成一个或多个编码的特征值的一个或多个概率分布(例如,如图6中所示的式子所描绘的,其中“E”可以表示对量子态的经典计算测量的结果)。

图7示出了根据本文描述的一个或多个实施例的进一步包括一个或多个经典计算组件702的示例非限制性系统100的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。在各实施例中,一个或多个量子计算组件108和/或一个或多个经典计算组件702可以经由直接电连接和/或经由一个或多个网络104可操作地耦接。例如,在一个或多个实施例中,该一个或多个经典计算组件702可以经由一个或多个云计算环境操作性地耦接到该一个或多个量子计算组件108。另外,在各实施例中,该一个或多个经典计算组件702可以包括一个或多个子样本组件112(例如,在此描述的选择性采样可以通过量子和/或经典计算技术来执行)。

一个或多个经典计算组件702可以包括测量组件704、采样组件706和/或贝叶斯组件708。一个或多个测量组件704可以使用一种或多种经典计算方法来测量量子计算组件108的一个或多个辅助态604。例如,测量组件704可以根据以下呈现的等式2来测量一个或多个辅助态604。

其中“i”可以表示复值(例如,

一个或多个采样组件706可以使用一个或多个采样算法来分析由一个或多个测量组件704生成的一个或多个概率分布,以更新一个或多个先验知识分布。示例采样算法可以包括但不限于:随机网格选择、随机分散选择、点云选择、蒙特卡罗选择、提升选择、它们的组合和/或类似物。例如,一个或多个先验知识分布可表征由一个或多个测量组件704测量的一个或多个辅助态604的先前测量。本领域的普通技术人员将容易认识到,在此描述的该一个或多个分析可以适应各种各样的一般先验知识分布。

一个或多个贝叶斯组件708可基于一个或多个先验知识分布和一个或多个概率分布来生成一个或多个贝叶斯学习算法。

此外,一个或多个贝叶斯组件708可以使用所述一个或多个贝叶斯学习算法来推断一个或多个贝蒂数。该一个或多个贝蒂数可以与由一个或多个量子计算组件108辨别和/或编码的一个或多个拓扑特征有关。下面的等式3可以表征示例性贝叶斯学习算法,该算法可以由一个或多个贝叶斯组件708生成和/或用于推断一个或多个贝蒂数。

其中,

由此,一个或多个经典计算组件702可以将先验知识结合到推断一个或多个贝蒂数中,该一个或多个贝蒂数可以经由条件概率描述经受系统100分析的对象(例如,示例性对象202)的拓扑特征。此外,一个或多个经典计算组件702可以与一个或多个量子计算组件108共享一个或多个推断的贝蒂数,以在由一个或多个量子计算组件108和它们的关联组件执行的后续分析迭代中进一步细化一个或多个持续同调算法。由此,在反馈回路中,由一个或多个量子计算组件108实现的计算可以形成由一个或多个经典计算组件702实现的一个或多个计算的基础,反之亦然。该反馈回路可重复迭代,直到达到关于所推断的贝蒂数的收敛和/或达到由系统100的用户(例如,经由一个或多个输入设备106)定义的次数。由此,系统100可以通过量子计算和经典计算的混合对由一个或多个复杂数据集表征的对象的不同拓扑特征进行分类,这可以结合先验知识来细化一个或多个分析过程。

图8A示出了根据本文描述的一个或多个实施例的可描绘可由一个或多个经典计算组件702执行的贝蒂数推断的示例非限制性图表800的图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。图表800可由一个或多个经典计算组件702基于图4所示的示例性单纯形构造400生成。如图8所示,“b

图8B示出了根据本文描述的一个或多个实施例的可描绘可由一个或多个经典计算组件702执行的另一贝蒂数推断的示例非限制性图表802的示图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。图表802也可由一个或多个经典计算组件702基于图4所示的示例性单纯形构造400生成。如图8所示,“b

图9示出了根据本文描述的一个或多个实施例的可使用量子和经典计算技术的混合来促进复杂数据集的一个或多个拓扑分类的示例非限制性方法900的流程图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。

在902处,方法900可包括由操作地耦接到一个或多个处理器120的系统100将一个或多个拉普拉斯矩阵的一个或多个特征值编码到量子电路(例如,示例性量子电路600)的量子态(例如,一个或多个第一量子态602)上的一个或多个相位中。例如,可以根据在此描述的一个或多个量子计算组件108的不同特征来执行所述编码。例如,902处的编码可包括:选择性地对对象进行采样,经由一个或多个持续同调算法来表征子对象,构建一个或多个单纯形构造,和/或生成一个或多个拉普拉斯矩阵。

在904处,方法900可以包括由系统100通过测量量子电路(例如,示例性量子电路600)的一个或多个辅助态(例如,示例性辅助态604)使用一个或多个贝叶斯学习算法来推断一个或多个贝蒂数。例如,可根据本文所述的一个或多个经典计算组件702的不同特征来执行所述推断。例如,904处的推断可以包括:测量一个或多个辅助态,生成一个或多个概率分布,生成和/或更新一个或多个先验知识分布,和/或使用合并了先验知识的条件概率技术(例如,一个或多个贝叶斯学习算法)来推断所述一个或多个贝蒂数。

图10示出了根据本文描述的一个或多个实施例的示例非限制性方法1000的流程图,该方法可以利用量子和经典计算技术的混合来促进复杂数据集的一个或多个拓扑分类。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。

在1002处,方法1000可以包括由操作地耦接到一个或多个处理器120的系统100通过选择性地对一个或多个对象进行采样来生成一个或多个子样本对象。例如,可以根据在此描述的一个或多个子样本组件112的不同特征来执行生成所述一个或多个子样本对象。例如,可使用一个或多个点云来执行1002处的生成。

在1004处,方法1000可以包括由系统100使用一个或多个持续同调算法来表征所述一个或多个子样本对象,以生成一个或多个量子叠加态。例如,可以根据在此描述的一个或多个同调组件302的不同特征来表征该一个或多个子样本对象。例如,在1004处的表征可以包括生成一个或多个单纯形构造以辨别所述一个或多个子样本对象的连通性。

在1006处,方法1000可包括由系统100基于所述一个或多个量子叠加态生成一个或多个拉普拉斯矩阵作为一个或多个量子对象。例如,可根据本文描述的一个或多个矩阵组件502的不同特征来执行生成所述一个或多个拉普拉斯矩阵。例如,所述一个或多个拉普拉斯矩阵可以包括与在1004处的表征期间辨别的一个或多个拓扑特征有关的一个或多个特征值。

在1008处,方法1000可包括由系统100将所述一个或多个拉普拉斯矩阵的一个或多个特征值编码到一个或多个量子电路的一个或多个量子态上的一个或多个相位中。例如,可以根据一个或多个量子计算组件108的不同特征(例如,经由一个或多个矩阵组件502)来执行对所述一个或多个特征值进行编码。在各实施例中,量子电路可以包括一个或多个辅助态,其可以是用一个或多个特征值编码的一个或多个量子态的乘积态。

在1010处,方法1000可以包括由系统100重复地测量该量子电路的所述一个或多个辅助态。例如,可根据本文所述的一个或多个测量组件704的不同特征来执行所述测量。1010处的重复测量可以提供描述该主题量子电路的一个或多个经典计算。例如,在1012处,方法1000可包括由系统100基于在1010处的重复测量生成一个或多个概率分布。

在1014处,方法1000可包括由系统100使用一个或多个蒙特卡罗采样算法来分析所述一个或多个概率分布以更新一个或多个先验知识分布。例如,可以根据在此描述的一个或多个采样组件706的不同特征来执行所述分析。在一个或多个实施例中,蒙特卡罗采样算法可以促进细化所述一个或多个先验知识分布(例如,经由降噪)。

在1016处,方法1000可包括由系统100基于所述一个或多个先验知识分布和/或所述一个或多个概率分布来生成一个或多个贝叶斯学习算法。例如,可以根据本文中描述的一个或多个贝叶斯组件708的不同特征来执行生成所述一个或多个贝叶斯学习算法。例如,在1016处生成的一个或多个贝叶斯学习算法可由等式3来表征。

在1018处,方法1000可包括由系统100使用在1016处生成的一个或多个贝叶斯学习算法来推断一个或多个贝蒂数。例如,可根据本文所述的一个或多个经典计算组件702的不同特征(例如,经由一个或多个贝叶斯组件708)来执行推断所述一个或多个贝蒂数。由此,所述一个或多个贝蒂数的推断可以基于一个或多个量子电路的一个或多个辅助态的一个或多个测量和/或可以结合一个或多个先验知识分布以提高准确度和/或效率。

应当理解,尽管本公开包括关于云计算的详细描述,但是本文所引用的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其他类型的计算环境来实现。

云计算是一种服务递送模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池的方便、按需的网络访问,所述可配置计算资源可以用最小的管理努力或与服务提供者的交互来快速配置和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。

特性如下:

按需自助服务:云消费者可按需自动地单方面供应计算能力,诸如服务器时间和网络存储,而无需与服务的提供者的人类交互。

广泛的网络接入:能力在网络上是可用的并且通过标准机制来访问,所述标准机制促进由异构的瘦或厚客户端平台(例如,移动电话、膝上型计算机和PDA)的使用。

资源池化:提供者的计算资源被池化以使用多租户模型服务于多个消费者,其中不同的物理和虚拟资源根据需要被动态地指派和重新指派。存在位置独立性的意义,因为消费者通常对所提供资源的确切位置不具有控制或知识,但可能能够在较高抽象层级(例如,国家、州或数据中心)处指定位置。

快速弹性:可以快速且弹性地提供能力(在一些情况下,自动地)以快速缩小并且快速释放以快速放大。对于消费者,可用于供应的能力通常显得不受限制,并且可以在任何时间以任何数量购买。

测量的服务:云系统通过利用适于服务类型(例如,存储、处理、带宽和活动用户账户)的某种抽象级别的计量能力来自动控制和优化资源使用。可监视、控制和报告资源使用,从而为所利用的服务的提供者和消费者两者提供透明度。

业务模型如下:

软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。应用可通过诸如web浏览器(例如,基于web的电子邮件)的瘦客户端接口从不同客户端设备访问。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至个体应用能力的底层云基础结构,可能的例外是有限的用户特定的应用配置设置。

平台即服务(PaaS):向消费者提供的能力是在云基础结构上部署消费者创建或获取的应用,所述应用是使用提供者所支持的编程语言和工具来创建的。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础结构,但是具有对所部署的应用以及可能的应用托管环境配置的控制。

基础设施即服务(IaaS):提供给消费者的能力是提供消费者能够部署和运行可包括操作系统和应用的任意软件的处理、存储、网络和其他基本计算资源。消费者不管理或控制底层云基础结构,而是具有对操作系统、存储、所部署的应用的控制,以及对所选联网组件(例如,主机防火墙)的可能有限的控制。

部署模型如下:

私有云:云基础结构仅为组织操作。它可由组织或第三方管理,并且可存在于场所内或场所外。

社区云:云基础结构由若干组织共享并且支持具有共享的关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可由组织或第三方管理,并且可存在于场所内或场所外。

公共云:使云基础结构对公众或大型产业组可用并且由销售云服务的组织拥有。

混合云:云基础架构是两个或更多个云(私有、社区或公共的)的组成,这些云保持唯一实体但通过标准化或专有技术来绑定在一起,这些技术实现数据和应用便携性(例如,用于云之间的负载平衡的云突发)。

云计算环境是面向服务的,关注于状态、低耦接、模块性和语义互操作性。云计算的核心是包括互连节点网络的基础设施。

现在参见图11,描绘了说明性云计算环境1100。如图所示,云计算环境1100包括一个或多个云计算节点1102,云消费者使用的本地计算设备(诸如个人数字助理(PDA)或蜂窝电话1104、台式计算机1106、膝上型计算机1108和/或汽车计算机系统1110)可与云计算节点1102通信。节点1102可彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如上文描述的私有云、社区云、公共云或混合云或其组合。这允许云计算环境1100提供基础结构、平台和/或软件作为云消费者不需要维护本地计算设备上的资源的服务。应当理解,图11中示出的计算设备1104-1110的类型仅旨在是说明性的,并且计算节点1102和云计算环境1100可通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备进行通信。

现在参见图12,示出了由云计算环境1100(图11)提供的一组功能抽象层。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。应预先理解,图12中所示的组件、层和功能旨在仅是说明性的,并且本发明的实施例不限于此。如所描绘的,提供了以下层和相应的功能。

硬件和软件层1202包括硬件和软件组件。硬件组件的示例包括:主机1204;基于RISC(精简指令集计算机)架构的服务器1206;服务器1208;刀片服务器1210;存储设备1212;以及网络和联网组件1214。在一些实施例中,软件组件包括网络应用服务器软件1216和数据库软件1218。

虚拟化层1220提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器1222;虚拟存储器1224;虚拟网络1226,包括虚拟专用网络;虚拟应用和操作系统1228;以及虚拟客户端1230。

在一个示例中,管理层1232可提供下文所描述的功能。资源供应1234提供用于执行云计算环境内的任务的计算资源和其他资源的动态获取。计量和定价1236在云计算环境内利用资源时提供成本跟踪,并针对这些资源的消费进行计费或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及对数据和其他资源的保护。用户门户1238为消费者和系统管理员提供对云计算环境的访问。服务级别管理1240提供云计算资源分配和管理,使得满足所需的服务级别。服务水平协议(SLA)计划和履行1242提供云计算资源的预安排和采购,根据SLA预期该云计算资源的未来要求。

工作负载层1244提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:映射和导航1246;软件开发和生命周期管理1248;虚拟教室教育交付1250;数据分析处理1252;事务处理1254;以及拓扑分类1256。本发明的各实施例可以利用参见图11和12描述的云计算环境来在一个或多个组件之间(例如,在一个或多个量子计算组件108、经典计算组件702和/或输入设备106之间)进行通信,和/或促进对来自复杂数据集的贝蒂数的先验知识推断。

本发明可以是任何可能的集成技术细节水平的系统、方法和/或计算机程序产品。所述计算机程序产品可包含上面具有计算机可读程序指令的计算机可读存储介质(或介质),所述计算机可读程序指令用于致使处理器执行本发明的方面。计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体例子的非穷举列表包括以下:便携式计算机盘,硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存),静态随机存取存储器(SRAM)、便携式致密盘只读存储器(CD-ROM),数字通用盘(DVD)、记忆棒、软盘、机械编码设备(诸如具有记录在其上的指令的凹槽中的凸起结构或穿孔卡片),以及上述的任意合适的组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤缆的光脉冲)、或通过导线传输的电信号。

本文所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编指令,指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,集成电路的配置数据,或以一种或多种编程语言的任何组合编写的源代码或目标代码,包括面向对象的Smalltalk、C++等编程语言,以及过程式编程语言,例如“C”编程语言或类似的编程语言。计算机可读程序指令可完全在用户”的计算机上执行、部分在用户”的计算机上执行、作为独立软件包执行、部分在用户”的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。

本文中参考根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图说明和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。

这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其他可编程数据处理装置,以产生机器,其通过计算机或其他可编程数据处理装置的处理器执行,创建用于实现在流程图和/或方框图的一个或多个方框中指定的功能/动作的装置。这些计算机可读程序指令还可存储在可指导计算机的计算机可读存储介质中,可编程数据处理装置,和/或以特定方式起作用的其他设备,使得具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各方面的指令。

计算机可读程序指令还可以加载到计算机、其他可编程数据处理装置上,或使得在计算机上执行一系列操作步骤的其他装置,其他可编程装置或其他设备,以产生计算机实现的过程,使得在计算机上执行的指令,其他可编程装置或其他设备实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图图示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每个方框可以代表模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替代实施例中,框中所标注的功能可以不以图中所标注的次序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,所述基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。

为了为所公开的主题的各方面提供上下文,图13以及以下讨论旨在提供对其中可实现所公开的主题的各方面的合适环境的一般描述。图13示出了可以促进本文描述的一个或多个实施例的示例非限制性操作环境的框图。为了简短起见,省略对在本文中描述的其他实施例中采用的类似元件的重复描述。参见图13,用于实现本公开的各个方面的合适的操作环境1300可包括计算机1312。计算机1312还可以包括处理单元1314、系统存储器1316和系统总线1318。系统总线1318可以可操作地将包括但不限于系统存储器1316的系统组件耦接到处理单元1314。处理单元1314可以是各种可用处理器中的任何一种。双微处理器和其他多处理器架构也可以用作处理单元1314。系统总线1318可以是若干类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线或外部总线、和/或使用各种可用总线架构的局部总线,所述总线架构包括但不限于工业标准架构(ISA)、微通道架构(MSA)、扩展ISA(EISA)、智能驱动电子装置(IDE)、VESA局部总线(VLB)、外围组件互连(PCI)、卡总线、通用串行总线(USB)、高级图形端口(AGP)、火线和小型计算机系统接口(SCSI)。系统存储器1316还可以包括易失性存储器1320和非易失性存储器1322。包含诸如在启动期间在计算机1312内的元件之间传输信息的基本例程的基本输入/输出系统(BIOS)可以被存储在非易失性存储器1322中。作为说明而非限制,非易失性存储器1322可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器或非易失性随机存取存储器(RAM)(例如,铁电RAM(FeRAM))。易失性存储器1320还可以包括充当外部缓冲存储器的随机存取存储器(RAM)。作为说明而非限制,RAM以许多形式可用,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、直接Rambus RAM(DRRAM)、直接Rambus动态RAM(DRDRAM)和Rambus动态RAM。

计算机1312还可以包括可移除/不可移除、易失性/非易失性计算机存储介质。图13示出了例如盘存储1324。盘存储1324还可以包括但不限于像磁盘驱动器、软盘驱动器、磁带驱动器、Jaz驱动器、Zip驱动器、LS-100驱动器、闪存卡、或记忆棒的装置。盘存储1324还可包括与其他存储介质分开或组合的存储介质,包括但不限于诸如致密盘ROM设备(CD-ROM)、CD可记录驱动器(CD-R驱动器)、CD可重写驱动器(CD-RW驱动器)或数字通用盘ROM驱动器(DVD-ROM)之类的光盘驱动器。为了便于将盘存储1324连接到系统总线1318,可以使用可移除或不可移除接口,诸如接口1326。图13还描绘了可以充当用户和在适当的操作环境1300中描述的基本计算机资源之间的中介的软件。这样的软件还可以包括例如操作系统1328。可以存储在盘存储1324上的操作系统1328用于控制和分配计算机1312的资源。系统应用1330可以利用操作系统1328通过程序模块1332和例如存储在系统存储器1316中或盘存储1324上的程序数据1334对资源的管理。应当理解,本公开可以用不同操作系统或操作系统的组合来实现。用户通过一个或多个输入设备1336将命令或信息输入到计算机1312中。输入设备1336可以包括但不限于诸如鼠标、轨迹球、指示笔、触摸板、键盘、麦克风、操纵杆、游戏板、卫星碟、扫描仪、TV调谐器卡、数码相机、数码摄像机、web相机等之类的定点设备。这些和其他输入设备可以经由一个或多个接口端口1338通过系统总线1318连接到处理单元1314。一个或多个接口端口1338可包括例如串行端口、并行端口、游戏端口、和通用串行总线(USB)。一个或多个输出设备1340可以使用与输入设备1336相同类型的端口中的一些端口。由此,例如,USB端口可用于向计算机1312提供输入,并从计算机1312向输出设备1340输出信息。可提供输出适配器1342以说明存在一些需要特殊适配器的输出设备1340,比如监视器、扬声器和打印机以及其他输出设备1340。作为说明而非限制,输出适配器1342可包括提供输出设备1340与系统总线1318之间的连接手段的视频卡和声卡。应当注意,其他设备和/或设备的系统提供输入和输出能力两者,诸如一个或多个远程计算机1344。

计算机1312可使用到一个或多个远程计算机(诸如远程计算机1344)的逻辑连接在联网环境中操作。远程计算机1344可以是计算机、服务器、路由器、网络PC、工作站、基于微处理器的电器、对等设备或其他公共网络节点等,并且通常还可以包括相对于计算机1312描述的许多或所有元件。为了简短起见,仅存储器存储设备1346与远程计算机1344被一起示出。远程计算机1344可以通过网络接口1348在逻辑上连接到计算机1312,然后经由通信连接1350在物理上连接。此外,操作可以分布在多个(本地和远程)系统上。网络接口1348可包含有线和/或无线通信网络,诸如局域网(LAN)、广域网(WAN)、蜂窝网络等。LAN技术包括光纤分布式数据接口(FDDI)、铜线分布式数据接口(CDDI)、以太网、令牌环等。WAN技术包括但不限于点对点链路、电路交换网络(如综合业务数字网(ISDN)及其变型)、分组交换网络和数字用户线(DSL)。一个或多个通信连接1350指的是用于将网络接口1348连接到系统总线1318的硬件/软件。虽然为了说明清楚起见,通信连接1350被示出在计算机1312内部,但是它也可以在计算机1312外部。用于连接到网络接口1348的硬件/软件还可以(仅出于示例性目的)包括内部和外部技术,例如包括常规电话级调制解调器、电缆调制解调器和DSL调制解调器的调制解调器、ISDN适配器和以太网卡。

本发明的实施例可以是处于任何可能的集成技术细节水平的系统、方法、装置和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体的例子的非穷举的列表还可以包括以下:便携式计算机盘,硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存),静态随机存取存储器(SRAM)、便携式致密盘只读存储器(CD-ROM),数字通用盘(DVD)、记忆棒、软盘、机械编码设备(诸如穿孔卡片)或具有记录在其上的指令的凹槽中的凸起结构),以及上述的任意合适的组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤缆的光脉冲)、或通过导线传输的电信号。

本文所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。用于执行本发明的各个方面的操作的计算机可读程序指令可以是汇编指令,指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,集成电路的配置数据,或以一种或多种编程语言的任何组合编写的源代码或目标代码,包括面向对象的Smalltalk、C++等编程语言,以及过程式编程语言,例如“C”编程语言或类似的编程语言。这些计算机可读程序指令可以完全地在用户”的计算机上执行、部分地在用户”的计算机上执行、作为一个独立的软件包执行、部分地在用户”的计算机上部分在远程计算机上执行、或者完全地在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来定制电子电路来执行计算机可读程序指令,以便执行本发明的方面。

本文中参考根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图说明和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其他可编程数据处理装置,以产生机器,其通过计算机或其他可编程数据处理装置的处理器执行,创建用于实现在流程图和/或方框图的一个或多个方框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在能够引导计算机的计算机可读存储介质中,可编程数据处理装置,和/或以特定方式起作用的其他设备,使得具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现在流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。计算机可读程序指令还可以加载到计算机、其他可编程数据处理装置上,或使得在计算机上执行一系列操作动作的其他设备,其他可编程装置或其他设备,以产生计算机实现的过程,使得在计算机上执行的指令,其他可编程装置或其他设备实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图图示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每个方框可以表示模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替代实现方式中,框中所标注的功能可以不以图中所标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,所述基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。

虽然以上已经在运行在一个计算机和/或多个计算机上的计算机程序产品的计算机可执行指令的一般上下文中描述了本主题,但是本领域技术人员将认识到,本公开还可以或可以结合其他程序模块来实现。通常,程序模块包括执行特定任务和/或实现特定抽象数据类型的例程、程序、组件、数据结构等。此外,本领域技术人员将认识到本发明的计算机实现的方法可以用其他计算机系统配置来实践,包括单处理器或多处理器计算机系统、小型计算设备、大型计算机、以及计算机、手持式计算设备(例如,PDA、电话)、基于微处理器的或可编程的消费或工业电子产品等。所示方面还可在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实践。然而,本公开的一些方面(如果不是全部的话)可在独立计算机上实践。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备两者中。

如在本申请中所使用的,术语“组件”、“系统”、“平台”、“接口”等可以指代和/或可以包括计算机相关实体或与具有一个或多个特定功能的操作机器相关的实体。本文公开的实体可以是硬件、硬件和软件的组合、软件或执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。作为说明,在服务器上运行的应用和服务器两者可以是组件。一个或多个组件可以驻留在进程和/或执行线程内,并且组件可以位于一个计算机上和/或分布在两个或更多个计算机之间。在另一实例中,相应组件可从具有存储于其上的不同数据结构的不同计算机可读介质执行。组件可以经由本地和/或远程过程通信,诸如根据具有一个或多个数据分组的信号(例如,来自与本地系统、分布式系统中的另一组件交互和/或跨网络(诸如互联网)经由信号与其他系统交互的一个组件的数据)。作为另一示例,组件可以是具有由电气或电子电路操作的机械组件提供的特定功能的装置,该电气或电子电路由处理器执行的软件或固件应用操作。在这种情况下,处理器可以在装置内部或外部,并且可以执行软件或固件应用的至少一部分。作为又一示例,组件可以是通过没有机械组件的电子组件来提供特定功能的装置,其中电子组件可以包括处理器或用于执行软件或固件的其他装置,该软件或固件至少部分地赋予电子组件的功能。在一方面,组件可经由例如云计算系统内的虚拟机来仿真电子组件。

此外,术语“或”旨在表示包含性的“或”而不是排他性的“或”。也就是说,除非另外指明或从上下文中清楚可见,“X采用A或B”旨在意指任何自然的包含性排列。即,如果X采用A;X采用B;或X采用A和B两者,则在任何前述情况下满足“X采用A或B”。此外,在本说明书和附图中使用的冠词“一个/一种(a)”和“一个/一种(an)”总体上应被解释为意指“一个或多个”,除非另外指明或从上下文中清楚看出是针对单数形式。如在此所使用的,术语“示例”和/或“示例性”用于意指充当示例、实例或说明。为了避免疑问,本文公开的主题不受这样的示例的限制。此外,在此描述为“实例”和/或“示例性”的任何方面或设计不一定被解释为比其他方面或设计优选或有利,也不旨在排除本领域普通技术人员已知的等效示例性结构和技术。

如在本说明书中所采用的,术语“处理器”可以指基本上任何计算处理单元或设备,包括但不限于单核处理器;具有软件多线程执行能力的单处理器;多核处理器;具有软件多线程执行能力的多核处理器;具有硬件多线程技术的多核处理器;并行平台;以及具有分布式共享存储器的并行平台。另外,处理器可指代集成电路、专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑控制器(PLC)、复杂可编程逻辑装置(CPLD)、离散门或晶体管逻辑、离散硬件组件,或经设计以执行本文中所描述的功能的其任何组合。此外,处理器可以利用纳米级架构,诸如但不限于基于分子和量子点的晶体管、开关和栅极,以便优化空间使用或增强用户设备的性能。处理器还可以被实现为计算处理单元的组合。在本披露中,诸如“存储”、“存储”、“数据存储”、“数据存储”、“数据库”等术语以及与组件的操作和功能相关的基本上任何其他信息存储组件被用于指“存储器组件”、“体现在“存储器”中的实体、或包括存储器的组件。应了解,本文中所描述的存储器和/或存储器组件可为易失性存储器或非易失性存储器,或可包含易失性存储器和非易失性存储器两者。作为说明而非限制,非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEPROM)、闪存或非易失性随机存取存储器(RAM)(例如,铁电RAM(FeRAM))。易失性存储器可以包括RAM,该RAM可以例如充当外部高速缓存存储器。作为说明而非限制,RAM以许多形式可用,诸如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双倍数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、直接Rambus RAM(DRRAM)、直接Rambus动态RAM(DRDRAM)和Rambus动态RAM(RDRAM)。另外,本文所公开的系统或计算机实现的方法的存储器组件旨在包括但不限于包括这些和任何其他合适类型的存储器。

上述内容仅包括系统、计算机程序产品和计算机实现的方法的示例。当然,出于描述本公开的目的,不可能描述组件、产品和/或计算机实现的方法的每个可想到的组合,但是本领域普通技术人员可以认识到本公开的许多进一步的组合和排列是可能的。此外,就在详细说明、权利要求、附件和附图中使用术语“包括”、“具有”、“拥有”等而言,此类术语旨在以与术语“包含”类似的方式是包括性的,因为“包含”在权利要求中用作过渡词时被解释。已出于说明的目的呈现了不同实施例的描述,但所述描述并非意在穷举或限于所揭示的实施例。在不脱离所描述的实施例的范围的情况下,许多修改和变化对本领域的普通技术人员而言将是显而易见的。选择在此使用的术语以最佳地解释实施例的原理、实际应用或在市场上找到的技术上的技术改进,或使得本领域普通技术人员能够理解在此公开的实施例。

相关技术
  • 基于先验知识的拓扑特征分类
  • 一种基于先验知识和网络拓扑特性的关键蛋白预测方法
技术分类

06120113236157