Google 发布开源库 TFQ,快速建立量子机器学习模型!
整理 | 弯月责编 | 郭芮出品 | CSDN(ID:CSDNnews)近日,Google 与滑铁卢大学、大众汽车等联合发布 TensorFlow Quantum(TFQ),一个可快速建...
整理 | 弯月
责编 | 郭芮
出品 | CSDN(ID:CSDNnews)
近日,Google 与滑铁卢大学、大众汽车等联合发布 TensorFlow Quantum(TFQ),一个可快速建立量子机器学习模型原型的开源库。TFQ提供了必要的工具,将量子计算和机器学习技术结合起来,以控制并建模自然或人工的量子计算系统。
虽然机器学习不能完全模拟自然界的系统,但是它能够学习这些系统的模型并预测系统的行为。
在过去的几年里,传统的机器学习模型已在处理具有挑战性的科学问题上初露锋芒,并促进了人类在癌症检测、图像处理、地震预测、极端天气预测和新系外行星探测方面的进步。近年来随着量子计算的发展,新量子机器学习模型的发展已开始对世界重大问题产生深远的影响,并有望让人类在医学、材料、传感和通信领域取得突破。然而,到目前为止,我们仍然缺乏相应的研究工具来发现有用的量子机器学习模型——这些模型可以处理基于量子的数据,并在量子计算机上执行任务。
而如今,TFQ 通过提供与现有 TensorFlow API 兼容的量子计算基本要素以及高性能量子电路模拟器,将量子计算开源框架 Cirq 与 TensorFlow 集成在一起,为传统的判别和生成量子模型的设计和实现提供了高层的抽象。
什么是量子机器学习模型?
量子模型具有以量子力学来表示和概括数据的能力。然而,为了理解量子模型,首先必须明确两个概念:量子数据和量子-经典混合模型(hybrid quantum-classical model)。
量子数据具有叠加和纠缠的特性,因此其联合概率分布需要大量传统的计算资源来表示或存储。量子数据可以在量子处理器、传感器、网络中产生和模拟,包括化学物质和量子物质的模拟、量子控制、量子通信网络、量子计量学等等。
从技术上来说,由 NISQ 处理器生成的量子数据具有关键的特性:嘈杂,且通常在测量之前就出现了纠缠。然而,将量子机器学习应用到嘈杂的纠缠量子数据可以最大程度地提取有用的经典信息。受这些技术的启发,TFQ 库提供了开发模型的原语,这些模型可用于解纠缠和泛化量子数据中的相关性,从而为改进现有量子算法或发现新的量子算法提供了机会。
第二个需要引入的概念是量子-经典混合模型。由于近来的量子处理器仍然相对较小,且很嘈杂,因此量子模型不能仅依赖量子处理器——NISQ 处理器需要和经典处理器配合,才能变得高效。由于TensorFlow支持跨CPU、GPU和TPU的异构计算,因此它是试验量子-经典混合算法的首选平台。
TFQ包含量子计算所需的基本结构,比如量子比特、门、电路以及测量运算符等。用户指定的量子计算可在模拟的环境以及真实的硬件上执行。Cirq 还包含大量的构件,用以帮助用户为 NISQ 处理器设计高效的算法,从而让量子-经典混合算法的实现能在量子电路模拟器上运行,最终在量子处理器上运行。
目前,Google 已将 TFQ 用于实现量子-经典卷积神经网络,以及用于量子控制的机器学习、用于量子神经网络的分层学习、量子动力学学习、混合量子态的生成建模以及经典的递归神经网络。Google 提供了这些量子应用的概览,每个示例都可以通过 Colab 在浏览器中运行,感兴趣的读者可查阅原论文。
TFQ如何工作?
研究人员可以利用TFQ 在单个计算图中构建量子数据集、量子模型以及作为张量的经典控制参数。引发经典概率事件的量子测量的结果可由TensorFlow Ops 获得。而 TFQ 训练可以使用标准的 Keras 函数进行。
为了方便大家理解量子数据的使用,Google 提供了使用量子神经网络对量子状态进行监督分类的说明。与经典机器学习一样,量子机器学习所面临的关键性挑战在于如何对 “噪声数据” 进行分类。如果想构建和训练这样的模型,研究人员可以执行以下操作:
1. 准备一个量子数据集
量子数据作为张量(多维数组)来加载。每个量子数据张量都指定为用Cirq编写的量子电路。这个电路可实时生成量子数据, 张量由TensorFlow在量子计算机上执行,用来生成量子数据集。
2. 评估一个量子神经网络模型
研究人员可以使用Cirq建立量子神经网络的原型,然后将其嵌入到TensorFlow计算图中。基于对量子数据结构的了解,可以从几个大类中选择参数化的量子模型。这个模型的目标是执行量子处理,用来提取隐藏在典型的纠缠态下的信息。换句话说,量子模型实质上是对输入的量子数据进行解纠缠,将隐藏的信息编码在经典的相关性中,从而使它们适用于本地测量和经典后处理。
3. 样本或平均值
量子态的测量需要以样本的形式,从经典随机变量中提取经典信息。来自该随机变量值的分布,通常取决于量子态本身以及所测得的可观测值。由于许多变分算法依赖于测量值的平均值(也称为期望值),因此TFQ提供了在涉及步骤(1)和(2)的多次运行中求平均值的方法。
4. 评估一个经典的神经网络模型
在经典信息被提取出来后,它的格式就适合进一步的经典后处理。由于提取的信息可能被编码为测量期望之间的经典关联,因此,研究人员可以使用经典深度神经网络来提取这种关联。
5. 评估成本函数
根据经典后处理的结果,评估成本函数。这可以基于模型执行分类任务的准确性(如果量子数据被标记),或者基于其他标准(如果任务是无监督的)。
6. 评估梯度和更新参数
在评估了成本函数之后,应按预期可降低成本的方向更新管道中的自由参数,这通常是通过梯度下降来执行的。
TFQ 的一个关键特性将是能够同时训练和执行多个量子电路。
TensorFlow 能够在计算机集群之间并行化计算,并能够在多核计算机上模拟相对较大的量子电路,因此能够实现TFQ的这一特性。此外,Goolge 团队还宣布开放 qsim , 该模拟器能够在 Goolge 云节点上在 111 秒内模拟门深度为14的32量子位量子电路。该模拟器还特别针对多核 Intel 处理器进行了优化。Google 结合 TFQ,已在60分钟内在Google 云节点上以门深度 20 对 20 量子位的量子电路进行了 100 万次电路仿真。
展望未来
如今,TFQ 主要面向在经典量子电路模拟器上执行量子电路。未来,TFQ 有望在 Cirq 支持的真正量子处理器(包括 Google 自己的处理器 Sycamore)上执行量子电路。更多有关TFQ的信息,可阅读 Google 的白皮书并访问 TensorFlow Quantum 网站。
TFQ主页:
https://www.tensorflow.org/quantum/
TFQ GitHub地址:
https://github.com/tensorflow/quantum
TFQ白皮书:
https://arxiv.org/abs/2003.02989
参考链接:https://ai.googleblog.com/2020/03/announcing-tensorflow-quantum-open.html
【End】
《原力计划【第二季】- 学习力挑战》正式开始!
即日起至 3月21日,千万流量支持原创作者,更有专属【勋章】等你来挑战
推荐阅读
☞上线两个月冲上 App Store 免费榜 Top 2,腾讯会议有什么独到之处?
☞谁说国产编译器没救了?这个 C/C++ 和 JavaScript 编译器来了 | 程序人生 2020
☞用于小型图形挖掘研究的瑞士军刀:空手道俱乐部的图表学习Python库
☞Libra新编程语言 :Move 的所有权模型灵感来源原来是它……
你点的每一个在看,我认真当成了喜欢
更多推荐
所有评论(0)