关于CNN,我有几个让我感到困惑的问题。
1)使用CNN提取的特征是缩放和旋转不变吗?
2)我们用来对数据进行卷积的核已经在文献中定义了吗?这些内核是什么样的?每个应用程序都不同吗?
关于CNN,我有几个让我感到困惑的问题。
1)使用CNN提取的特征是缩放和旋转不变吗?
2)我们用来对数据进行卷积的核已经在文献中定义了吗?这些内核是什么样的?每个应用程序都不同吗?
Answers:
1)使用CNN提取的特征是缩放和旋转不变吗?
CNN中的要素本身不是缩放或旋转不变的。有关更多详细信息,请参阅:深度学习。伊恩·古德费洛(Ian Goodfellow)和约舒亚·本吉欧(Yoshua Bengio)和亚伦·库维尔(Aaron Courville)。2016年: http : //egrcc.github.io/docs/dl/deeplearningbook-convnets.pdf ; http://www.deeplearningbook.org/contents/convnets.html:
卷积与其他某些转换(例如图像的比例更改或旋转)自然不是等价的。处理这些类型的转换还需要其他机制。
最大池化层引入了这样的不变量:
2)我们用来对数据进行卷积的核已经在文献中定义了吗?这些内核是什么样的?每个应用程序都不同吗?
在ANN的训练阶段学习内核。
我认为有些事情使您感到困惑,所以首先要考虑的是第一件事。
给定信号和内核(也称为滤波器),则与的卷积被写为,并且是通过滑动点积计算的,数学上由下式给出:
以上对于一维信号来说,但对于仅是二维信号的图像也可以说相同。在这种情况下,等式变为:
从图片上看,这是正在发生的事情:
无论如何,要记住的是在训练深度神经网络(DNN)期间实际学习的内核。内核将成为您与输入进行卷积的对象。DNN将学习内核,从而使内核带出图像(或先前图像)的某些方面,这对于降低目标物镜的损失将是有益的。
这是要了解的第一个关键点:传统上,人们已经设计了内核,但是在深度学习中,我们让网络决定最佳内核。但是,我们要指定的一件事是内核尺寸。(这称为超参数,例如5x5或3x3等)。
包括杰弗里·欣顿(Geoffrey Hinton)(提出胶囊网)在内的许多作者都试图解决该问题,但从质量上讲。我们尝试定量解决此问题。通过使CNN中的所有卷积核对称(二面对称8 [Dih4]或90度增量旋转对称等),我们将为输入向量和每个卷积隐藏层上的结果向量旋转提供一个平台具有相同对称特性的同步(即Dih4或90增量旋转对称等)。另外,通过在第一平坦层上为每个滤波器具有相同的对称属性(即完全连接但权重相同的对称模式),每个节点上的结果值将在数量上相同,并导致CNN输出矢量相同也一样 我称其为“变换相同的CNN”(或TI-CNN-1)。还有其他方法也可以使用CNN内部的对称输入或操作(TI-CNN-2)来构造与变换相同的CNN。基于TI-CNN,可以通过多个TI-CNN构造齿轮旋转相同的CNN(GRI-CNN),输入矢量旋转一个小的步距角。此外,还可以通过将多个GRI-CNN与各种转换后的输入向量相结合来构造组成相同的定量CNN。
“通过对称元素算子进行的变换式相同且不变的卷积神经网络” https://arxiv.org/abs/1806.03636(2018年 6月)
“通过结合对称运算或输入向量来实现变形相同且不变的卷积神经网络” https://arxiv.org/abs/1807.11156(2018年 7月)
“齿轮旋转相同且不变的卷积神经网络系统” https://arxiv.org/abs/1808.01280(2018年 8月)