量子计算+人工智能——这才是将来科技的最大热门!

编译 | AI科技大本营
参与 | shawn
编辑 | 明明

90年代初,当卫奇塔州立大学(Wichita State University)的物理学教授Elizabeth Behrman开始结合量子物理学和人工智能(主要是当时备受争议的神经网络技术)时,大多数人认为这两门学科就像油和水同样,根本没办法结合。“当时我连发表论文都很困难。神经网络学术期刊问我‘量子力学是什么’,而物理学期刊则会问‘神经网络是什么玩意’。”她回忆道。算法

现在,这两门学科的结合彷佛再天然不过了。神经网络和其余机器学习系统成为了21世纪影响最大的技术。这些系统不只在一些大部分人不擅长的任务(例如:围棋和数据挖掘)上战胜了人类,并且还在大脑的某些本职工做(例如:面部识别、语言翻译)上超越了人类。这些系统的实现依赖于庞大的计算能力,所以科技公司要寻找的计算机不只要更大,并且还要更先进。数据库

在经历了数十年的研究后,量子计算机如今的计算能力已经超越了其余全部计算机。人们常认为,量子计算机的杀手级应用能够对大数进行因数分解——这对现代加密技术相当重要。可是实现这一点至少还要再等十年。不过,当前基本的量子处理器已经能够知足机器学习的计算需求。量子计算机在一个步骤以内能够处理大量的数据,找出传统计算机没法识别出的微妙模式,在遇到不完整或不肯定数据时也不会卡住。“量子计算和机器学习固有的统计学性质之间存在着一种自然的结合。” Rigetti Computing的物理学家Johannes Otterbach表示。(Rigetti Computin是一家位于加州伯克利的量子计算机公司。)编程

若是有什么不一样的话,那就是当前的趋势已经走向另外一极端。谷歌、微软、IBM等科技巨头正在往量子机器学习上猛砸钱,多伦多大学还成立了一个量子机器学习创业孵化器。“‘机器学习’如今正成为一个潮词。在 ‘机器学习’加上‘量子’,它就变成了一个超级潮词。”莫斯科斯科尔科沃科技学院(Skolkovo Institute of Science and Technology)的量子物理学家Jacob Biamonte称。网络

然而,“量子”一词在此处没有任何意义。你可能能会认为量子机器学习系统应该很强大,可是这种系统实际上却像是患有某种闭锁综合症。量子机器学习系统处理的是量子态,而不是人类能够理解的数据,量子态和数据的相互转换会使系统原有的优点消失。就像是,iPhone X本来的参数和性能都很强,可是若是网络信号太差的话,它就会和老式手机同样慢。在一些特殊状况中,物理学家能够克服输入输出障碍,可是这些状况是否存在于现实机器学习任务中?答案仍然是未知的。“咱们如今尚未明确的答案。一直以来,人们每每对这些算法是否能提升计算速度并不关心。”德克萨斯州大学奥斯汀分校计算机科学家Scott Aaronson表示。app

▌量子神经元

不管是传统神经网络,仍是量子神经网络,它们的主要任务都是识别模式。受人类大脑的启发,神经网络由基本的计算单元(即“神经元”)构成。每一个神经元均可以看做为是一个开关设备。一个神经元能够监测多个其余神经元的输出,就像是投票选举同样,若是足够多的神经元处于激活状态,这个神经元就会被激活。一般,神经元的排列呈层状。初始层(initial layer)导入输入(例如图像像素),中间层生成不一样组合形式的输入(表明边、几何形状等结构),最后一层生成输出(对图像内容的高级描述)。dom

须要注意的是,神经元之间的链接须要通过反复试验进行调整,不是预先肯定的。例如,给神经网络输入带有“小猫”或“小狗”标签的图像。网络会给每一张图像分配一个标签,检查是否匹配正确,若是不正确就调整神经元链接。刚开始时网络的预测是随机生成的,可是其准确度会愈来愈高;在通过10000个实例的训练以后,网络将能识别图像中的宠物。正规的神经网络可能拥有10亿个神经元链接,全部链接都须要进行调整。机器学习

传统计算机计算单元的全部链接都用庞大的数字矩阵表示,运行神经网络就是在计算矩阵代数。传统的方法是,用一个专门的芯片(例如:图像处理器)来完成这些矩阵运算。而在完成矩阵运算上,量子计算机是不可匹敌的。“量子计算机运算大型矩阵和向量的速度快不少。”麻省理工大学(MIT)物理学家、量子计算先驱Seth Lloyd称。ide

在进行运算时,量子计算机能够利用量子系统的指数属性。量子系统的大部分信息储存能力并非靠单个数据单元——qubit(对应于传统计算机中的bit)实现的,而是靠这些qubit的共同属性实现的。两个qubit带有四个链接状态:开/开、关/关、开/关、关/开。每一个链接状态都分配有一个特定的权重或“幅值”,表明一个神经元。三个qubit能够表明八个神经元。四个qubit能够表明16个神经元。机器的运算能力呈指数增加。实际上,整个系统到处都分布有神经元。当处理4个qubit的状态时,计算机一步能够处理16个数字,而传统的计算机只能一步只能处理一个。性能

Lloyd估计,60个qubit的计算机能够编码的数据量至关于人类一年生成的全部数据,300个qubit的计算机能够编码可观测宇宙中的传统信息内容。(IBM、英特尔和谷歌共同研发的量子计算机是当前最大的量子计算机,大约有50个qubit)。不过前提是假设每一个幅值(amplitude)对应于一个传统的bit。Aaronson表示:事实上,幅值是连续的数值(复杂的数字)。为得到可信的试验准确度,能够储存15 bit的信息。学习

可是,量子计算机的信息储存能力并不能加快它的运算速度。如何可以使用qubit才是关键。2008年,Lloyd、MIT物理学家Aram Harrow和以色列巴伊兰大学(Bar-Ilan University)计算机科学家Avinatan Hassidim展现了如何用量子计算机完成矩阵求逆的关键代数运算。他们将整个运算分解为一系列能够在量子计算机上执行的逻辑运算。他们的算法适用于不少种机器学习算法。并且,须要完成的运算步骤少于因数分解一个大数所要完成的步骤。量子计算机能够在受到噪声影响前,迅速完成分类任务。“在彻底通用且容错的量子计算机到来以前,量子计算能够提供量子优点。” IBM的 Thomas J. Watson 研究中心的Kristan Temme表示。

▌让系统自己解决问题

目前为止,咱们只在4 qubit的计算机上实现了基于量子矩阵代数的机器学习。量子机器学习在实验上取得的大部分红功都采用了一种不一样的方法:量子系统不仅是模仿网络,它自己就是网络。每一个qubit表明一个神经元。虽然这种方法没法让计算机利用指数属性所带来的优点,可是它可让计算机利用量子物理学的其余特性。

位于温哥华附近的D-Wave Systems公司制造的量子处理器拥有2000个qubit,是目前最大的量子处理器。它和大多数人观念中的计算机不一样:它的主要任务是寻找数据的内部一致性,而不是对输入数据执行一系列的运算,得出输出。每一个qubit都是一个超导电回路,其做用至关于一个向上、向下或向上与向下(叠加)的小电磁体。让qubit经过磁力相互做用,这样就能够将它们“连”在一块儿。

D-Wave Systems公司制造的用于机器学习应用的处理器▲

在运行系统时,必须先施加一个水平的磁场,这个磁场能够将qubit预置为向上和向下的均等叠加——等同于空白状态。输入数据的方法有好几种。在某些状况中,你能够将某一层qubit固定在预期的输入值;不过多数状况下,应将输入导入到qubit的相互做用的范围内。而后让qubit相互做用。某些qubit朝同一方向排列,某些qubit朝相反方向排列,在水平磁场的做用下,它们会翻转到它们选择的方向。经过这样作,这些qubit能够触发其余qubit进行翻转。因为不少qubit都没对准方向,刚开始时会发生不少翻转。等到翻转中止后,你能够关闭水平磁场,将qubit锁定在固定位置。此时,qubit处于朝上和朝下的叠加状态,这种状态能够确保输出与输入相对应。

关键在于,Qubit最终的排列方式很难预测出来。经过完成天然出现的任务,系统能够解决普通计算机难以解决的问题。“咱们不须要使用算法。这种系统与常规的编程彻底不一样。系统自己能够解决问题。” 东京工业大学的物理学家Hidetoshi Nishimori解释道。D-Wave计算机的工做原理就是由Hidetoshi Nishimori提出的。

qubit的翻转是由量子隧穿效应(quantum tunneling)驱动的。这种效应是一种天然趋势,量子系统必需要选出最佳配置,不能退而求其次。你能够构建一个工做原理类似的传统网络,采用随机晃动,而不是经过隧穿效应来让bit翻转。在某些任务中,这样的网络表现更好。可是有趣的是,在处理机器学习中出现的问题时,量子网络实现最佳结果的速度彷佛更快。

D-Wave计算机也有缺陷。在当前的配置下,D-Wave计算机的噪声很是大,它只能执行有限的操做。而机器学习算法本质上是具备容噪能力的,它们能够理解混乱的现实环境,在干扰性背景中从区分小猫和小狗。“神经网络对噪声有很强的鲁棒性。” Behrman称。

Hartmut Neven是谷歌的一名计算机科学家,他开创了加强现实技术,是谷歌Google Glass项目的联合创始人。后来,他领导一个团队开始研究量子信息处理。2009年,这个团队证实了一台初期的D-Wave 计算机能够很好地完成一个机器学习任务。他们将这台计算机用做为一个单层神经网络,在20000张街景图数据库中将图像分类为两个类别:“汽车”和“非汽车”(请记住:这台D-Wave计算机与2018年上线的50-qubit系统属于彻底不一样的机型。)。Neven的团队结合使用D-Wave 计算机与传统的计算机,他们分析了图像的各类统计参数(quantities),而后计算这些参数对图像中汽车的敏感度——一般不是很敏感,但至少比抛硬币(猜正反面)要好。这些参数的某些组合能够准确地识别出汽车,可是没法识别出具体车型——这是神经网络的任务。

这个团队为每一个参数都分配了一个qubit。若是qubit的值稳定在1,则将相应的参数标记为有用;若是qubit的值稳定在0,则不用标记。Qubit的磁力相互做用能够编码问题的要求,例如:只包含区分做用最强的参数,以确保参数的最终选择尽量简单明了。试验的结论是,D-Wave计算机能够识别出汽车。

去年,加州理工学院粒子物理学家Maria Spiropulu和南加州大学物理学家Daniel Lidar领导的一个团队将算法应用到粒子物理学问题中:将质子碰撞分类为“希格斯玻色子(Higgs boson)”和“非希格斯玻色子”。这个团队将研究对象选择为生成质子的碰撞,他们使用基本的粒子理论来预测哪些粒子属性可能会表征希格斯粒子的短暂存在,例如:超出动量的某些阈值。他们考虑了8种粒子属性和28种属性组合,一共是36种候选信号而后让南加州大学的新型量子计算机找出最佳选择。该计算机识别出16个有用的变量,3个最佳变量。该量子计算机在执行准确的分类任务时比标准流程所需的数据量要少。“在训练集较小的条件下,量子计算方法的准确度要比高能物理学中的传统方法高。”Lidar表示。

加州理工学院物理学家Maria Spiropulu使用量子机器学习寻找希格斯玻色子。▲

去年12月,Rigetti 证实了一种使用通用19 qubits量子计算机自动分类对象的方法。大体上,研究人员向计算机输入了一系列的城市名称以及它们之间的距离,而后让计算机将这些城市分类为两个地理区域。这个问题的困难之处在于,一座城市属于哪一个地理区域取决于系统对其余城市的分类,所以必须一会儿解决整个系统。

Rigetti的团队为每一个城市分配了一个qubit,代表这个城市属于哪一个类别。经过qubit之间的相互做用(在Rigetti的系统中,这种相互做用是电做用力,而不是磁做用力),每一对qubit都尽可能要选取相反的值——这样作能够将它们的能量降到最小。显然,对于任何qubit数超过2个的系统而言,某些qubit对只能被分配到相同的类别中。靠近的城市更容易被分配到同一类别中,由于相比距离较远的城市,邻近城市被分配到同一类别中的能量损耗要小。

为了将系统的能量降至最低,Rigetti的团队采用了一种在某些方面相似于D-Wave量子退火的方法。他们先将qubit预置为全部可能簇分配(cluster assignment)的叠加状态。而后让qubit进行短暂的相互做用,使qubit偏向于假设相同或相反的值。接着他们应用了一种模拟水平磁场的机制,在qubit倾斜时使它们能够翻转,以使系统更接近于最低能量状态。最后,他们重复执行了这个两步骤流程——相互做用与翻转,直到系统的能量降至最低,这样城市就被分类为两个不一样的区域。

这些分类任务是有用的,但很直接。机器学习的尖端是生成模型,这种模型不只能够识别小猫小狗,还能够生成新的原始模型——历来不存在的动物,但它们和真实动物同样可爱。这种模型甚至还能够本身分辨“小猫”和“小狗”的类别,或者修复缺乏尾巴或爪子的图像。“在机器学习中,这些方法很是强大且有用,可是应用起来十分困难。” D-Wave的首席科学家Mohammad Amin表示。量子计算若是能被应用到生成式模型中,必定会大受欢迎。

D-Wave和其余研究团队已经开始着手解决这个难题。训练生成式模型,也就是调整qubit之间的(磁或电)相互做用,以使网络能复制某些实例数据。为了实现这一点,咱们能够结合使用神经网络和普通的计算机。神经网络负责困难的任务——理解选定的相互做用对最终的网络配置有什么意义,而后计算机使用这个信息来调整qubit之间的相互做用。去年,NASA量子人工智能实验室(NASA’s Quantum Artificial Intelligence Lab)的研究人员Alejandro Perdomo-Ortiz和他的团队在一篇论文中,用一个D-Wave系统处理手写数字的图像。结果,该系统识别出10个类别,并为0至9这10个数字各分配了一个类别,并且还生成了本身的手写体数字。

▌量子计算机的瓶颈

使人失望的是,若是你没法将数据载入处处理器中,你的处理器再强大也无济于事。在矩阵代数算法中,一个简单的运算就能够处理一个由16个数字构成的矩阵,可是载入这个矩阵却须要进行16个运算。“人们彻底没有重视量子态制备——将传统的数据载入到量子状态中我认为这一步是最重要的一步。”量子计算初创公司Xanadu的研究人员Maria Schuld表示。她是最先得到量子机器学习博士学位的人员之一。当咱们把机器学习系统布置到实体机器中时,经常陷入两难的境地:如何将一个问题嵌入到qubit网络中;让qubit以正确的方式相互做用。

当载入数据以后,你须要将数据存储起来,并确保量子系统在与数据相互交互时不影响正在进行的计算。Lloyd和他的团队提出了一个使用光子的量子RAM,可是目前尚未超传导qubit或囚禁离子(trapped ions)的相似装置——用在先进量子计算机中的技术。“除了构建量子计算机自己以外,这是一个额外的技术难题。从我和一些实验主义者的谈话中,我发现他们对待这些难题的态度是畏惧的。由于他们不知道若是开始构建这样的量子计算机。” Aaronson表示。

最后还有一个问题:如何导出数据?这意味着检测计算机的量子状态,一次检测不只只能一次返回一个随机抽取的数字,并且还会使整个状态崩溃,在你还没来得及收回数据以前,其余的数据就已被清除。你只能再次一遍又一遍地执行算法,以收回全部信息。

不过并非没有但愿。在某些问题中,你能够利用量子干涉(quantum interference)。也就是说,你能够设计运算过程,使错误的答案自行消除,并巩固正确的答案。这样,当检测量子状态时,计算机就会给出你想要的数值,而不是随机数值。可是只有少数算法(例如蛮力搜索算法brute-force search)能够很好地利用量子干涉,并且速度是适中的。

在某些任务中,研究人员发现了输入和输出数据的快捷方法。2015年,Lloyd、加拿大滑铁卢大学的Silvano Garnerone和南加州大学的Paolo Zanardi证实了:在某些类别的统计分析中,不须要输入或存储整个数据集。一样,当几个关键数值就能够知足需求时,不须要读取全部数据。例如,科技公司根据庞大的消费者习惯数据,利用机器学习来矩阵为用户建议节目或者商品。“Netflix或亚马逊(Amazon)并不须要获取处处生成的矩阵,它们要作的只是为用户生成建议。” Aaronson称。

全部这些引出了这样一个问题:若是量子计算机只在某些特殊任务中表现优秀,传统的计算机是否也能胜任这些任务?这是量子计算领域的一个还未解决的大问题。毕竟普通的计算机也十分强大。处理大型数据集的经常使用方法——随机采用,在本质上与量子计算机十分相似,即:不管系统内部进行何种运算,最终返回的结果都是随机的。Schuld称:“我研究出来的不少算法经常让我感到‘它们太棒了,咱们这下能够提高运算速度了’。不过我为了好玩又编写了一个在传统计算机上运行的抽样算法,我发现用抽样算法也能够实现相同的效果。”

若是回顾量子机器学习目前为止的成果,你会发现它们都带有星号。以D-Wave计算机为例:当分类汽车图像和希格斯粒子时,D-Wave计算机的速度并不比传统的计算机快。“咱们在这篇论文中没有谈到的一个问题是量子加速。” Google DeepMind团队的计算机科学家Alex Mott表示。他曾经是Higgs研究团队的一员。矩阵代数方法(例如Harrow-Hassidim-Lloyd算法)只有在矩阵为稀疏矩阵(多数元素为零)时才会实现量子加速。“在机器学习中稀疏数据集是否真的有趣?从没有人问过这个问题。” Schuld表示。

▌量子智能

话说回来,现有的方法偶尔有什么进展,科技公司们就会感到十分高兴。“咱们看到的这些优点都不算大;它们虽然不是指数性的,可是至少是二次的”微软研究院(Microsoft Research)的量子计算研究院Nathan Wiebe称。“若是量子计算机足够大、足够快,咱们就能够完全改变机器学习的许多领域。”在应用这些系统的过程当中,计算机科学家能够解决一些理论性难题——这些系统是否在本质上更快,缘由是什么。

Schuld还看到了量子计算在软件方面的创新空间。机器学习不只仅是计算问题,并且仍是不少问题交缠在一块儿,每一个问题都有本身特殊的结构。“人们编写的算法被从使机器学习变得有趣和美丽的事物中移除。这就是为何我开始探索其余方法和思考的缘由:若是有了量子计算机(小型的),它能够运行什么机器学习模型?也许这样的模型尚未发明出来。” Schuld说。若是物理学家想要让机器学习专家另眼相看,除了构建现有模型的量子版模型外,他们要探索别的突破。

许多神经科学家如今认为人类思惟的结构反映了身体的要求,实际上机器学习系统也囊括万千。这些系统所处理的图像、语言和大多数其余数据都来自于真实世界,这些数据反映了世界的种种特征。一样,量子机器学习系统也是一应俱全的,它所反映的世界要远远大于咱们的世界。毫无疑问,量子机器学习系统将在处理量子数据上大放光彩。当数据不是图像,而是物理学或化学实验的产物时,量子计算机将会大显神通。若是解决了数据输入问题,传统的计算机就将会被彻底淘汰。

第一批量子机器学习系统能够为后来的系统的设计提供帮助,这就造成了一个很好的自我参考循环。“咱们可使用这样系统来构建量子计算机。在某些调试任务中,这是咱们惟一的方法。” Wiebe说。也许这些系统甚至能够纠正咱们的错误。且不谈人类大脑是不是量子计算机——这是一个备受争议的问题,大脑有时候的行为让人感受它就是量子计算机。众所周知,人类的行为离不开情境;现有的选择决定了咱们的偏好,这其实和咱们的逻辑相悖。从这个角度看,咱们确实像是量子粒子。“人类问问题的方式以及对顺序的重视,都是量子数据集中很是典型的特性。” Perdomo-Ortiz说。这样看来,量子机器学习系统能够帮助咱们研究人类认知偏见。

神经网络和量子处理器有一个共同点:那就是它们居然能实现。训练神经网络毫不是想固然能作到的,过去几十年间,大多数人都对是否能作到持质疑态度。一样,量子物理学是否能被用在计算上也很差说,由于咱们对量子物理学独特的能力还知之甚少。可是神经网络和量子处理器都已实现,虽然并非总能实现,可是仍是超出了咱们的预期。考虑到这一点,量子物理学和神经网络的结合也极可能会在将来大放异彩。

做者 | George Musser

原文连接

相关文章
相关标签/搜索