为啥RCNN用SVM做分类而不直接用CNN全连接之后softmax输出
因为svm和cnn训练过程中正负样本标准不同(svm的正样本的IOU比较高),好像有说如果使用cnn softmax输出比采用svm精度还低。
cnn在训练的时候,对训练数据标注大概是这样的:为了保证训练不被过拟合,就需要得到足够多的训练数据,当bounding box可能只包含物体的一部分,也会它标注为正样本,用于训练cnn,这时候正样本的数目通常会大于SVM时的样本数目。
而svm训练的时候,由于svm这类方法适用于少样本训练,所以作者会把bounding box包括整个物体大部分时(大概是IOU为0.7),我们才把它标注为物体类别,然后训练svm。
■网友
先从动机来讲一讲:因为自己是做hyperspectra land cover的分类的,所以可能会更多的从遥感影像角度出发. SVM 作为线性分类机器学习方法中的经典,其动机是寻找最优的支持向量来构建分割平面,当问题进步到multiclass的分类时,核方法的引入帮助SVM把线性不可分的数据映射到更高层次的超平面空间中从而使数据达到线性可分,但是归根结底无论是线性svm还是核方法SVM的分类精度都主要依赖于数据中位于分割平面的一部分支持向量。然而反观softmax也就是CNN方法中用于分类的逻辑回归层,它是基于回归的原则,LR的损失函数也是得自于一个考虑了全局数据的自概率模型,这里关于概率模型就不再多说了。
所以到这里你应该可以看到,SVM与 LR很大的一个区别就是:SVM的性能主要受支持向量的影响,而LR考虑全局数据的同时分类超平面也会收到每一个样本的干扰。
所以我们可以认为当数据的特征feature处于一个线性不可分的状态的时候,SVM与LR是从两个不同的角度去解决了同一个分类问题,这也在许多的文献中得到了认证,中山大学的Jun Li教授就是做LR及其相关分类器的专家,小boss Pedram 则是SVM的专家(高光谱领域哈)。但是要注意CNN所连接的LR与单纯的LR的区别就在于CNN在训练的同时就会趋于提取样本中feature 的 signature特征,也就是说CNN的卷积过程在训练的过程中就是一个对线性不可分的数据增加其线性可分程度的过程。这一观点在哈工大Yushi chen的论文中也得到过验证。最后问题来了,当CNN的feature提取生效之后,原本线性不可分的分类样本趋于线性可分的时候,SVM 只利用部分支持向量样本的分类原则的优势就能够得到进一步展现。当然 machine learning可以从原理上预测性能,但是还是要结果说话。就我个人而言,我得到的ck svm数据融合的精度要高于单纯的DNN LR 精度。一点点自己的心得,希望各位大神指正!
■网友
谢邀!CNN训练的时候,需要比较多的样本,所以将重叠IOU大于0.5的标记为了正样本,小于0.5标记为负样本。这样的标注导致直接使用CNN分类效果并不好,mAP从54.2%降到了50.9%,而使用SVM分类就不需要这么多样本了,所以就可以对训练数据有更加严格的标注,分类效果更好一点。另外,softmax是在随机采样的背景样本上进行训练,而SVM采用的则是hard-negative mining,这提高了分类准确度。
■网友
究其原因一句话就是“SVM和对预训练的网络做调优两个阶段使用的正负样本标准不同”。下面谈下作者的整个思路:刚开始只是用了ImageNet 预训练了CNN,并用提取的特征训练了SVMs,此时用正负样本标记方法的IoU阈值为0.3(小于0.3的为负样本,正样本为严格的Ground Truth), 后来刚开始使用fine-tuning时,也使用了这个方法,但是发现结果很差,于是通过调试选择了阈值为 0.5,作者认为这样可以加大样本的数量,从而避免过拟合。然而,IoU大于0.5就作为正样本会导致网络定位准确度的下降,故使用了SVM来做检测,全部使用ground-truth样 本作为正样本,且使用非正样本的,且IoU小于0.3的“hard negatives”,提高了定位的准确度
推荐阅读
- 为啥看到书柜上的藏书会有心旷神怡的感觉
- 为啥知乎上普便有一种【我在北上广深打工,所以拥有更好的视野】这样的错觉
- 为啥工商银行的用户体验如此之差
- 汽车|看了中消协4S店服务测评调查结果,终于知道法系车为啥卖不好了
- 你为啥从窝窝商城离职?
- 为啥5G和2.4G默认的BSSID是相同的
- 为啥电器实体店的价格比淘宝贵那么多
- 现在在线学习视频有很多了,为啥大部分人还是喜欢下载下来观看
- 为啥到现在你还没有女朋友 ?
- 天赐的声音|33岁张雨绮为啥总离婚?看过这些照片就明白了,都是性感惹得祸
