wps生成正态分布的随机数_量子计算与机器学习: 量子生成对抗网络QGAN

d486059a57d677693a8c0a7e66ea2353.png

随着量子信息和量子计算的快速发展(经费多了),科研工作者们一边感叹着量子计算机时代即将拥有的强大计算能力,一边又在考虑着如何将现有的高效算法和量子计算机相适配。作为最近几年如此火爆的机器学习,也就自然而然地加入了量子化大军。2018年有Lukin的量子卷积神经网络和Seth Lloyd的量子生成对抗学习。这篇文章里将通过量子生成对抗网络QGAN来简介一下量信工作者们对机器学习算法的量子化。

Rmk. 本来是写了个回答的https://www.zhihu.com/question/268419799/answer/338900541,结果因为是一年之前随手写个一个回答现在重新改的,破乎的推荐功能之类的好像用不了,于是发在文章里了。

量子生成对抗网络

发展

理论上,由2018年仅仅间隔一周时间的两篇论文提出。Seth Lloyd的PRL[1]更侧重思辨,想了很多情况,文章短小精悍没什么公式要靠读者自己脑补,作者也是非一般的牛。PRA[2]侧重于数值实现,公式很多并且写了怎么用量子电路实现差分梯度下降。实验上已经在2019年被中国科大(妮可)和清华做出来了,见参考文献[3]。

GAN的原理

生成对抗网络作为一种重要的生成模型,通过生成器和判别器之间的博弈来学习样本的统计性质。

GAN中的训练样本假设服从概率分布

生成器G为一个非线性映射,将噪声样本z映射到数据样本x的空间,并力求模仿训练样本的统计分布。

这里,
是噪声的先验分布,如正态分布,
则是通过非线性映射之后得到的样本分布,而生成器(非线性映射)想要做的就是使q(x)和p(x)尽可能接近。

那么如何判断两个分布是否接近呢?我们请一位裁判,称为判别器D,我们给他一个样本,让他告诉我们这个样本是来自训练样本(真实)还是生成样本。而在裁判进行判决的过程中,我们也可以对他进行训练,让他判别出错的概率减小。这样,在判别器和生成器之间就产生了博弈。在训练过程中,判别器越来越准确,生成器也只能让生成的样本分布和训练样本的分布更加接近以欺骗判别器。

说到G非线性映射,而D又是一个分类器,那么自然而然的会想到用深度神经网络来作为二者的参数表示,这样一来,就开始了Deep GAN的故事。

量子版本QGAN

受到GAN的启发,量信工作者们提出了量子版本的QGAN。前面提一遍GAN的原理是为了方便在这里通过对比来介绍QGAN。

首先是训练样本,也就是我们想要模仿统计信息的样本,量子力学里的样本由态矢描述(取了相应的坐标基矢后是波函数),而这些样本(态矢)以一定的概率复合起来构成的整体就是量子系综,为混合态,由密度算符

刻画。

接下来是生成器。对于噪声先验,我们用另一个系综

描述,表示我们产生噪声样本的方式。而生成器,则用来把从
中抽取的噪声样本映射到新的态
,并且希望以此获得的统计性质和训练样本相近。于是,生成器生成的样本的系综的密度算符为

Rmk.与GAN不同的是,QGAN中的生成器是线性算符,而不是非线性的

对于判别器。上面已经提到,GAN中的判别器相当于一个二分类器,给定一个样本,给出其属于训练样本还是生成样本。对应于量子力学,这一过程由一测量给出,给定态矢,测量结果表明其类别。形式上,可用POVM(正算子值测度)表示,

,其中,T对应训练样本,F对应生成样本。

相应于Deep GAN的神经网络参数化,Deep QGAN可以通过深层的量子电路(quantum circuit)来实现生成器(线性算符G)和判别器(POVM T或F)的参数化。

What's new

  1. 相对于GAN需要花费极大的计算能力在CPU, GPU上进行训练,QGAN作为量子版本的GAN能够更加好的适应量子计算机
  2. QGAN的随机性是量子力学内禀的,而不是GAN中的随机数生成器
  3. 理论上的优雅,量子力学的定义表明,密度算符的全体是凸集,而POVM的测量算符也构成紧凸集,这些使得QGAN的各种性质能够简单而优雅的给出,相对于GAN的复杂证明而言

Pf.(Convergence)

训练的目标函数是成功判别的概率,即给出训练样本时测量分类给出T,给出生成样本时测量分类为F,由条件期望的平滑性

QGAN和GAN的训练目标则是,让生成器能尽可能欺骗判别器,形式化为

先考虑最大化,显然,当T为迹内算符的正部分投影时,目标函数最大,

,其中,
的正值本征矢。

Rmk.最优测量算符的物理意义也很明显,当

时,样本产生于

最优化判别器后,损失函数为

显然,最小值对应于

Rmk.可见,迭代训练将收敛到纳什均衡

参考文献

[1] https://arxiv.org/abs/1804.09139

[2] Quantum generative adversarial networks

[3] https://advances.sciencemag.org/content/5/1/eaav2761

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/339119.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过反汇编来理解restrict关键字

一次难忘的面试经历多年前,一次互联网某厂实习生的面试题,题目的代码片段很简单,如下:1 #include 2 int main()3 {4 int *restrict pInt (int*)malloc(4);5 int *pNewInt pInt;6 return 0;7 } 12345678面试官问…

python车牌识别系统开源代码_汽车牌照识别系统【YOLO+MLP】

车牌识别系统可以自动检测并识别图像中的车辆牌照,其算法主要包括牌照定位、牌照分割、字符识别等步骤。本文将给出一种基于深度学习的车牌识别系统方案。要快速掌握开发人工智能系统的技能,推荐汇智网的 机器学习系列在线课程由于可以自动地从视频图像中…

幻灯片演示什么模式最好_清洁单元测试图案–演示幻灯片

幻灯片演示什么模式最好我有机会在2014年GDG DevFestKarlsruhe会议上谈论“清洁单元测试模式”。 感谢组织者邀请我,也感谢所有听我讲话的人。 如所承诺的,我为那些想看一下我在演讲中没有讲过的其他幻灯片的人分享了演示文稿: 清洁单元测试…

js text 和 html,JS DOM innerText和textContent的区别

innerText和textContent很多人会困惑,因为都可以用来获取文本内容,实际上,两者还是有很多区别的,本文就将介绍这两个属性的异同,希望可以对大家的学习有所帮助。一、之前错误的认识innerText IE6就开始支持&#xff0c…

如何用耳机翻页_游戏耳机的经典之作—罗技(G)Astro A40体验

前言经常去网吧玩游戏的朋友,在家玩如果没有头戴式耳机,那体验真的会差一大截。优秀的电竞游戏耳机会带来更好的游戏体验,不仅是舒适性。像绝地求生这类FPS游戏,游戏耳机会让听声辩位更容易更精确。最近因为大促降价入手的罗技&am…

我改了500个Bug,但是!!

IT程序猿 微博网友评论:空白一页blank:不写bug怎么改bug 抠Bee:不经意间病毒都出来了我在海的这边你在哪里丫:好了,发给开发小弟了富贵小小神仙:要不然呢,那些从开发到维护的程序员不都是靠这么…

jboss maven_使用Maven配置JBoss / Wildfly数据源

jboss maven大多数Java EE应用程序在其业务逻辑中使用数据库访问,因此开发人员经常面临在应用程序服务器中配置驱动程序和数据库连接属性的需求。 在本文中,我们将使用Maven为JBoss / Wildfly和Postgre数据库自动化该任务。 这项工作是根据我从以前的魔兽…

globalmapper如何选取图像上的点_OpenCV 进阶应用,用编程手段搞定图像处理

在我们生活中,常见的图像处理软件有Adobe Photoshop、Adobe Illustrator等。然而,并非只有软件才能实现图像处理,通过编程手段也是能实现的!通过编程手段实现图像处理,也就是计算机视觉。所谓计算机视觉,就…

pytorch relu函数实现_什么是pytorch?

PyTorch是一个:机器学习框架,简单易学可以看做是支持GPU计算和自动微分计算的“Numpy”库支持100多种Tensor常规算子,包括:创建、索引、切片、转置、连接、随机数、形状改变,线性代数、数学计算Tensor是一个有值有属性…

C sort 排序函数用法

最近在刷ACM经常用到排序,以前老是写冒泡,可把冒泡带到OJ里后发现经常超时,所以本想用快排,可是很多学长推荐用sort函数,因为自己写的快排写不好真的没有sort快,所以毅然决然选择sort函数用法1、sort函数可…

python人脸_Python 使用 face_recognition 人脸识别

Python 使用 face_recognition 人脸识别 人脸识别 face_recognition 是世界上最简单的人脸识别库。 使用 dlib 最先进的人脸识别功能构建建立深度学习,该模型准确率在99.38%。 Python模块的使用 Python可以安装导入 face_recognition 模块轻松操作,对于简…

osgi 如何引入包_OSGi Testsuite:引入类名过滤器

osgi 如何引入包OSGi Testsuite是一个JUnit测试运行程序 ,它动态地收集要执行的测试类。 它已经由我的同伴Rdiger大约一年前出版,并且已经在某些项目中证明有用。 但是对于gonsole,我们必须使用一个难看的补丁,因为1.0版仅支持.*T…

C语言,一把菜刀。

C 与 C 的真正区别在哪里?C是中餐厨师的菜刀,做啥菜就那一把刀,切菜切肉切鱼,都是这一把刀,刀工好的师傅,豆腐都能切成一朵花。无论你提什么概念,都能用指针给你做出来,如果不行&…

查询计算机专业及选修了英语的学生,实验五 数据库综合查询(学生)

实验五 数据库综合查询一、实验目的1. 掌握SELECT语句的基本语法和查询条件表示方法; 2. 掌握查询条件种类和表示方法; 3. 掌握连接查询的表示及使用; 4. 掌握嵌套查询的表示及使用; 5. 了解集合查询的表示及使用。二、实验内容1.…

python读取写入文件_Python文件读写保存操作

记录下第一次使用Python读写文件的过程,虽然很简单,第一次实现其实也有些注意的事项。 单个文件的读操作: 我们先假设一个需求如下: 读取一个test.txt文件 删除指定字符之前的文本 需求明白之后,下面开始动手写代码&am…

css中设置br标签之后的样式_CSS学习

语法:选择器,声明(由一个属性和一个值)注释:/* */选择器:1. id选择器,class选择器2. 组和选择3. 属性选择创建:外部样式表html <head> <link rel"stylesheet" type"text/css" href"mystyle.css"> </head>内部样式表html <h…

eclipse扩展点_Eclipse扩展点评估变得容易

eclipse扩展点编码Eclipse扩展点评估有点冗长&#xff0c;而且很少能自我解释。 当我最近忙于自己忙于这个话题时&#xff0c;我写了一个小助手&#xff0c;目的是减少通用编程步骤的样板代码&#xff0c;同时增加开发指导和可读性。 它原来是不容易找到一个表现的解决方案&am…

扯淡!C语言怎么可能被淘汰呢?

“第一门编程语言学C靠谱吗&#xff1f;”“C还有未来吗&#xff1f;”“我应该考虑学C吗&#xff1f;”“C太老了吧&#xff01;”你是否也听过类似的话语&#xff1f;听说过无数次&#xff0c;有些是面对面的交谈&#xff0c;而有些来自某个论坛。虽然答案无非是“取决于具体…

如何正确运用计算机技术,如何正确认识与运用计算机网络技术.doc

如何正确认识与运用计算机网络技术如何正确认识与运用计算机网络技术摘要&#xff1a;正如每个人所见&#xff0c;在中国当前的形势下&#xff0c;从小培养计算机网络技术人才还是个薄弱环节。作为中小学计算机网络技术教师的我们必须在透彻了解本校或本地区学生对计算机网络技…

google账号解除游戏绑定_附方法!关于物联卡手机号的绑定与解绑

我们在使用物联卡时第一步都知道绑定手机号&#xff0c;只有绑定了手机号我们才能进行正常的充值、续费、查询等日常操作&#xff0c;当我们不再使用这些物联卡时&#xff0c;你知道怎么解绑吗&#xff1f;今天&#xff0c;我们以中国移动物联卡为例&#xff0c;咱们来看一下移…