后摩尔定律时代,如何借助量子计算推进人工智能?

时间:2017-08-30

今年以来,关于量子计算讨论逐渐增多,那么量子计算时代何时到来?Gartner 近期发布了2017年技术成熟度曲线揭示了未来技术趋势,预测这些技术的汇聚会带来有竞争力的商业生态。其中,Gartner认为量子计算将提供前所未有的计算能力,也许在十年之后可能被主流采用。


1.jpg


百分点技术副总裁兼首席架构师刘译璟博士认为,这一轮人工智能的爆发的前提是互联网时代下的大数据高速积累,反过来,数据量的增大,使得人工智能的训练学习过程将变得无比漫长,对计算力的要求随之增强。

但是摩尔定律正在失效,目前的晶体管工艺已达到10nm级别,是头发直径的1/8000,可以说内存和处理器的承载已达上限,业内甚至认为摩尔定律最多还能适用10年。那么,当我们进入后摩尔定律时代,如果未来10年计算能力无法匹配,这将极大限制人工智能的发展和应用。

因此,提升计算性能的思路就是,一方面通过分布式计算、云计算的方式;一方面通过更新工艺或推进更新的技术,如研发量子计算机。

实际上,国际科技巨头早已开始布局研发量子计算机,甚至上演了巨头争霸赛,IBM、Google等已经开始在云端提供量子计算服务。那么,量子计算的基本原理是什么呢?为什么它可以提供比经典计算机更强的计算能力呢?


量子比特


为什么人工智能发展需要依靠量子计算?


量子计算机是一种遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置,它主要依靠的是量子比特的叠加态、纠缠等物理特性。在经典计算机中,比特是基本的信息表示单元;相对的,量子计算机中最基本的信息单元是量子比特(qubit),它利用量子力学的叠加态和量子纠缠两种性质,实现了天然的并行计算。


1.量子的叠加态

量子的神秘之处首先体现在它的“状态”。在宏观世界里,任何一个物体在某一时刻有着确定的状态和确定的位置。但在微观世界里,量子却可以同时处于多种状态。叠加态是“0”态和“1”态的任意线性叠加,它以一定的概率同时存在于“0”态和“1”态之间。量子不像半导体只能记录0与1,可以同时表示多种状态,如果把半导体比成单一乐器,量子计算机就像交响乐团,一次运算可以处理多种不同状况。


2.jpg


2.量子纠缠


根据量子力学理论,如果两个量子之间形成了“纠缠态”,那么无论相隔多远,当一个量子的状态发生变化,另一个量子也会超光速“瞬间”发生如同心灵感应的变化。也就是说,当其中一颗被操作(例如量子测量)而状态发生变化,另一颗也会即刻发生相应的状态变化。

量子比特就是利用了这些性质,实现了天然的并行计算。我们可以通过特定技术对量子态进行一次变换,即可对所有状态同时操作,且只消耗 1 单位时间。试想一下,一个64位的量子比特可以同时表示0~2^64-1的所有整数,那我们做一次k*x的乘法操作,就相当于同时计算了k*0、k*1、…、k*(2^64-1)!

也就是说,当对海量数据进行处理时,传统计算机输入一次运算一次,而量子计算这种并行处理方式的速率足以让传统计算机望尘莫及。尤其是在多种并行运算或者多种操作的情况下,随着处理数据量的增加,量子计算机比传统计算机的优势会实现指数级的增长。

量子计算和量子算法 

1.量子门


目前的电子计算机还有个热耗散的问题,根据兰道尔原理,信息的损失将导致发热,而经典逻辑门运算都是不可逆计算,会带来信息损失进而发热(虽然很少)。量子门是操作量子比特的基本单元,量子门是可逆的,信息没有损失,因而量子计算机可以自循环而没有热耗散。

2.量子测量


跟经典计算机的另一个区别,就是量子比特始终处在叠加态之上,只有经过测量,你才可能获得自己想要的结果。但是,量子力学里面有个基本的定理叫做量子不可克隆定理,无法对一个未知量子态精确复制,使得每个复制态与初始量子态完全相同。所以只能多次执行,多次测量。还是用前面的例子来说明,在执行完k*x的操作后,我们同时计算出了k*0、k*1、…、k*(2^64-1)所有这些结果,但我可能只关心其中某一个特定的结果,譬如k*100的结果。那我们就需要对量子比特进行若干次测量,每次测量都会得到一个具体的k*x的结果,直到我们遇到了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的量子机器学习算法在技术文献中不断增多。这个算法开创了整个量子机器学习时代。




3.jpg


量子人工智能的计算能力为人工智能发展提供革命性的工具,能够指数加速学习能力和速度,轻松应对大数据的挑战。那么,量子计算机跟人工智能到底有哪些结合?我们线看看目前正得到越来越多关注的量子机器学习领域。


量子机器学习

从一开始人工智能就与量子关系密切


那么,量子计算机跟人工智能到底有哪些结合?


HHL算法算法开创了整个量子机器学习时代它可以应用到众多领域,比如最小二乘拟合,是很多机器学习算法的底层,比如SVM知识向量,最后都会落到线性代数的运算问题。

 

4.jpg


目前量子计算与机器学习的结合已经非常多,上图中间是经过了这些量子算法优化的经典机器学习算法。基于量子计算机的量子机器学习可帮助我们更快、更高效地做很多事情,量子计算机功能的持续改善可能促使半自动车辆和其他先进人工智能诞生。甚至,Google期望在十年之内,或许可以实现将所有的机器学习算法替换成量子。


实际上,量子计算和人工智能不止在机器学习这一具体技术方面密切相关,更重要的是二者背后都涉及到“意识”问题,以及由此衍生出的数学、哲学、心理、生物等等一系列的科学,任何一个科学如果没有得到重大的突破,人工智能都很难得到进一步发展。

现实已经非常紧迫,在后摩尔时代,甚至在不远的十年之内,当技术红利消失,我们必须在量子计算机研究、脑科学研究、意识研究方面取得突破,才有可能实现真正的人工智能时代。