【DL】常用卷积核 1x1, 3x3

Backto DL Index

列举几个常用的卷积核

1x1

conv: k(1,1) 经常出现,乍一看无用,其实非常巧妙。如果仅从二维(H, W)考虑,确实无用。但实际上,在 CNN 中,必然还有着潜藏的维度 – 深度/Channels ©。这才是 1x1 起作用的地方: feature dimension reduction/increation。按照 PyTorch 中 (N, C, H, W) 的顺序,N=1 忽略, D i n p u t = ( C , H , W ) D_{input} = (C, H, W) Dinput=(C,H,W), 接一个包含 X 个 ( C , 1 , 1 ) (C,1,1) (C,1,1)卷积核的卷积层, 则 D o u t p u t = ( X , H , W ) D_{output} = (X, H, W) Doutput=(X,H,W), 成功的把特征维度从 C C C 变到 X X X. 一般放在前面,用于升维, 放在中间,用于降维。特别的,当 1x1 卷积放到 CNN 尾部的时候,可以代替 FC 层. k ( 1 , 1 ) − c 1 − s 1 k(1,1)-c1-s1 k(1,1)c1s1 就是一个 regression layer, k ( 1 , 1 ) − c X − s 1 k(1,1)-cX-s1 k(1,1)cXs1 就是一个 X-classification layer.

3x3

想必是用的最多的卷积核了,尤其是在 VGG 中。

Ref

  • https://stackoverflow.com/questions/39366271/for-what-reason-convolution-1x1-is-used-in-deep-neural-networks

你可能感兴趣的:(DL)