||
附加:
(1)block、tile、margin和cell的区别
概念就不赘述了,直接上图,简单易懂!
引自:https://blog.csdn.net/ywcpig/article/details/79758710
论文中(Multi-Range Attentive Bicomponent Graph Convolutional Network for Traffic Forecasting),在公式里遇到concatenation operation,不知道是什么,大致的意思应该是把向量中对应位置加起来吧,但是不能确定。
在网上找关于concatenation的描述,没有找到,后来实际操作一翻,才发现其实是将新向量拼接到原来的向量之后,对应着维数增加,代码实例,比如:
import numpy as np
a = np.array([[1, 2], [3, 4]])
print(a.shape)
b = np.array([[5, 6]])
print(b.shape)
c= np.concatenate((a, b))
print(c)
输出:
(2, 2)
(1, 2)
[[1 2]
[3 4]
[5 6]]
(3, 2)
为了加深理解,如下进一步说明,以GoogLeNet为例:
上图为GoogLeNet的示意图。从左往右看,这个网络依然是一层一层的排布结构,但是在每一层上又有好几个组成部分,也就是说这个网络的宽度就不是1了。
Inception:串接(concatenation),下图所示的inception结构是GoogLeNet的基本组成部分:
我们可以看到在inception结构中有1x1的卷积、3x3的卷积、5x5的卷积、3x3的池化等等。相当于原来只有一层,而我们现在有了多层并将结果串接起来。对此的直观理解可以是:我们的卷积层在提取特征时究竟采用几x几的卷积核效果最好是比较难确定的,于是我们在这里把各种卷积核的大小都进行尝试。
这里特别讲一下看似没有意义的1x1的卷积,之前已经提到过,卷积层不仅有长和宽,它是一个三维的概念。我们的图像可能不止有一个通道,例如我们常见的RGB色彩模式,就有三个通道,卷积操作实际上会把每个通道的计算结果进行叠加,所以1x1的卷积并非是无意义的操作。
假设s和t是两个有相同维数(或不同维数:前提是利用numpy广播功能)的向量。那么我们用s⊙t来表示两个向量的对应元素(elementwise)相乘。因此s⊙t的元素(s⊙t)j=sjtj。
点滴分享,福泽你我!Add oil!
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-10 07:17
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社