量子计算机将用于什么用途?量子计算机有望在许多领域帮助解决难题,包括机器学习。
本文详细讲述 量子计算机 上 卷积神经网络 (CNN)的理论实现。我们将此算法称为 QCNN ,我们证明了它可以比CNN 更快 地运行,并且精度 很高 。
为此,我们必须提出 卷积积 的 量子形式 ,找到实现非线性和池化的方法,以及对 表示图像 的 量子态 进行层析成像的新方法,以 保留有意义的信息 。
简而言之,我们可以说 量子物理系统可以描述为 维度为2^n的某些希尔伯特空间中的 向量 ,其中n是粒子数。实际上,这些向量表示许多可能的观察结果的叠加。
另一方面,机器学习,尤其是神经网络,正在粗略地使用向量和矩阵来理解或处理数据。 量子机器学习(QML)旨在使用量子系统对向量进行编码,并使用新的量子算法对其进行学习 。一个关键的概念是在许多矢量上使用量子叠加,我们可以同时处理它们。
我不会更深入地介绍量子计算或QML。有关更多详细信息,可以参考NeurIPS 2019中有关 Quantum k-means的 一篇文章 :
卷积神经网络(CNN)是一种流行且高效的神经网络,用于图像分类,信号处理等。在大多数层中,将 卷积积 应用于图像或张量的输入上。通常后面是 非线性层和池化层 。
3D张量输入X ^ 1(RGB图像)和4D张量内核K ^ 1之间的卷积。
在本章中,我将重点介绍一层,解释什么是量子CNN。
这里的核心思想是我们可以根据矩阵乘法来重新构造卷积积。
该算法首先以量子叠加方式加载矩阵的 所有行和列 。然后,我们使用先前开发的 Quantum Inner Product Estimation估算 输出的每个像素。在实践中,这就像只计算一个输出像素(图中的红点),但是以 量子叠加的方式进行计算可以使它们同时全部都具有 !然后,我们可以同时对它们中的每一个应用非线性。
不幸的是,我们所拥有的只是一个量子状态,其中所有像素并行存在,并不意味着我们可以访问所有像素。如果我们打开"量子盒"并查看结果(一个度量),我们 每次都会随机地只看到一个输出像素 。在打开盒子之前,这里都有"四处漂浮"的东西,就像著名的薛定谔的死活猫。
为了解决这个问题,我们引入了一种 只检索最有意义的像素的方法 。实际上,量子叠加中的每个输出像素都有一个幅度,与我们测量系统时 被看到 的幅度有关。在我们的算法中,我们强制此幅度等于像素值。 因此,具有高值的输出像素更有可能被看到。
在CNN中,输出中的高值像素非常重要。它们代表输入中存在特定模式的区域。通过了解不同模式出现的位置,神经网络可以理解图像。因此,这些 高价值像素承载着有意义的信息 ,我们可以舍弃其他希望CNN适应的 像素 。
图像上量子效应(噪声,随机性,采样)的小示例。凭直觉,我们仅对高值像素采样后仍可以"理解"图像。
请注意,在对这些输出像素进行采样时,我们可以在存储它们时应用任何类型的 合并 (有关技术细节,请参见论文)。我们将这些像素存储在经典内存中,以便可以将它们重新加载为 下一层的 输入。
传统上,CNN层需要时间 Õ( 输出大小 x 内核大小 ) 。这就是为什么例如使用许多大内核来训练这些网络变得昂贵的原因。我们的 量子CNN 需要时间 为O( ( σ X 输出大小) X Q) ,其中 σ 是我们从输出(<1)绘制样品的比率,和 Q 表示量子精度参数和数据相关的参数一束。有 没有在内核大小更依赖 (数量和尺寸),这可能允许进行更深入的CNN。
通过量子CNN的这种设计,我们现在也想用量子算法对其进行训练。训练包括遵循梯度下降规则更新内核参数。在这里也可以找到一种更快的量子算法,它几乎等同于具有某些额外误差的通常的梯度下降。
QCNN和量子反向传播看起来不错,但暗示了很多近似,噪声和随机性。尽管有这些伪像,CNN仍然可以学习吗?我们比较了小型经典CNN的训练和QCNN在学习对手写数字进行分类(MNIST数据集)的任务上的模拟。这表明 QCNN可以以相似的精度学习 。
量子和经典CNN训练曲线之间的比较。 σ 是从每一层后的输出提取的高值像素的比率。期望 σ 太小,QCNN可以很好地学习。请注意,此数值模拟很小,只能给出直觉,不是证明。
在这项工作中,我们设计了第一个量子算法,通过引入量子卷积乘积和检索有意义的信息的新方法,几乎可以重现任何经典的CNN体系结构。它可以允许使用更深,更大的输入或内核来大大加快CNN的速度。我们还开发了量子反向传播算法,并模拟了整个训练过程。
请读者思考的问题:我们可以在其他数据集使用大型架构上训练QCNN吗?
用局部连接而不是全连接,同时权值共享。
局部连接的概念参考局部感受域,即某个视神经元仅考虑某一个小区域的视觉输入,因此相比普通神经网络的全连接层(下一层的某一个神经元需要与前一层的所有节点连接),卷积网络的某一个卷积层的所有节点只负责前层输入的某一个区域(比如某个33的方块)。这样一来需要训练的权值数相比全连接而言会大大减少,进而减小对样本空间大小的需求。
权值共享的概念就是,某一隐藏层的所有神经元共用一组权值。
这两个概念对应卷积层的话,恰好就是某个固定的卷积核。卷积核在图像上滑动时每处在一个位置分别对应一个“局部连接”的神经元,同时因为“权值共享”的缘故,这些神经元的参数一致,正好对应同一个卷积核。
顺便补充下,不同卷积核对应不同的特征,比如不同方向的边(edge)就会分别对应不同的卷积核。
激活函数f(x)用ReLU的话避免了x过大梯度趋于0(比如用sigmoid)而影响训练的权值的情况(即Gradient Vanishing)。同时结果会更稀疏一些。
池化之后(例如保留邻域内最大或采纳平均以舍弃一些信息)一定程度也压制了过拟合的情况。
综述总体来说就是重复卷积-relu 来提取特征,进行池化之后再作更深层的特征提取,实质上深层卷积网络的主要作用在于特征提取。 最后一层直接用softmax来分类(获得一个介于0~1的值表达输入属于这一类别的概率)。
感受野(receptive field或者field of view)是卷积神经网络中的一个基本概念。与全连接层中每个输出值都与全部输入特征值有关不同的是,卷积层的一个输出值只与一部分的输入特征值有关。输入特征值中与输出特征值有关的部分就是它的感受野。
对于处于中心位置的特征值,对于输出的影响会更大,根据实验结果在一个接受野的影响分布是高斯分布。由此也引入了一个 有效感受野 的概念,因为高斯分布在中心位置强度更高,然后逐渐向周围递减。
我们想用数学的方法来描述一个接收野中的每个输入像素对网络上一个单元层的输出的影响程度,并研究这种影响是如何在输出单元的接收野内分布的。为了简化符号,我们只考虑每层上的一个信道,但是对于具有更多输入和输出的卷积层,可以很容易地得到类似的结果通道。
假设每层上的像素用(i,j)索引,其中心位于(0,0)。表示第层的第(i,j)个像素为 ,其中 作为网络的输入, 作为第n层的输出。我们要测量每个 对 贡献了多少。我们将这个中央输出单元的有效感受野(ERF)定义为包含任何输入像素且对其影响不可忽略的区域单位。
本文采用偏导数 ,j来度量 随 有多大的变化;因此,它是 相对于 重要性的自然度量。然而,这种度量不仅取决于网络的权值,而且在大多数情况下也依赖于输入,因此我们的大多数结果都是期望值大于输入分布。
偏导数 可以用反向传播法计算。在标准设置中,反向传播传播相对于某个损耗函数的误差梯度。假设我们有一个任意的损失函数l,根据链式规则,我们有
我们可以设置误差梯度 和 ,然后将这个梯度从那里传播回网络。得到的 ,相当于期望的\partial{y_{0,0}}}{\partial {x^0_{i,j}}。这里我们使用无显式损失函数的反向传播过程,并且该过程可以用标准神经网络轻松实现工具。
在下面我们首先考虑线性网络,其中这个导数不依赖于输入,而纯粹是网络权重和(i,j),它清楚地显示了感受野中像素的影响是如何分布的。然后我们继续考虑更现代的架构设计,并讨论非线性激活、dropout、子采样、空洞卷积和跳跃连接对ERF的影响。
21最简单的情况:权值都等于1的卷积层
考虑使用k×k卷积核的步长为1的卷积层的情况,每层一个单通道,无非线性,叠加成一个深线性CNN。在这个分析中,我们忽略了所有层上的偏差。我们首先分析权值都等于1的卷积核。(推理过程公式好多,看原文吧……)
在本节中,我们将实证研究各种深层CNN架构的ERF。我们首先使用人工构造的CNN模型来验证我们分析中的理论结果。然后,我们提出了在实际数据集上训练深层cnn时ERF如何变化的观察结果。对于所有ERF研究,我们在输出平面的中心放置一个梯度信号1,在其他任何地方放置0,然后通过网络反向传播该梯度,得到输入的梯度。
31验证理论结果
我们首先在人工构建的CNN中验证我们的理论结果。为了计算ERF我们使用随机输入,对于所有随机权重网络,我们进行适当的随机初始化。在本节中,我们验证以下内容结果:
ERF是高斯分布的 。如图所示在图1中,我们可以观察到均匀加权卷积核和随机加权,没有非线性激活卷积核的完美高斯形状,以及随机加权非线性激活的卷积核的近似高斯形状。加上ReLU非线性使得分布的高斯性变小,因为ERF的分布也取决于输入。另一个原因是ReLU单元的一半输入输出正好为零,而且很容易为输出平面上的中心像素设置零输出,这意味着感受野的路径无法到达输出,因此梯度都为零。在这里,ERF在不同的传输种子下平均运行20次。下图显示了具有20层随机权值、具有不同非线性的网络的ERF。在这里,结果是不同的随机权重以及不同的随机输入平均运行的100次的结果。在这种情况下,感受野更像高斯分布。
绝对增长和 相对收缩 。图2中,我们给出了ERF尺寸的改变和ERF相对于理论RF的比例随卷积层数的变化。ERF大小的最佳拟合线在对数域的斜率为056,而ERF比值的拟合线斜率为-043。这表明ERF大小对于 呈线性增长,ERF比率对于 呈线性缩小。注意这里我们使用2个标准偏差作为ERF大小的测量值,即任何大于中心点1−9545%的像素都被视为ERF。ERF大小由ERF中像素数目的平方根表示,而理论RF大小是平方的边长,在该边长中,所有像素对输出像素的影响都是非零的,无论多么小。所有实验是在超过20次的结果上平均得到的。
32在训练过程中ERF是如何演变的
在这一部分中,我们将研究分类CNN和语义分割CNN最顶层的单元ERF在训练过程中是如何演变的。对于这两个任务,我们采用了 ResNet架构,它广泛地使用了skip-connection。分析表明,该网络的ERF应明显小于理论感受野。这是我们最初观察到的。有趣的是,随着网络的学习,ERF变得更大,并且在训练结束时,ERF明显大于初始ERF。
对于分类任务,我们在CIFAR-10数据集上训练了一个包含17个残差块的ResNet。在训练结束时,该网络的测试准确率达到89%。请注意,在这个实验中,我们没有使用池或降采样,而是专门关注具有跳过连接的体系结构。网络的精确度虽然不是最先进的,但仍然相当高。在图3中,我们显示了在训练开始时(随机初始化权重)和训练结束时,当达到最佳验证精度时,32×32图像空间上的有效感受野。请注意,我们网络的理论接收场实际上是74×74,大于图像大小,但是ERF仍然可以完全填充图像。比较训练前后的结果,我们发现有效感受野有所增加很明显。
对于语义分割任务利用CamVid数据集进行城市场景分割。我们训练了一个“前端”模型,它是一个纯粹的卷积网络,它预测输出的分辨率略低。该网络与VGG网络在许多以前的著作中所起的作用相同。我们训练了一个ResNet,16个残差块交错,每个子采样操作的因子为2。由于这些子采样操作,输出是输入大小的1/16。对于这个模型,顶层卷积层单元的理论感受野为505×505。然而,如图3所示,在训练开始时,ERF只得到直径为100的部分。我们再次观察到,在训练过程中,ERF的尺寸增大,最后达到直径约为150的直径。
上述分析表明ERF只占理论接收野的一小部分,这对于需要较大接收能力的任务是不可取的领域。
新的初始化。 一增加有效感受野的简单方法是控制初始权重。我们提出了一种新的随机权值初始化方案,使得卷积核中心的权值具有较小的尺度,而外部的权值较大,这使得中心的集中度向外围扩散。实际上,我们可以用任何初始化方法对网络进行初始化,然后根据中心低标度、外标度高的分布来调整权重。
在极端情况下,我们可以优化w(m)以使ERF大小最大化,或者等价地使等式(前面推公式部分里的公式)中的方差最大化。解决这个优化问题的结果是在卷积核的4个角上平均地设置权重,而其他地方都是0。但是,使用此解决方案进行随机权重初始化过于激进,并且将大量权重保留为0会使学习变慢。这种想法的温和版本通常是有效的更好。
我们用这种初始化方法训练了一个用于CIFAR-10分类任务的CNN,使用了几种随机种子。在一些情况下,与更标准的初始化相比,我们的训练速度提高了30%。但总的来说,这种方法的好处并不总是如此很重要。
我们请注意,无论我们如何改变w(m),有效感受野仍然是高斯分布的,因此上述建议只解决了问题部分。
改变构架。 一个潜在的更好的方法是对cnn进行架构上的更改,这可能会改变在更基本的方面。例如,我们不用将CNN中的每个单元连接到本地矩形卷积窗口,而是可以使用相同的连接数将每个单元稀疏地连接到下层的一个较大区域。空洞卷积属于这一类,但我们可以进一步推进,并使用不类似网格的稀疏连接。
与生物神经的联系网络。 在我们的分析表明,深部CNN中的有效接收场实际上比我们以前想象的要慢得多。这表明即使经过许多卷积层,仍然保留了许多局部信息。这一发现与深层生物网络中一些长期持有的相关概念相矛盾。哺乳动物视觉系统的一个普遍特征是分为“什么”和“哪里”路径。沿着what或where路径进行,连通性的性质逐渐改变:感受野大小增加,空间组织变得松散,直到没有明显的视网膜色素组织;视网膜脱离意味着单个神经元对视野中的面部等物体做出反应。然而,如果ERF比RF小,这表明表示可以保留位置信息,同时也提出了一个有趣的问题,即这些区域在发育过程中的大小变化。
我们的分析的第二个相关影响是,它表明卷积网络可能会自动地产生一种中心凹表现形式。人类视网膜中央凹只在中心像素附近提取高分辨率信息。等分辨率的子场的排列使得它们的大小随着距中心的距离而增大固定。在视网膜的外围,低分辨率的信息是从图像的较大区域提取的。一些神经网络已经明确地构造了这种形式的表示。然而,由于卷积网络形成高斯感受野,其底层表示自然会有这种感受野特性。
与之前研究的联系。 虽然CNN中的感受野尚未得到深入研究,一些人在计算方差如何通过网络演化方面进行了类似的分析。他们开发了一个很好的卷积层初始化方案,遵循的原则是方差在经过网络。
研究人员为了理解神经网络是如何工作的,我们还利用了可视化技术。[14] 展示了使用自然图像先验的重要性,以及卷积层的激活将代表什么。[22]使用反褶积网络来显示图像中像素点与被激活神经元之间的关系。[23]对感受野进行了实证研究,并将其作为定位的提示。也有可视化研究使用梯度上升技术[4]产生有趣的图像,如[15]。这些都集中在单位激活或特征图上,而不是我们在这里研究的有效感受野。
本文对CNN的感受野进行了细致的研究,并对有效感受野大小进行了初步探讨。特别地,我们已经证明了在感受野内的影响分布是渐近高斯的,有效感受野只占整个理论感受野的一小部分。实证结果与我们建立的理论相呼应。我们认为这只是有效感受野研究的一个开始,它为深入了解CNN提供了一个新的视角。在未来的研究中,我们希望更多地研究在实践中影响有效感受野的因素以及如何更好地控制这些因素。
要深入理解卷积神经网络的结构,我们需要追根溯源,只有这样才能更好的理解 CNN 网络。
1998年 LeCun 和 Bengio 等人利用 LeNet-5 网络在手写体数字识别领域上的识别效果超过了传统方法,从此开启了卷积神经网络的在图像上的应用大门。据说,一开始美国银行的手写体数字识别就是用的这个算法。
Gradient -Based Learing Applied to Document Recognition
http://yannlecuncom/exdb/publis/pdf/lecun-98pdf
论文有点长,46页,估计很难读下来。
LeCun 做了一些网页展示,有兴趣可以去浏览。
http://yannlecuncom/exdb/lenet/
https://githubcom/uestcsongtaoli/LeNet-5
上图是 LeCun 原论文中 LeNet-5 的结构图。
一、计算方法不同
1、前馈神经网络:一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层.各层间没有反馈。
2、BP神经网络:是一种按照误差逆向传播算法训练的多层前馈神经网络。
3、卷积神经网络:包含卷积计算且具有深度结构的前馈神经网络。
二、用途不同
1、前馈神经网络:主要应用包括感知器网络、BP网络和RBF网络。
2、BP神经网络:
(1)函数逼近:用输入向量和相应的输出向量训练一个网络逼近一个函数;
(2)模式识别:用一个待定的输出向量将它与输入向量联系起来;
(3)分类:把输入向量所定义的合适方式进行分类;
(4)数据压缩:减少输出向量维数以便于传输或存储。
3、卷积神经网络:可应用于图像识别、物体识别等计算机视觉、自然语言处理、物理学和遥感科学等领域。
联系:
BP神经网络和卷积神经网络都属于前馈神经网络,三者都属于人工神经网络。因此,三者原理和结构相同。
三、作用不同
1、前馈神经网络:结构简单,应用广泛,能够以任意精度逼近任意连续函数及平方可积函数.而且可以精确实现任意有限训练样本集。
2、BP神经网络:具有很强的非线性映射能力和柔性的网络结构。网络的中间层数、各层的神经元个数可根据具体情况任意设定,并且随着结构的差异其性能也有所不同。
3、卷积神经网络:具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类。
扩展资料:
1、BP神经网络优劣势
BP神经网络无论在网络理论还是在性能方面已比较成熟。其突出优点就是具有很强的非线性映射能力和柔性的网络结构。网络的中间层数、各层的神经元个数可根据具体情况任意设定,并且随着结构的差异其性能也有所不同。但是BP神经网络也存在以下的一些主要缺陷。
①学习速度慢,即使是一个简单的问题,一般也需要几百次甚至上千次的学习才能收敛。
②容易陷入局部极小值。
③网络层数、神经元个数的选择没有相应的理论指导。
④网络推广能力有限。
2、人工神经网络的特点和优越性,主要表现在以下三个方面
①具有自学习功能。例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习功能,慢慢学会识别类似的图像。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提供经济预测、效益预测,其应用前途是很远大的。
②具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。
③具有高速寻找优化解的能力。寻找一个复杂问题的优化解,往往需要很大的计算量,利用一个针对某问题而设计的反馈型人工神经网络,发挥计算机的高速运算能力,可能很快找到优化解。
参考资料:
—BP神经网络
—卷积神经网络
—人工神经网络
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)