深度学习就是一个参数估计问题。
怎么选择每层的激活函数、怎么初始化权重矩阵、怎么选择损失函数、怎么确定最小化的目标函数(就是损失函数)
如何选择分类器,如何选择正则化项
生成模型 P?X” 和判别模型 P?YjX”
将传统的检测方法中的多步骤,网络化。合并成得到端到端的一个网络
把人工设计的特征自动学习出来。就算手动设计特征,也是需要反复调试的,深度学习的学习过程其实就相当于调试过程
中层次特征是根据底层特征(手工设计的特征)进行学习后得到的更鲁棒的高级特征
高层次的特征就是有语义信息的特征
目标检测中主要用得到是低层次和中层次的特征
two-stage:
回归是为了得到矩形框的位置,分类是为了得到类别
rpn网络就是滑动窗口, 覆盖面积 (完成区域的筛选和推荐)
ROI完成抠图(得到相应的 feature map)和resize(将特征图固定到固定大小)的操作
one-stage:
不包括rpn网络,速度更快,但精度相对低
有一个回归网络,cnn得到的特征图作为回归网络的输入
回归网络是最重要的一个组件,就是得到那个框的
anchor机制:经过主干网络卷积之后得到的特征图中的每个点都是一个anchor
yolo1没有anchor机制,是对整张图片分成很多小格子,对每个格子就行回归
yolo将坐标位置(检测框)及执行度 和 类别概率送入 NMS 中进行融合得到最后的输出
直接回归得到检测框的位置和类别
VGG是卷积神经网络的一种
这页ppt中第一个图,其实训练样本就是这样,有一个框
训练时:
prior box 是在原图像上的检测框
根据和样本匹配后得到的分数IOU分成正样本和负样本,中间段分数不参与计算损失函数
两个步骤进行正样本提取。
得到损失函数:
右边那个是:prior box层 下面是回归和分类层 最后是lose层
prior box层的输出作为后续lose层的计算
改进:
相加后得到后续的prior box层的输入,会得到更多的上下文的信息
预训练模型,得到模型的初始化参数
对主干网络进行改进:
改进:就是增加更复杂的连接方式
不同尺度可以通过pooling和反卷积得到相同的尺度(上采样)