大数据的现在 突破 49 个量子比特模拟大关
光环大数据(大数据培训的专业机构), 如今,量子计算的发展来到了一个临界点,开始解决其他更传统的方式无法高效计算甚至无法计算的重要问题。想要跨过这个临界点,我们需要构建、测试和运行能够容纳至少 50 个量子比特的可靠量子计算机。而要释放这方面 ...
测试 Hadoop 计算机 硬件 超级计算 方法
如今,量子计算的发展来到了一个临界点,开始解决其他更传统的方式无法高效计算甚至无法计算的重要问题。想要跨过这个临界点,我们需要构建、测试和运行能够容纳至少 50 个量子比特的可靠量子计算机。
而要释放这方面的潜能,科学和工程领域都需要实现巨大的飞跃。为了实现这种跨越,我们需要采用一些方法来测试量子设备,并对比观察到的设备行为和期望的设备行为,从而随着时间的推移不断优化设备的设计、制造以及运行。尤其是,当测试某量子设备观察到的测量结果是否与执行的量子电路的结果一致时,为了测试任意电路,你需要能够针对这些结果,计算预期的量子振幅(用于描述系统行为的复杂数字)。量子电路可以看成是发送到量子设备以执行计算的指令集(量子门集)。
这个需求带来了一个问题。在约 50 个量子比特级别,现有的量子振幅计算方法要么需要的实际计算过多,要么对内存有着极高的要求(即使现有的超级计算机也无法做到),甚至有时同时对计算和内存有着很高的要求。IBM 研究院今年组建了一支团队,专门研究这个问题,目的在于建造拥有 49 个量子比特及以上规模的短型系统电路(short-depth)。作为该团队的成员之一,我在一个看似毫不相关的情况下受到了重要启发。
将量子门看成硬毛刷量子比特是量子计算中基本的信息单位,就像传统计算领域中的比特一样。一个量子比特可以同时代表 0 和 1 两种不同的状态,而且,事实上它们是以一种加权组合的形式呈现(比如 37% 代表 0,63% 代表 1)。二个量子比特可以同时代表四个值:00、01、10 和 11,还是采用加权组合的形式。同理,三个量子比特可以同时代表 2^3 种状态,即 8 个值:000、001、010、011、100、101、110 和 111。五十个量子比特能同时代表超过千万亿个值,而 100 个量子比特代表的值超过千万亿的二次方。
五十个量子比特能同时代表超过千万亿个值,而 100 个量子比特代表的值超过千万亿的二次方。
在测量量子比特时,它们的量子态会“坍缩”至其中的一个值,而这些值的权重(即量子振幅)决定了观察到这些值的概率。量子计算的巨大前景在于,它有望对呈指数级增长的潜在结果执行并行计算,产生量子态。这种情况下,期望的计算结果拥有较大的振幅,因此,在测量量子比特时,这些结果更有可能被观察到。
我所说的这个看似不相干的时刻,其实就是有一天晚上,我在洗碗的时候,用了一把硬毛刷来清洗高脚杯。我突然发现,如果将应用在指定量子比特上的量子门放到一个栅极电路中来看,这些量子门就成了硬毛刷状,而这些刷毛就是应用到这个量子比特上的纠缠的量子门。从数学上来看,这个布满量子门的“硬毛刷”就好比一个个张量以及刷毛到张量的索引。在数学中,一个张量基本上相当于计算机科学中的 N 维数组。
这个发现很快让我想到了将栅极电路拆解成单个的“硬毛刷”,一个硬毛刷对应一个量子比特,然后计算相应的张量,最后将每个量子比特的张量整合在一起,计算整个电路的量子振幅。第二天上午,我发现了如何只使用 1 GB 内存,拆分由 16 个量子比特组成的集群,从而计算出一个 64 量子比特深度为 10 的电路的振幅。之后,这个思路就像滚雪球一样发展成更常规的方式,也就是将电路拆分成分支电路,分别单独模拟分支电路,然后按照不同的命令将这些分支电路的结果整合在一起,计算出期望的振幅。
第二天上午,我发现了如何只使用 1 GB 内存,拆分由 16 个量子比特组成的集群,从而计算出一个 64 量子比特深度为 10 的电路的振幅。
最终,我们得到了一个计算量子振幅的方法,这要求我们在原有方法的基础上大幅减少内存占用,同时确保针对每个振幅执行的计算量与当前较先进的方法有可比性。通过结合使用张量切片和前面提到的按切片计算电路的输出振幅的方法(而不必一次性计算或者保存所有振幅),我们可以满足减少内存占用方面的要求。
当计算测量结果的振幅时,只有那些对应实际测量结果的切片需要计算。换言之,为了根据测量结果评估量子设备的性能,你不必进行完整的模拟,而且随着量子比特的数量快速增加,也无需耗费额外的计算成本。这是我们的方法的一个重要优势。
但是,如果想要执行完整的模拟,我们的切片方法还有另一个优势,那就是切片能够以并行的方式完全独立地进行计算,这意味着这些切片可以轻松地隔离开来,从而在由松散耦合的高性能计算资源组成的网络中执行分布式计算。这项功能彻底改变了完整模拟的经济效应,让我们能够将不可能变为可能,成功模拟量子电路。
利用超级计算机,模拟 49 和 56 个量子比特电路为了让后面这种可能性变成现实,我们的研究团队联系了劳伦斯利福莫尔国家实验室 (Lawrence Livermore National Laboratory, LLNL)。通过借助 LLNL 的超级计算机和最初由加州大学伯克利分校开发的 Cyclops Tensor Framework 对张量进行操作,我们首先选择了模拟一个 49 量子比特深度为 27 的全随机电路,该电路被视为所谓量子霸权的一个示例。在这个模拟过程中,计算步骤被分成 2^11 个切片,其中每个切片计算 2^38 个振幅,并且需要 4.5 TB 的容量来存储张量值。切片计算在六组处理器(四架处理器为一组)中以并行的方式运转,且每组处理器包含 4,096 个处理节点,共计占用 64 TB 的内存。模拟 49 个量子比特电路一度被认为是不可能的事,因为如果采用以前的方法,需要用到 8 PB 的内存,这超过了现有超级计算机的能力范围。
在接下来的演示中,我们选择了深度为 23 且包含 46 个比特的通用随机电路,而如果使用之前的方法,因为需要 1 EB 的内存,完全无法模拟这种电路。计算步骤被分成 2^191 个切片,其中每个切片计算 2^37 个振幅。但是在这次模拟中,出于演示的目的,我们选择仅计算单个随机所选切片的振幅;需要使用 3 TB 的内容来存储张量值,并在两架处理节点(2,048 个处理节点)上进行计算,总内存为 32 TB。
除了这些演示之外,我们还发现了对包含 49 个量子比特的电路进行分区的各种方法,确保只需 96 GB 的内存即可完成此次模拟,稍稍超出计算需求的两倍。我们还发现了需要 162 GB 内存的分区方法,其中计算需求几乎没有任何增加。因此,我们现在可以在高端服务器的集群上进行这些模拟,而无需使用超级计算机。
模拟的进展将有助于推动量子硬件的进展尽管我们的方法究竟能实现何种程度的计算量尚未确定,但毫无疑问的是,这种进展将有助于我们突破包含 49 个或更多量子比特的短型(short�depth)量子电路模拟方面的局限。实际上,这些方法有助于我们测试和了解物理设备的运行情况,而且还有助于短型算法的开发和调试,用于解决采用量子计算相比传统方法更具优势的问题。
至少对于目前处于开发阶段或图纸设计阶段的量子设备而言,是否能够执行这些模拟的关键在于,如何通过经济性的方式获得计算资源量,而不是能否以物理方式实现这些模拟。举例来说,在我们的 56 量子比特模拟中,之所以未能完成完全模拟,是因为我们在 Vulcan 上的时间分配已超时。毫无疑问,完全的 56 量子比特短型电路模拟现在已经可以实现。同时受孤立计算系统上可用资源所限制的模拟运行时间也完全不是问题。由于切片计算能以并行的方式进行,因此仅需最少量的通信即可分布在松散耦合系统的网络中,进而实现较强的可扩展性,充分利用所有的切片。基于云的量子模拟最终可能还会实现超大量子电路的模拟。
这是否意味着我们就不再需要实际的量子计算机?并非如此。实际的量子计算机必不可少。在特定类型的应用中,我们需要物理量子计算机来执行计算,这些量子计算机要么需要过多内存,要么需要在传统计算机上以经济性的方式实现超强的计算能力。此外,从某种程度上来说,我们将会发现,对于一些特定的应用,量子计算机相比传统计算机更具优势。
这并不是所谓的“量子霸权”概念,而是说量子计算技术已经发展到了“就绪”阶段,使得我们能够充分利用已经上线的量子硬件、软件和工程设计功能。模拟已成为这种“量子就绪”阶段中不可分割的一部分。IBM Q 体验可提供相关的资源,供我们进行学习和试验,而作为 IBM Q 体验的一部分,IBM 可以提供包含 5 个和 16 个量子比特的模拟器和实际硬件。此外我们还可提供量子 SDK,即量子信息软件工具包 (QISKit),可轻松实现电路构建。为了帮助大家了解有关如何入门的更多信息,我们在 github 提供了 Jupyter notebook 示例。
随着设备技术的发展,我们将会迈进一个量子优势时代;在这个时代中,大量的企业、科学家和工程师将能够充分利用量子硬件和量子计算能力,继续解决日益复杂的问题。在这个量子优势时代,无论是新量子算法的研究和开发,还是设备技术本身的发展,都需要借助高级模拟功能。
大数据+时代,大数据培训机构,就选光环大数据!
原创文章,转载请注明出处:光环大数据官网。
大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服!