CNN
cnn 特点 优势
- 局部卷积 有利于提取局部特征
- 权值共享 更少的参数量 容易操作
- pooling层 降维,低层次特征提取出高层次特征
- 多层级结构 可建模出复杂模型
pooling 层作用
- invariance(不变性),这种不变性包括translation(平移),rotation(旋转),scale(尺度)
- 保留主要的特征同时减少参数(降维,效果类似PCA)和计算量,防止过拟合,提高模型泛化能力
Parameters、FLOPs
对于一个卷积层,假设 kernel 大小为 H ′ ∗ W ′ H' * W' H′∗W′ , C i n C_{in} Cin为input channel, C o u t C_{out} Cout为output channel,输出的feature map尺寸为 h ′ ∗ w ′ h' * w' h′∗w′,则该卷积层的
-
Parameters(参数量)
每个卷积核的大小= H ′ ∗ W ′ ∗ C i n H' * W' * C_{in} H′∗W′∗Cin
一共有 C o u t C_{out} Cout个卷积核,加上 C o u t C_{out} Cout个bias
Parameters= ( H ′ ∗ W ′ ∗ C i n + 1 ) ∗ C o u t (H' * W' * C_{in}+1)*C_{out} (H′∗W′∗Cin+1)∗Cout -
FLOPs(floating point operations 浮点运算量)
每个卷积核的大小= H ′ ∗ W ′ ∗ C i n H' * W' * C_{in} H′∗W′∗Cin
每个卷积核运算次数 乘&加 = ( H ′ ∗ W ′ ∗ C i n ) + ( H ′ ∗ W ′ ∗ C i n − 1 ) (H' * W' * C_{in})+(H' * W' * C_{in}-1) (H′∗W′∗Cin)+(H′∗W′∗Cin−1)
= 2 ∗ ( H ′ ∗ W ′ ∗ C i n ) − 1 2*(H' * W' * C_{in})-1 2∗(H′∗W′∗Cin)−1
一个卷积核的运算次数为 h ′ ∗ w ′ h' * w' h′∗w′,一共有 C o u t C_{out} Cout个卷积核,加上 C o u t C_{out} Cout个biasFLOPS= ( h ′ ∗ w ′ ) ∗ ( 2 ∗ ( H ′ ∗ W ′ ∗ C i n ) − 1 + 1 ) ∗ C o u t (h' * w')*(2*(H' * W' * C_{in})-1+1)*C_{out} (h′∗w′)∗(2∗(H′∗W′∗Cin)−1+1)∗Cout
= ( h ′ ∗ w ′ ) ∗ ( 2 ∗ ( H ′ ∗ W ′ ∗ C i n ) ∗ C o u t =(h' * w')*(2*(H' * W' * C_{in})*C_{out} =(h′∗w′)∗(2∗(H′∗W′∗Cin)∗Cout
反向传播
- conv 层
- pooling 层
2.1 平均池化(Mean Pooling) 平均分Err
2.2 最大池化(Max Pooling) 记录最大/最小下标 传给该下标
感受野(Receptive Field)
即该层Feature Map上像素点映射到原图像时的区域大小
如何计算? 根据Conv 公式倒推
正向计算公式
H
i
+
1
=
(
H
i
−
K
e
r
+
2
∗
P
a
d
)
/
S
t
r
i
+
1
H_{i+1}=(H_i-Ker+2*Pad)/Stri+1
Hi+1=(Hi−Ker+2∗Pad)/Stri+1
忽略padding(padding是后来虚拟加上去的,这里要算的是原图像对一个像素点的影响范围,所以计算的是真实的原图像像素量,不用管padding)
H
i
=
(
H
i
+
1
−
1
)
∗
S
t
r
i
+
K
e
r
H_{i}=(H_{i+1}-1)*Stri+Ker
Hi=(Hi+1−1)∗Stri+Ker
该层
H
i
=
1
H{i}=1
Hi=1,向前递推即可
不同损失函数
- Cross entropy 逻辑回归
二分类 BCELoss/BCEWithLogitsLoss(+sigmoid)
多分类 = NLLloss/ CrossEntropyLoss(内嵌softmax)
p
i
c
=
s
o
f
t
m
a
x
(
x
i
c
)
=
e
x
p
(
x
i
c
)
∑
c
e
x
p
(
x
i
j
)
p_{ic}=softmax(x_{ic})=\frac{exp(x_{ic})}{\sum_c exp(x_{ij})}
pic=softmax(xic)=∑cexp(xij)exp(xic)
- 均方差 MSE 线性回归
- focal loss
- 降低易分类样本权重
原BCEloss
focal:
- 减小负样本比重
权重因子的大小一般为相反类的比重
推广到多分类?
1x1 卷积作用
- 实现跨通道的交互和信息整合;
- 进行卷积核通道数的降维和升维
扩大图像尺寸
- unpooling
保留max pooling位置信息,其他位置填0 - upsample
不保留位置信息,同样块填相同值 - 反卷积
做padding后卷积得到指定尺寸的图像
- 原始conv没有pad
- 原始conv有pad