1.SSD 分析(一)
SSD 分析(一)
研究论文《SSD: Single Shot MultiBox Detector》深入解析了SSD网络的源码训练过程,主要涉及从源码weiliu/caffe出发。源码首先,源码通过命令行生成网络结构文件train.prototxt、源码股市雷达指标公式源码test.prototxt以及solver.prototxt,源码执行名为VGG_VOC_SSD_X.sh的源码shell脚本启动训练。
网络结构中,源码前半部分与VGG保持一致,源码随后是源码fc、conv6到conv9五个子卷积网络,源码它们与conv4网络一起构成6个特征映射,源码redis 源码调试不同大小的源码特征图用于生成不同比例的先验框。每个特征映射对应一个子网络,源码生成的源码坐标和分类置信度信息通过concatenation整合,与初始输入数据一起输入到网络的源码最后一层。
特别提到conv4_3层进行了normalization,hive源码 阅读而前向传播的重点在于处理mbox_loc、mbox_loc_perm、mbox_loc_flat等层,这些层分别负责调整数据维度、重排数据和数据展平,flink源码分析以适应网络计算需求。mbox_priorbox层生成基于输入尺寸的先验框,以及根据特征图尺寸调整的坐标和方差信息。
Concat层将所有特征映射的预测数据连接起来,形成最终的c crm源码输出。例如,conv4_3_norm层对输入进行归一化,AnnotatedData层从LMDB中获取训练数据,包括预处理过的和对应的标注。源码中,通过内部线程实现按批加载数据并进行预处理,如调整图像尺寸、添加噪声、生成Sample Box和处理GT box坐标。
在MultiBoxLoss层,计算正负例的分类和坐标损失,利用softmax和SmoothL1Loss层来评估预测和真实标签的差异。最终的损失函数综合了所有样本的分类和坐标误差,为网络的训练提供反馈。