Fast RCNN 算法_面试版
参考链接:
Fast RCNN算法详解:https://blog.csdn.net/u014380165/article/details/72851319
【目标检测】Fast RCNN算法详解:https://blog.csdn.net/shenxiaolu1984/article/details/51036677
1、Fast RCNN 是什么
Fast RCNN 是通过使用选择性搜索算法来生成候选区域、卷积网络来提取特征、RoI 池化层来进行归一化、全连接层来进行预测的目标检测算法
2、Fast RCNN 模型的结构图

3、Fast FCNN 的 3 个步骤
第一步:使用选择性搜索算法来生成 2000 个候选区域
第二步:将原图输入到 CNN 网络中学习特征,生成特征图;然后将候选区域映射到特征图上,并输入到 RoI 池化层中,将候选区域分成 7*7 的网格,然后对每个网格使用最大池化,获得固定尺寸为 7*7 大小的输出,并输入到多层全连接层中
第三步:在第二步中的全连接层后,接并行的两个预测分支,分别预测分类得分和边框回归预测,并利用边框坐标回归值来校正候选区域坐标,最后生成预测坐标
4、Fast RCNN 改进了 RCNN 中的哪些缺点
① 将原图而不是候选区域输入到 CNN 网络中学习特征,避免了学习大量重复的特征
② 引入了 RoI 池化层来取代原来的候选区域归一化方法
③ 将分类得分分支和边框回归分支并行化,变成了多任务形式,使得模型可以同时利用分类回归的信息来更新参数
④ 除了生成候选区域阶段,其他阶段实现了端到端的形式,避免了存储和读取大量中间特征
5、Fast RCNN 的优点
参照 Fast RCNN 改进了 RCNN 中的哪些缺点
6、Fast RCNN 的缺点
仍然使用选择性搜索算法来生成候选区域
7、Fast RCNN 的损失函数是什么
Fast RCNN 的损失函数由分类得分损失和边框回归损失两部分组成,其中分类得分损失使用的是交叉熵,而边框回归损失使用的是 Smooth_L1
Fast RCNN 损失函数的表达式为:
假设 p 为分类得分预测结果,u 为类别标签,而 为边框坐标的真值,而 v 为边框坐标回归的预测值,
是多任务平衡系数,
表示只计算类别标签为 1 的边框损失值,则
8、Fast RCNN 是怎么采集正负样本数量的
假设批图片数量为 N,要选取的候选区域总数为 R,则每张图片要选取的候选区域数量为 ;而其中的 25% 候选区域为正样本,且正样本跟真值的 IoU 要大于 0.5