【1】全连接层换成卷积
好处:全连接层使得输入维度固定,替换成卷积可以输入任意大小的数据,适合检测分割等任务。
【2】inception中的1x1卷积核使用
好处(转):
(1)卷积层共有的一个功能,可以实现通道方向的降维和增维,至于是降还是增,取决于卷积层的通道数(滤波器个数),在Inception v1中1*1卷积用于降维,减少weights大小和feature map维度。
(2)1*1卷积特有的功能,由于1*1卷积只有一个参数,相当于对原始feature map做了一个scale,并且这个scale还是训练学出来的,无疑会对识别精度有提升。
(3)增加了网络的深度
(4)增加了网络的宽度
(5)同时使用了1*1,3*3,5*5的卷积,增加了网络对尺度的适应性
假设previous layer的大小为28*28*192
a.weights.size() = 1*1*192*64+3*3*192*128+5*5*192*32=387072
a.feature map.size() = 28*28*64+28*28*128+28*28*32+28*28*192=28*28*416
b.weights.size() = 1*1*192*64+(1*1*192*96+3*3*96*128)+(1*1*192*16+5*5*16*32)+1*1*192*32=163328
b.feature map.size() = 28*28*64+28*28*128+28*28*32+28*28*32=28*28*256
在参数和特征图上都相应减少了
【3】总是记不住系列的mAP
![P = \frac{TP}{TP+FP}](https://i-blog.csdnimg.cn/blog_migrate/51ea668aff905ee9f712cd6cb296c21f.png)
而 召回率(recall)是针对我们原来的 样本而言的,它表示的是样本中的正例有多少被预测正确了。那也有两种可能,一种是把原来的正类预测成正类(TP),另一种就是把原来的正类预测为负类(FN)。
![R = \frac{TP}{TP+FN}](https://i-blog.csdnimg.cn/blog_migrate/926d14285aaf0d23bbc9bd28840bb351.png)
假设我们手上有60个正样本,40个负样本,我们要找出所有的正样本,系统查找出50个,其中只有40个是真正的正样本,计算上述各指标。
- TP: 将正类预测为正类数 40
- FN: 将正类预测为负类数 20
- FP: 将负类预测为正类数 10
- TN: 将负类预测为负类数 30
准确率(accuracy) = 预测对的/所有 = (TP+TN)/(TP+FN+FP+TN) = 70%
精确率(precision) = TP/(TP+FP) = 80%
召回率(recall) = TP/(TP+FN) = 2/3
【4】Residual block