探究谷歌用于构建量子机器学习模型的新框架:TensorFlow Quantum

译文
人工智能 机器学习
TensorFlow Quantum让数据科学家可以构建在量子架构上运行的机器学习模型。TensorFlow Quantum的核心概念是将量子算法和机器学习程序交织在TensorFlow编程模型中。谷歌称这种方法为量子机器学习,能够利用其最近的一些量子计算框架(比如谷歌Cirq)来实现它。

[[319936]]

【51CTO.com快译】量子计算和人工智能(AI)的交汇有望成为整个技术发展史上最引人入胜的潮流之一。量子计算的出现可能迫使我们重新构思几乎所有现有的计算范式,AI也不例外。然而,量子计算机的计算能力还有望加快AI如今仍然不实用的许多方面。AI和量子计算相辅相成的第一步是,重新构思在量子架构上运行的机器学习模型。最近谷歌开源了用于构建量子机器学习模型的框架:TensorFlow Quantum。

TensorFlow Quantum的核心概念是将量子算法和机器学习程序交织在TensorFlow编程模型中。谷歌称这种方法为量子机器学习,能够利用其最近的一些量子计算框架(比如谷歌Cirq)来实现它。

量子机器学习

说到量子计算和AI,我们要回答的第一个问题是,后者如何得益于新兴的量子架构。量子机器学习(QML)是个笼统的术语,指可以充分利用量子特性的机器学习模型。QML的第一个应用专注于重构传统的机器学习模型,以便它们能够在随量子位数量急剧扩大的状态空间上执行快速线性代数。然而,由于量子硬件的计算能力提高,量子硬件的发展拓宽了QML的前景,逐渐发展成为可以进行经验研究的启发式方法。这个过程类似于GPU的问世,如何使机器学习向深度学习范式发展。

在TensorFlow Quantum的上下文中,可以将QML定义为两大部分:

a. 量子数据集

b. 混合量子模型

量子数据集

量子数据是出现在自然或人工量子系统中的任何数据源。这可能是来自量子力学实验的经典数据,也可能是由量子设备直接生成,然后作为输入馈入到算法中的数据。有一些证据表明,出于以下描述的原因,“量子数据”方面的混合量子经典机器学习应用可提供较之纯经典机器学习的量子优势。量子数据表现出叠加和纠缠现象,导致可能需要数量激增的经典计算资源来表示或存储的联合概率分布。

混合量子模型

就像机器学习可以从训练数据集归纳模型一样,QML也可以从量子数据集归纳量子模型。然而,由于量子处理器仍然很小且嘈杂,量子模型无法单单使用量子处理器来归纳量子数据。混合量子模型提出了一种方案,其中量子计算机作为硬件加速器将最有用,与传统计算机共生。这种模型非常适合TensorFlow,因为它已经跨CPU、GPU和TPU支持异构计算。

Cirq

建立混合量子模型的第一步是能够利用量子操作。为此,TensorFlow Quantum依靠Cirq,这种开源框架用于在近期设备上调用量子电路。Cirq包含指定量子计算所需要的基本结构,比如量子位、门、电路和测量运算符。Cirq背后的想法是提供一种简单的编程模型,它对量子应用软件的基本构建模块进行抽象处理。最新版本包括以下关键构建模块:

  • 电路:在Cirq中,电路代表量子电路的最基本形式。Cirq电路表示为矩(Moment)的集合,这些矩包括在某个抽象时间间隔内对量子位执行的操作。
  • 时间表和设备:时间表是量子电路的另一种形式,包括有关门的时机和持续时间的更详细的信息。从概念上讲,时间表由一组ScheduledOperations以及要在其上运行时间表的设备的描述组成。
  • 门:在Cirq中,门对量子位集合的操作进行抽象处理。
  • 模拟器:Cirq包括可用于运行电路和时间表的Python模拟器。模拟器架构可以跨多个线程和CPU扩展,从而使它可以运行相当复杂的电路。

TensorFlow Quantum

TensorFlow Quantum(TFQ)是用于构建QML应用程序的框架。TFQ使机器学习研究人员可以构建量子数据集、量子模型和经典控制参数,作为单单一张计算图中的张量(tensor)。

从架构的角度来看,TFQ提供了一个模型,它对与TensorFlow、Cirq和计算硬件的交互进行抽象处理。堆栈的顶部是要处理的数据。经典数据直接由TensorFlow处理;TFQ增加了这一功能:处理由量子电路和量子运算符组成的量子数据。堆栈的下一级是TensorFlow中的Keras API。由于TFQ的核心原则是与核心TensorFlow(尤其是与Keras模型和优化器)进行原生集成,因此这一级横跨堆栈的整个宽度。Keras模型抽象的下面是我们的量子层和微分器,与经典TensorFlow层连接起来后,它们可以实现混合量子-经典自动微分。在量子层和微分器的下面,TFQ依赖TensorFlow运算符,该运算符为数据流图创建实例。

从执行的角度来看,TFQ遵循以下步骤来训练和构建QML模型。

1. 准备量子数据集:量子数据作为张量而加载,被指定为用Cirq编写的量子电路。张量由TensorFlow在量子计算机上执行,以生成量子数据集。

2. 评估量子神经网络模型:在这一步,研究人员可以使用Cirq为量子神经网络建立原型,然后将其嵌入到TensorFlow计算图中。

3. 采样或求平均:这一步利用了对涉及第1步和第2步的几趟运行求平均值的方法。

4. 评估经典神经网络模型:这一步使用经典深度神经网络,以获取前几个步骤中提取的度量指标之间的这种关联。

5. 评估成本函数:与传统的机器学习模型类似,TFQ使用这一步评估成本函数。如果标记了量子数据,这可能基于模型执行分类任务有多准确;如果任务不是监督式,基于其他标准。

6. 评估梯度和更新参数:评估成本函数后,应沿着预期降低成本的方向,更新管道中的自由参数。

TensorFlow和Cirq的结合使TFQ拥有一系列丰富的功能,包括更简单和熟悉的编程模型,以及同时训练和执行许多量子电路的功能。

结合量子计算和机器学习的工作仍处于起步阶段。当然,TFQ是这个领域最重要的里程碑之一,它利用了量子学习和机器学习中一些最好的IP。有关TFQ的更多详细信息,请访问项目官网(https://www.tensorflow.org/quantum)。

原文标题:Exploring TensorFlow Quantum, Google’s New Framework for Creating Quantum Machine Learning Models,作者:Jesus Rodriguez

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2020-03-12 12:31:01

开源谷歌量子AI

2023-06-13 15:35:36

2021-11-02 09:40:50

TensorFlow机器学习人工智能

2016-02-18 10:32:39

谷歌TensorFlow 机器学习

2023-02-07 13:57:18

量子数据

2013-07-04 10:07:18

谷歌量子计算机

2018-03-09 09:00:00

前端JavaScript机器学习

2017-04-06 09:20:10

机器学习模型信用卡诈骗

2020-03-10 10:42:22

量子计算机芯片超算

2020-06-04 17:06:35

机器学习技术工具

2022-07-08 15:14:34

神经网络谷歌机器学习

2016-05-17 14:24:56

亚马逊机器学习

2022-12-21 19:06:55

机器学习人工智能

2017-07-07 14:41:13

机器学习神经网络JavaScript

2022-08-09 13:44:37

机器学习PySpark M数据分析

2019-03-08 09:28:42

Google 开源技术

2019-07-23 10:22:11

TensorFlow.Python机器学习

2018-09-15 23:23:04

Web开发机器学习软件开发

2022-03-25 13:41:55

漏洞网络攻击Quantum(量子

2022-09-19 15:37:51

人工智能机器学习大数据
点赞
收藏

51CTO技术栈公众号