- 计算机视觉 -
有哪些提高卷积神经网络运算效率的方法?1、设计新的卷积神经网络训练策略目前卷积神经网络的训练是利用 BP 算法以整体监督方式进行学习的,通过采用某种方式的预训练(监督式或无监督式),可以为卷积神经网络提供一个较好的初始值,从而大大提高其整体上使用 BP 算法进行训练的收敛速度。2、使用 GPU 加速卷积运算过程基于 GPU 运算,通过撰写高效 C++ 代码实现卷积操作,可以将卷积操作速度提高 3~10 倍。3、使用并行计算提高网络训练和测试速度将一个大的卷积神经网络划分为几个小的子网络,再并行处理每个子网络中的运算过程,可以有效改善整个大网络的运算过程。4、采用分布式计算提高网络训练和测试速度该加速方式使用成千上万个运算节点,每个运算节点值完成整个网络计算中的很小一部分计算,通过调度节点为每个运算节点分配相应的计算任务,每个运算节点分别完成各自的计算任务,所有计算节点的计算任务都完成之后,调度节点再将每个计算节点的计算结果汇总融合。采用该加速方式,速度提高非常明显,可以完成一些以前几乎不能完成的网络训练任务,但主要问题是相关程序编制较为复杂,需要额外消耗较多的计算资源。5、硬件化卷积神经网络卷积神经网络成功应用于越来越多的实际问题之中,卷积神经网络中的卷积层和下采样层如果能够被硬件化,将会再次提高卷积神经网络的运行效率。
Faster R-CNN 的思想Faster R-CNN 可以简单地看做 “区域生成网络 RPNs + Fast R-CNN” 的系统,用区域生成网络代替 FastR-CNN 中的 Selective Search 方法。Faster R-CNN 这篇论文着重解决了这个系统中的三个问题:1. 如何
设计区域生成网络;2. 如何
训练区域生成网络;3. 如何让区域生成网络和 Fast RCNN 网络
共享特征提取网络。在整个 Faster R-CNN 算法中,有三种尺度:1. 原图尺度:原始输入的大小。不受任何限制,不影响性能。2. 归一化尺度:输入特征提取网络的大小,在测试时设置,源码中 opts.test_scale=600。anchor 在这个尺度上设定。这个参数和 anchor 的相对大小决定了想要检测的目标范围。3. 网络输入尺度:输入特征检测网络的大小,在训练时设置,源码中为 224*224。
R-CNN、Fast R-CNN、Faster R-CNN 三者比较
Fast R-CNN 框架与 R-CNN 有什么不同?① 最后一个卷积层后加了一个 ROI pooling layer;② 损失函数使用了 multi-task loss(多任务损失)函数,将边框回归直接加到 CNN 网络中训练。分类 Fast R-CNN 直接用 softmax 替代 R-CNN 用的 SVM 进行分类。Fast R-CNN 是端到端(end-to-end)的。
RCNN 如何实现目标检测?a. 在图像中确定约 1000-2000 个候选框b. 对于每个候选框内图像块,使用深度网络提取特征c. 对候选框中提取出的特征,使用分类器判别是否属于一个特定类d. 对于属于某一特征的候选框,用回归器进一步调整其位置更多细节可以参看这篇博客。
Fast RCNN 可以解决 RCNN 什么问题?
问题一:测试时速度慢RCNN 一张图像内候选框之间大量重叠,提取特征操作冗余。本文将整张图像归一化后直接送入深度网络。在邻接时,才加入候选框信息,在末尾的少数几层处理每个候选框。
问题二:训练时速度慢原因同上。在训练时,本文先将一张图像送入网络,紧接着送入从这幅图像上提取出的候选区域。这些候选区域的前几层特征不需要再重复计算。
问题三:训练所需空间大RCNN 中独立的分类器和回归器需要大量特征作为训练样本。本文把类别判断和位置精调统一用深度网络实现,不再需要额外存储。
faster rcnn,roi pooling 具体是如何工作的?(如何把不同大小的框,pooling 到同样的大小)RoIPool 首先将浮点数值的 RoI 量化成离散颗粒的特征图,然后将量化的 RoI 分成几个空间的小块(spatial bins),最后对每个小块进行 max pooling 操作生成最后的结果。
fine-tuning 的具体做法是?
使用方法 | 缺点 | 改进 | |
R-CNN(Region-based ConvolutionalNeural Networks) | 1、SS 提取 RP;2、CNN 提取特征;3、SVM 分类;4、BB 盒回归。 | 1、 训练步骤繁琐(微调网络 + 训练 SVM + 训练 bbox);2、 训练、测试均速度慢 ;3、 训练占空间 | 1、 从 DPM HSC 的 34.3% 直接提升到了 66%(mAP);2、 引入 RP+CNN |
Fast R-CNN(Fast Region-based ConvolutionalNeural Networks) | 1、SS 提取 RP;2、CNN 提取特征;3、softmax 分类;4、多任务损失函数边框回归。 | 1、 依旧用 SS 提取 RP (耗时 2-3s,特征提取耗时 0.32s);2、 无法满足实时应用,没有真正实现端到端训练测试;3、 利用了 GPU,但是区域建议方法是在 CPU 上实现的。 | 1、 由 66.9% 提升到 70%;2、 每张图像耗时约为 3s。 |
Faster R-CNN(Fast Region-based ConvolutionalNeural Networks) | 1、RPN 提取 RP;2、CNN 提取特征;3、softmax 分类;4、多任务损失函数边框回归。 | 1、 还是无法达到实时检测目标;2、 获取 region proposal,再对每个 proposal 分类计算量还是比较大。 | 1、 提高了检测精度和速度;2、 真正实现端到端的目标检测框架;3、 生成建议框仅需约 10ms。 |
- 复用相同层的权重,新定义层取随机权重初始值.
- 调大新定义层的的学习率,调小复用层学习率.
- 解决方法:减少权值的尝试,局部连接,权值共享
- 解决方法:采样窗口彼此重叠
计算机视觉常见面试题型介绍及解答
第一期 | 第二期 | 第三期 | 第四期 | 第五期
阿里算法岗位最新编程题介绍及解析
第一期 | 第二期 | 第三期 | 第四期 | 第五期 | 第六期 | 第七期