在进行深度学习训练时,优化器会对模型的参数进行优化,以寻找到一组最优解。一个简单的卷积神经网络,可以分为卷积池化层和全连接层,全连接层中的参数可以用神经元连接的权重W来表示,而卷积层的参数往往是用卷积核参数来表示。
2D卷积
对于输入层为
W
i
n
×
H
i
n
×
D
i
n
W_{i n} \times H_{i n} \times D_{i n}
Win?×Hin?×Din?的特征图,输出为
W
out?
×
H
out?
×
D
out?
W_{\text {out }} \times H_{\text {out }} \times D_{\text {out }}
Wout??×Hout??×Dout??的卷积过程,其参数具体为以下几个:
超参数
- 卷积核个数:
k
k
k
- 卷积核维度:
w
×
h
w \times h
w×h
- 步长:
s
s
s
- padding:
p
p
p
其他参数
- 输入通道数:
D
i
n
D_{i n}
Din?
- 输出通道数:
D
o
u
t
D_{out}
Dout?
输入层和输出层之间的参数关系为:
W
out?
=
(
W
in?
+
2
p
?
w
)
/
s
+
1
H
out?
=
(
H
in?
+
2
p
?
h
)
/
s
+
1
D
out?
=
k
\begin{array}{l} W_{\text {out }}=\left(W_{\text {in }}+2 p-w\right) / s+1 \\ H_{\text {out }}=\left(H_{\text {in }}+2 p-h\right) / s+1 \\ D_{\text {out }}=k \end{array}
Wout??=(Win??+2p?w)/s+1Hout??=(Hin??+2p?h)/s+1Dout??=k? 参数量其实就是所有卷积核包含的参数的总和加上卷积核的个数,因此总参数量如下所示:
(
w
?
h
?
D
i
n
+
1
)
?
k
\left(w * h * D_{i n}+1\right) * k
(w?h?Din?+1)?k
3D卷积
3D卷积其实就是在2D卷积的基础上增加了一个卷积的维度,以卷积核为例,除去通道数,2D卷积一般是
t
×
t
t \times t
t×t二维的,而3D卷积则是
d
×
t
×
t
d \times t \times t
d×t×t三维的,增加的长度
d
d
d则用来在特征图增加的维度上进行卷积,因此其总体的参数也将发生变化。
对于输入层为
W
i
n
×
H
i
n
×
D
i
n
×
C
i
n
W_{i n} \times H_{i n} \times D_{i n}\times C_{in}
Win?×Hin?×Din?×Cin?的特征图(此时
C
i
n
C_{in}
Cin?为通道数),输出为
W
out?
×
H
out?
×
D
out?
×
C
i
n
W_{\text {out }} \times H_{\text {out }} \times D_{\text {out } \times C_{in}}
Wout??×Hout??×Dout?×Cin??的卷积过程,其参数具体为以下几个:
超参数
- 卷积核个数:
k
k
k
- 卷积核维度:
w
×
h
×
d
w \times h \times d
w×h×d
- 步长:
s
s
s
- padding:
p
p
p
其他参数
- 输入通道数:
C
i
n
C_{i n}
Cin?
- 输出通道数:
C
o
u
t
C_{out}
Cout?
输入层和输出层之间的参数关系为:
W
out?
=
(
W
in?
+
2
p
?
w
)
/
s
+
1
,
H
out?
=
(
H
in?
+
2
p
?
h
)
/
s
+
1
,
D
out?
=
(
D
in?
+
2
p
?
d
)
/
s
+
1
,
C
out?
=
k
\begin{array}{l} W_{\text {out }}=\left(W_{\text {in }}+2 p-w\right) / s+1, \\ H_{\text {out }}=\left(H_{\text {in }}+2 p-h\right) / s+1, \\ D_{\text {out }}=\left(D_{\text {in }}+2 p-d\right) / s+1, \\ C_{\text {out }}=k \end{array}
Wout??=(Win??+2p?w)/s+1,Hout??=(Hin??+2p?h)/s+1,Dout??=(Din??+2p?d)/s+1,Cout??=k? 参数量为:
(
w
×
h
×
d
×
C
i
n
+
1
)
?
k
(w \times h \times d \times C_{in}+1) * k
(w×h×d×Cin?+1)?k
ps:工作在不同通道上的卷积核的参数可以是不同的,因此2D卷积和3D卷积计算参数量时分别乘了
D
i
n
D_{in}
Din?和
C
i
n
C_{in}
Cin?。
Reference: https://www.zhihu.com/question/402674728
|