- 量子的叠加态
量子的神秘之处首先体现在它的“状态”。在宏观世界里,任何一个物体在某一时刻有着确定的状态和确定的位置。但在微观世界里,量子却可以同时处于多种状态。叠加态是“0”态和“1”态的任意线性叠加,它以一定的概率同时存在于“0”态和“1”态之间。量子不像半导体只能记录0与1,可以同时表示多种状态,如果把半导体比成单一乐器,量子计算机就像交响乐团,一次运算可以处理多种不同状况。
2.量子纠缠
根据量子力学理论,如果两个量子之间形成了“纠缠态”,那么无论相隔多远,当一个量子的状态发生变化,另一个量子也会超光速“瞬间”发生如同心灵感应的变化。也就是说,当其中一颗被操作(例如量子测量)而状态发生变化,另一颗也会即刻发生相应的状态变化。
量子比特就是利用了这些性质,实现了天然的并行计算。我们可以通过特定技术对量子态进行一次变换,即可对所有状态同时操作,且只消耗 1 单位时间。试想一下,一个64位的量子比特可以同时表示0~264-1的所有整数,那我们做一次kx的乘法操作,就相当于同时计算了k0、k1、…、k(264-1)!
也就是说,当对海量数据进行处理时,传统计算机输入一次运算一次,而量子计算这种并行处理方式的速率足以让传统计算机望尘莫及。尤其是在多种并行运算或者多种操作的情况下,随着处理数据量的增加,量子计算机比传统计算机的优势会实现指数级的增长。
- 量子门
目前的电子计算机还有个热耗散的问题,根据兰道尔原理,信息的损失将导致发热,而经典逻辑门运算都是不可逆计算,会带来信息损失进而发热(虽然很少)。量子门是操作量子比特的基本单元,量子门是可逆的,信息没有损失,因而量子计算机可以自循环而没有热耗散。
- 量子测量
跟经典计算机的另一个区别,就是量子比特始终处在叠加态之上,只有经过测量,你才可能获得自己想要的结果。但是,量子力学里面有个基本的定理叫做量子不可克隆定理,无法对一个未知量子态精确复制,使得每个复制态与初始量子态完全相同。所以只能多次执行,多次测量。还是用前面的例子来说明,在执行完kx的操作后,我们同时计算出了k0、k1、…、k(2^64-1)所有这些结果,但我可能只关心其中某一个特定的结果,譬如k100的结果。那我们就需要对量子比特进行若干次测量,每次测量都会得到一个具体的kx的结果,直到我们遇到了x=100的情况,才可以得到k*100的结果。这种反复的计算和测量,看似比经典计算低效。但是考虑到状态空间是非常巨大的,合理的叠加态设计会使得多次计算和测量要远比经典计算更加高效。 量子计算机是在1980年代由费米首次提出的,很快就得到了物理学家和计算机学家的关注。目前,虽然具体的实体设备还处在探索阶段,但基于量子计算原理,人们已经构造了很多的量子算法。这里列举其中最著名的几个:
- Grover算法:
计算机科学家Grover提出一种复杂度为0√N的搜索算法,它是量子计算中非常重要的算法,基于量子门和量子测量原理,与经典的计算比较大的差别表现在量子计算是把所有的数据看作一个整体去做运算,在数据量比较大的情况下这个算法在搜索运算中相较传统算法得到极大提升。并且,无论是在机器学习中还是日常的实际业务领域,搜索都是常用的场景,如果我们能够在相关的硬件上实现Grover算法,很多集成系统都会极大的提升性能。
- Shor算法:
第二个非常重要的算法是在安全领域非常重要的算法。它提出了一种复杂度为0(logN)的质因数分解演算法,可以迅速破解现在的安全体系基础——RSA加密,这本来是需要天文数字的算力,在应用Shor算法后变得异常简单。可以说,Shor算法足以颠覆目前的信息安全体系。
- HHL算法:
该领域在2008年HHL量子算法(以三位创始人Aram Harrow,Avinathan Hassidim和Seth Lloyd命名)出现之后就开始了快速发展。HHL算法解决了涉及多自由度的广泛线性代数问题,解决问题的速度比任何传统超级计算机都要快。并且,由于大部分机器学习都涉及到这些高自由度的(高维)代数问题,一些机器学习研究人员已经转向了HHL的研究潮流。过去几年中,基于HHL的量子机器学习算法在技术文献中不断增多。这个算法开创了整个量子机器学习时代。
- Hamiltonians
- interdisciplinary
- Toffoli
- Shor’s algorithm
- Hilbert space:量子力学中,一个物理系统可以表示为一个复希尔伯特空间,其中的向量是描述系统可能状态的波函数。