轻量级网络:mobilenetv1
神经网络在实际应用的问题
- 可解释性差(黑盒子)
- 没法微调(百分之99%,剩余的百分之1%没法更改)
- 内存和CPU使用较高
解决内存CPU高
- 二值化网络(Binary)
- 轻量级网络
- Mobilenets
- Shufflenet
- EffNet
mobilenetv1
亮点
- Depthwise separable convolution(输入通道独立卷积)
详解
普通卷积
输出层数 10层:
需要5*5*3 * 10
分离卷积
输出层10层
1*1*3 * 10
计算量比较
- 输出图像12*12*3
- 输出图像8*8*256
Convolution
卷积核大小 5*5*3 256个
数据量:5*5*3*256 =19200
计算量:8*8*5*5*3*256 =1228800
`
- 输出端的每个点 8*8
- 输出端的层数 256
- 每个点做的卷积运算(这里只算了乘法) 5*5*3
`
Depthwise separable convolution
第一步:卷积核大小 5*5*1. 3个
第二步:卷积核大小 1*1*3. 256个
数据量:5*5*1*3 + 1*1*3*256 = 843
计算量:5*5*1*3*8*8+8*8*1*1*3*256 = 53952
计算量对比公式
5 ∗ 5 ∗ 1 ∗ 3 ∗ 8 ∗ 8 + 8 ∗ 8 ∗ 1 ∗ 1 ∗ 3 ∗ 256 8 ∗ 8 ∗ 5 ∗ 5 ∗ 3 ∗ 256 \frac{5*5*1*3*8*8+8*8*1*1*3*256}{8*8*5*5*3*256} 8∗8∗5∗5∗3∗2565∗5∗1∗3∗8∗8+8∗8∗1∗1∗3∗256
1
256
+
1
5
∗
5
\frac{1}{256}+\frac{1}{5*5}
2561+5∗51
网络块
网络结构
第一层使用普通卷积
网络效果
参见论文