90年代初,当卫奇塔州立大学(WichitaStateUniversity)的物理学教授ElizabethBehrman开始结合量子物理学和人工智能(主要是当时备受争议的神经网络技术)时,大多数人认为这两门学科就像油和水一样,根本没办法结合。“当时我连发表论文都很困难。神经网络学术期刊问我‘量子力学是什么’,而物理学期刊则会问‘神经网络是什么玩意’。”她回忆道。
如今,这两门学科的结合似乎再自然不过了。神经网络和其他机器学习系统成为了21世纪影响最大的技术。这些系统不仅在一些大部分人不擅长的任务(例如:围棋和数据挖掘)上打败了人类,而且还在大脑的某些本职工作(例如:面部识别、语言翻译)上超越了人类。这些系统的实现依赖于庞大的计算能力,因此科技公司要寻找的计算机不仅要更大,而且还要更先进。
在经历了数十年的研究后,量子计算机现在的计算能力已经超越了其他所有计算机。人们常认为,量子计算机的杀手级应用可以对大数进行因数分解——这对现代加密技术至关重要。但是实现这一点至少还要再等十年。不过,当前基本的量子处理器已经可以满足机器学习的计算需求。量子计算机在一个步骤之内可以处理大量的数据,找出传统计算机无法识别出的微妙模式,在遇到不完整或不确定数据时也不会卡住。“量子计算和机器学习固有的统计学性质之间存在着一种天然的结合。”RigettiComputing的物理学家JohannesOtterbach表示。(RigettiComputin是一家位于加州伯克利的量子计算机公司。)
如果有什么不同的话,那就是当前的趋势已经走向另一极端。谷歌、微软、IBM等科技巨头正在往量子机器学习上猛砸钱,多伦多大学还成立了一个量子机器学习创业孵化器。“‘机器学习’现在正成为一个潮词。在‘机器学习’加上‘量子’,它就变成了一个超级潮词。”莫斯科斯科尔科沃科技学院(SkolkovoInstituteofScienceandTechnology)的量子物理学家JacobBiamonte称。
然而,“量子”一词在此处没有任何意义。你可能能会认为量子机器学习系统应该很强大,但是这种系统实际上却像是患有某种闭锁综合症。量子机器学习系统处理的是量子态,而不是人类可以理解的数据,量子态和数据的相互转换会使系统原有的优势消失。就像是,iPhoneX原本的参数和性能都很强,但是如果网络信号太差的话,它就会和老式手机一样慢。在一些特殊情况中,物理学家可以克服输入输出障碍,但是这些情况是否存在于现实机器学习任务中?答案仍然是未知的。“我们现在还没有明确的答案。一直以来,人们往往对这些算法是否能提高计算速度并不关心。”德克萨斯州大学奥斯汀分校计算机科学家ScottAaronson表示。
量子神经元
无论是传统神经网络,还是量子神经网络,它们的主要任务都是识别模式。受人类大脑的启发,神经网络由基本的计算单元(即“神经元”)构成。每个神经元都可以看作为是一个开关设备。一个神经元可以监测多个其他神经元的输出,就像是投票选举一样,如果足够多的神经元处于激活状态,这个神经元就会被激活。通常,神经元的排列呈层状。初始层(initiallayer)导入输入(例如图像像素),中间层生成不同组合形式的输入(代表边、几何形状等结构),最后一层生成输出(对图像内容的高级描述)。
量子计算+人工智能——这才是未来科技的最大热门!
需要注意的是,神经元之间的连接需要经过反复试验进行调整,不是预先确定的。例如,给神经网络输入带有“小猫”或“小狗”标签的图像。网络会给每一张图像分配一个标签,检查是否匹配正确,如果不正确就调整神经元连接。刚开始时网络的预测是随机生成的,但是其准确度会越来越高;在经过10000个实例的训练之后,网络将能识别图像中的宠物。正规的神经网络可能拥有10亿个神经元连接,所有连接都需要进行调整。
传统计算机计算单元的所有连接都用庞大的数字矩阵表示,运行神经网络就是在计算矩阵代数。传统的方法是,用一个专门的芯片(例如:图像处理器)来完成这些矩阵运算。而在完成矩阵运算上,量子计算机是不可匹敌的。“量子计算机运算大型矩阵和向量的速度快很多。”麻省理工大学(MIT)物理学家、量子计算先驱SethLloyd称。
在进行运算时,量子计算机可以利用量子系统的指数属性。量子系统的大部分信息储存能力并不是靠单个数据单元——qubit(对应于传统计算机中的bit)实现的,而是靠这些qubit的共同属性实现的。两个qubit带有四个连接状态:开/开、关/关、开/关、关/开。每个连接状态都分配有一个特定的权重或“幅值”,代表一个神经元。三个qubit可以代表八个神经元。四个qubit可以代表16个神经元。机器的运算能力呈指数增长。实际上,整个系统处处都分布有神经元。当处理4个qubit的状态时,计算机一步可以处理16个数字,而传统的计算机只能一步只能处理一个。
Lloyd估计,60个qubit的计算机可以编码的数据量相当于人类一年生成的所有数据,300个qubit的计算机可以编码可观测宇宙中的传统信息内容。(IBM、英特尔和谷歌共同研发的量子计算机是当前最大的量子计算机,大约有50个qubit)。不过前提是假设每个幅值(amplitude)对应于一个传统的bit。Aaronson表示:事实上,幅值是连续的数值(复杂的数字)。为获得可信的试验准确度,可以储存15bit的信息。
但是,量子计算机的信息储存能力并不能加快它的运算速度。如何能够使用qubit才是关键。2008年,Lloyd、MIT物理学家AramHarrow和以色列巴伊兰大学(Bar-IlanUniversity)计算机科学家AvinatanHassidim展示了如何用量子计算机完成矩阵求逆的关键代数运算。他们将整个运算分解为一系列可以在量子计算机上执行的逻辑运算。他们的算法适用于很多种机器学习算法。而且,需要完成的运算步骤少于因数分解一个大数所要完成的步骤。量子计算机可以在受到噪声影响前,迅速完成分类任务。“在完全通用且容错的量子计算机到来之前,量子计算可以提供量子优势。”IBM的ThomasJ.Watson研究中心的KristanTemme表示。