神经网络基本概念

在看神经网络方面的文章时,文中有很多专业名词,在网上看了大家的理解后记录于此。


AP(average precision)平均正确率

一种衡量结果的标准。


FPN(feature pyramid networks)特征金字塔网络

原来多数的object detection算法都是只采用顶层特征做预测,但我们知道低层的特征语义信息比较少,但是目标位置准确;高层的特征语义信息比较丰富,但是目标位置比较粗略。另外虽然也有些算法采用多尺度特征融合的方式,但是一般是采用融合后的特征做预测,FPN不一样的地方在于预测是在不同特征层独立进行的。


ResNet(residual network)残差网络

为解决“随着网络加深,梯度消失的现象越来越明显,准确率下降”的问题。

Resnet提供了两种选择方式,也就是identity mapping和residual mapping,如果网络已经到达最优,继续加深网络,residual mapping将被push为0,只剩下identity mapping,这样理论上网络一直处于最优状态了,网络的性能也就不会随着深度增加而降低了。


分割误差

分割误差为mask rcnn中新加的。mask rcnn中的损失函数为分类误差+检测误差+分割误差。

对于每一个m*m大小的ROI区域,mask分支有一个K*m*m维的输出,K是指所有的类别(例如PASCAL VOC一共20个类别,加上背景,一共21个类别,K=21)。对于每一个像素,都是用sigmod函数求二值交叉熵(即对每个像素都进行逻辑回归),得到平均的二值交叉熵误差Lmask。对于每一个ROI,如果检测得到ROI属于哪一个分类(分类是由faster rcnn的classification确定的),就只使用哪一个分支的交叉熵误差作为误差值进行计算。也就是一个ROI区域中K*m^2的输出,真正有用的只是某个类别的m^2的输出。(举例说明:分类有3类(猫,狗,人),检测得到当前ROI属于“人”这一类,那么所使用的Lmask为“人”这一分支的mask。)这样的定义使得我们的网络不需要去区分每一个像素属于哪一类,只需要去区别在这个类当中的不同分别小类。


RPN(Region Proposal Network)区域推荐网络

提取候选目标边界框


FCN(Fully Convolutional Networks)全卷积网络

FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semantic segmentation)问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类(全联接层+softmax输出)不同,FCN可以接受任意尺寸的输入图像,采用反卷积层对最后一个卷积层的feature map进行上采样, 使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测, 同时保留了原始输入图像中的空间信息, 最后在上采样的特征图上进行逐像素分类。


Region Proposal:

是一类传统的区域提取方法,可以看作不同宽高的滑动窗口,通过窗口滑动获得潜在的目标图像,关于Proposal大家可以看下SelectiveSearch,一般Candidate选项为2k个即可


ROIAlign:

在MASK RCNN中用来替代ROI Pooling层,将候选区域大小归一化,采用双线性插值法。映射后点的坐标不一定是整数,如(1.2,3.4),这时用双线性插值法来计算该点的像素值为:

神经网络基本概念_第1张图片

这里,i=1,j=3,u=0.2,v=0.4。是取该点周围四个点的加权和。


图像掩码操作:

是指通过掩码核算子重新计算图像中各个像素的值,掩码核算子刻画邻域像素点对新像素值的影响程度,同时根据掩码算子中权重因子对像素点进行加权平均。图像掩码操作常用于图像平滑、边缘检测、特征分析等区域。


你可能感兴趣的:(深度学习)