使用量子玻尔兹曼机推进机器学习:新范式
一、说明
量子玻尔兹曼机(QBM)是量子物理学和机器学习的前沿融合。通过利用叠加和纠缠等量子特性的力量,QBM 可以同时探索多个解决方案,使其异常擅长解决复杂问题。它使用量子位(量子计算的构建模块)以传统计算机无法做到的方式处理信息。尽管仍处于早期阶段,QBM 在模拟量子系统、优化复杂场景和破译复杂数据模式等应用方面展现出了前景。尽管面临挑战,QBM 有潜力彻底改变计算并重塑我们处理复杂任务的方式。

二、玻尔兹曼机
玻尔兹曼机是用于基于能量的机器学习的模型。这里显示的网络本质上是一个玻尔兹曼机,由隐藏节点和可见节点组成。隐藏节点充当潜在变量,在后台编码信息,而可见节点则确定模型的输出。在经典玻尔兹曼机中,这些节点可以是二进制的,表示 +1 或 -1 状态,类似于自旋变量。网络可以用能量函数来表示,其中节点之间的连接性反映在能量函数的加权项中。这适用于节点之间的连接和单个节点本身。为了将其与热力学联系起来,我们采用玻尔兹曼分布的概念。这些分布使我们能够根据可见节点相应的能量来计算其某些配置的概率。该概率是使用配分函数确定的,配分函数是所有可能的能量配置的总和,并确保我们具有有效的概率。

玻尔兹曼机设置的目标是训练能量函数中的参数,以便生成的概率代表概率分布。这种分布由训练数据和/或标签决定,具体取决于所使用的学习工具。所讨论的损失函数是交叉熵损失函数,它涉及从我们的模型中取概率的对数,将其与训练数据中的概率相乘,然后对所有可能的实例进行平均。

文本解释说,节点现在由信号表示,特别是作用于可见量子位的泡利算子(I、X、Y、Z)。模型输出由可见量子位的配置决定,并受到隐藏保利斯的影响。哈密顿量不是能量函数,而是基于网络连接性定义的。测量构型的概率是通过对量子吉布斯态的投影测量来确定的,由哈密顿量和配分函数编码。对于经典计算机来说,评估归一化因子可能具有挑战性。吉布斯状态对概率分布进行编码,并使用参数化量子电路进行近似。

文中解释说,为了训练哈密顿量的参数,采样概率需要准确地表示可能的权重分布。定义损失函数有两种选择:经典损失函数,其中测量量子态,采样概率确定损失;以及量子损失函数,其中经典概率映射到一级量子态,目标是将完整的吉布斯态与该量子态相匹配。后一个选项允许更自由地匹配概率分布,但这取决于具体目标。本研究的重点是第一个损失函数,它足以匹配经典分布并避免不必要的自由度训练。

这篇文章讨论了 VarQITE,这是量子虚时间演化的概念。它解释了如何使用基于加权泡利算子的 n 量子位哈密顿量,并探索了 Wick 旋转薛定谔方程。它提到算子缺少“I”并且需要归一化因子来维持量子态的 L2 归一化。这篇文章还描述了如何使用输入状态和参数化模拟将其合并到参数化量子电路中。使用变分原理来近似参数的演化。

为了执行参数演化,麦克拉克伦的变分原理用于最小化威克旋转薛定谔方程左侧和右侧之间的差异。这是在变分子空间内完成的,其中状态由 ansatz 表示。求解所得线性方程可提供 ansatz 参数的时间导数,该导数可以使用任意 ODE 求解器进行传播。麦克劳林的变分原理允许使用恒定架构量子电路来模拟状态演化。线性方程的右侧代表系统的能量梯度,而左侧代表 Fubini 研究度量,它描述了 ansatz 的信息几何。

A 的评估在 ansatz 中的参数数量上是二次方昂贵的,并且在哈密顿量中的参数数量上是线性的。为了评估 A,使用了一种电路结构,其中涉及额外的量子位、受控操作和测量。A_ij 和 C_i 的项可以使用此电路结构以类似的形式重写,从而可以评估定义演化 ODE 的线性方程组所需的所有组件。

为了生成吉布斯状态,文本建议通过在子系统 B 上添加一个普通哈密顿量来扩展目标哈密顿量。初始状态以 n 个贝尔对给出,其中一部分在子系统 A 中,一部分在子系统 B 中。 out 子系统 B 给出子系统 A 的初始状态作为最大状态。然后使用 VarQITE 和哈密顿量 H_AB 来传播状态。再次追踪子系统 B 给出吉布斯状态的近似值。使用具有一个和两个量子位的简单示例在实际的量子计算机上测试了该方法。

文本讨论了哈密顿量和吉布斯状态,并解释了 ansatz 用于近似这些吉布斯状态。目标是确定每个时间步长的这些近似值与实际吉布斯态的接近程度,这是使用保真度作为量子态接近程度的度量来测量的。

文本描述了两个哈密顿量 H1 和 H2 的训练,左侧使用较小的哈密顿量,右侧使用两个量子位门。显示了 IBMQ Johannesburg 20 量子位机器上精确模拟和测试的保真度演变。经过 10 个时间步长后,小量子位的保真度非常好,双量子位门的保真度约为 59%。对于这项小规模研究来说,这被认为是一个有趣且令人满意的结果。

本文研究了吉布斯状态的准备过程,随后重点介绍了量子玻尔兹曼机的教育。它提到了经典损失函数的使用以及使用吉布斯状态的概率计算。然而,计算损失函数的梯度并不容易。公式本身并不那么重要,重要的是绿色的正确项可以轻松有效地计算。如果某些交换关系不充分,则左侧红色项可能难以计算。以前的工作通常使用上限(例如 Golden-Thompson),而不是损失函数的实际梯度进行训练。

现在,将 VarQITE 用于我们的 QBM 的一个很酷的事情是,我们实际上可以利用我们的电路参数及其演化取决于我们的哈密顿参数这一事实。反过来,这使我们能够以最终的差异化来评估这些梯度。我们可以利用链式法则。

这篇文章讨论了操纵量子态时梯度的计算。它指出,计算与哈密顿参数相关的电路参数的梯度很简单,但找到与吉布斯状态相关的梯度则更加困难,因为它需要求解线性方程组。此项的时间导数可以通过吉布斯状态的准备来帮助扩展电路参数的梯度。这篇文章简要提到了颜色的使用,但没有提供额外的信息。

该算法首先初始化哈密顿量和初始参数。然后,它使用 VarQITE 准备吉布斯状态并获取自动微分项。插入项并计算相对于吉布斯状态的梯度。这允许评估损失函数梯度,用于更新哈密顿参数。重复这个过程直到满足终止标准以学习一个好的模型。

这篇文章描述了一个旨在获取贝尔状态采样概率知识的训练实例。它强调使用具有对角哈密顿量和有效 SE2 ansatz 的基本模型,该模型能够表示复杂的相。

我们来分析一下训练结果。我们将参数(alpha、beta、gamma)初始化在 -1 到 1 的范围内。使用 VarQITE,我们通过 10 个步骤准备吉布斯状态并计算损失函数的梯度。这通过优化例程指导我们的模型训练。右侧显示损失函数的级数以及训练分布和期望分布之间的 L1 距离。每个图都附有标准差条,由 10 次不同随机状态运行的平均结果生成。值得注意的是,随着标准偏差的减小,我们看到了持续的改进。左侧的条形图说明了一个实例:蓝色条形是目标(贝尔状态采样),紫色条形代表最不有效的训练,粉红色条形是最好的。值得注意的是,即使是经过最好训练的结果也已经非常准确。

总之,变分量子玻尔兹曼机使我们能够有效地探索哈密顿量构造的数据结构,从而形成更加专注的状态学习器。利用自动微分,量子玻尔兹曼机训练变得容易进行,这得益于 VarQITE 用于吉布斯状态准备的固有用法。值得注意的是,由于其一致的电路深度和架构,该技术与近期的量子计算机非常吻合。
三、结论
总之,量子玻尔兹曼机代表了量子物理和机器学习十字路口的一个令人着迷且有前途的前沿领域。它对量子特性的利用引入了计算范式的转变,提供了彻底改变问题解决和数据分析的潜力。通过利用叠加和纠缠,QBM 并行处理信息的能力可能会在优化、模式识别和量子系统模拟等领域带来突破。尽管面临着新兴技术的典型挑战,包括纠错和降噪,但 QBM 的发展有可能重新定义计算的边界,为科学、技术和人工智能的新可能性打开大门。随着研究人员和工程师不断提升其能力,量子玻尔兹曼机最终可能会重新定义我们对计算的理解,并推动我们进入量子增强智能的新时代。
相关文章:
使用量子玻尔兹曼机推进机器学习:新范式
一、说明 量子玻尔兹曼机(QBM)是量子物理学和机器学习的前沿融合。通过利用叠加和纠缠等量子特性的力量,QBM 可以同时探索多个解决方案,使其异常擅长解决复杂问题。它使用量子位(量子计算的构建模块)以传统…...
优化|优化求解器自动调参
原文信息:MindOpt Tuner: Boost the Performance of Numerical Software by Automatic Parameter Tuning 作者:王孟昌 (达摩院决策智能实验室MindOpt团队成员) 一个算法开发者,可能会幻想进入这样的境界:算…...
vite vue3配置eslint和prettier以及sass
准备 教程 安装eslint 官网 vue-eslint ts-eslint 安装eslint yarn add eslint -D生成配置文件 npx eslint --init安装其他插件 yarn add -D eslint-plugin-import eslint-plugin-vue eslint-plugin-node eslint-plugin-prettier eslint-config-prettier eslint-plugin…...
C语言第入门——第十六课
目录 一、分治策略与递归 二、递归 1.求解n的阶乘 2.输入整数、倒序输出 3.输入整数、正序输出 4.计算第n位Fibonacci数列 编辑5.无序整数数组打印 6.找到对应数组下标 一、分治策略与递归 在我们遇到大问题的时候,我们的正确做法是将它分解成小问题&a…...
IntelliJ IDEA 快捷键 Windows 版本
前言:常用快捷键 IntelliJ IDEA编辑器大受欢迎的原因之一是它的智能提示和丰富的快捷键,在日常开发中熟练的使用快捷键会大大提升开发的效率,本篇文章就笔者日常开发中的总结,把常用的、好用的快捷键做一个列表,方便…...
重生之我必去大厂java开发
JavaDreamer 重生之我必去大厂java开发。主线任务进入大厂java开发。 author :developer_zxh GitHub | Gitee 本项目记录了本人从中国科学院大学硕士研究生开始,如何进入大工 java 开发岗位的学习记录(目前在校未求职,加入后此状…...
2023年中职“网络安全“—Web 渗透测试②
2023年中职“网络安全“—Web 渗透测试② Web 渗透测试任务环境说明:1.访问http://靶机IP/web1/,获取flag值,Flag格式为flag{xxx};2.访问http://靶机IP/web2/,获取flag值,Flag格式为flag{xxx};3.访问http://靶机IP/web…...
【整顿C盘】pycharm、chrome等软件,缓存移动
C盘爆了,特来找一下巨大的软件缓存,特此记录,跟随的各大教程,和自己的体会 一、爆炸家族JetBrains 这个适用于pycharm、idea、webstorm等等,只要是JetBrains家的,2020版本以上,都是一样的方法 p…...
C# using语句使用介绍
在C#中,using语句有两种主要用途:一是引入命名空间,二是提供一种简便的方式来处理资源的清理(主要用于实现了 IDisposable 接口的对象)。 引入命名空间:using 语句用于引入命名空间,从而可以在代…...
leetcode (力扣) 201. 数字范围按位与 (位运算)
文章目录 题目描述思路分析完整代码 题目描述 给你两个整数 left 和 right ,表示区间 [left, right] ,返回此区间内所有数字 按位与 的结果(包含 left 、right 端点)。 示例 1: 输入:left 5, right 7 输出…...
Flutter笔记: 在Flutter应用中使用SQLite数据库
Flutter笔记 在Flutter应用中使用SQLite数据库(基于sqflite) 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/q…...
OpenAI GPT5计划泄露
OpenAI的首席执行官萨姆奥特曼在最近接受《金融时报》的专访时,分享了OpenAI未来发展的一些新动向。此外,他还透露了关于即将到来的GPT-5模型以及公司对AGI的长期目标的一些细节。 奥特曼指出: 1.OpenAI正在开发GPT-5,一种更先进的…...
【面试经典150 | 数学】Pow(x, n)
文章目录 写在前面Tag题目来源题目解读解题思路方法一:快速幂-递归方法二:快速幂-迭代 其他语言python3 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主…...
封装比较好的登录页面
封装比较好的登录页面 只在setup()函数中写流程,将逻辑代码抽离出来 <template><div class"wrapper"><img class"wrapper__img" srchttp://www.dell-lee.com/imgs/vue3/user.png /><div class"wrapper__input"&…...
如何使用Flask request对象处理请求
在 Flask 中,request 对象是处理 HTTP 请求的重要工具之一。它提供了许多属性和方法,可以帮助我们获取请求的相关信息和数据。本文将向你介绍 request 对象的常用方法以及如何在 Flask 应用程序中使用它。 1. 获取请求方法 首先,让我们看一…...
快速搜索多个word、excel等文件中内容
如何快速搜索多个word、excel等文件中内容 操作方法 以win11系统为介绍对象。 首先我们打开“我的电脑”-->“文件夹选项”-->“搜索”标签页,在“搜索内容”下方选择:"始终搜索文件名和内容(此过程可能需要几分钟)"。然后…...
Minio安装
环境 centos8,关闭防火墙 minio-20231101183725版本 参考官网:部署 MinIO:单节点单硬盘 — 适用于 Linux 的 MinIO 对象存储 单例 下载rpm,用中国镜像 wget https://dl.minio.org.cn/server/minio/release/linux-amd64/arch…...
Spring初识
未来的几周时间,大概率我会更新一下Spring家族的一些简单知识。而什么是Spring家族,好多同学还不是很清楚,我先来简单介绍一下吧: 所谓Spring家族,它其实就是一个框架,是基于Servlet再次进行封装的内容。为…...
2023全新付费进群系统源码 带定位完整版 附教程
这源码是我付费花钱买的分享给大家,功能完整。 搭建教程 Nginx1.2 PHP5.6-7.2均可 最好是7.2 第一步上传文件程序到网站根目录解压 第二步导入数据库(58soho.cn.sql) 第三步修改/config/database.php里面的数据库地址 第四步修改/conf…...
C# LINQ使用介绍
LINQ(Language-Integrated Query)是C#语言的一个强大特性,它允许开发者用声明性的方式查询和操作数据。LINQ提供了一致的查询体验,无论是操作内存中的对象(如数组或集合),还是操作外部数据源&am…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
