欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

[YOLO Learning] YOLOv2 详解-4.YOLOV2 培训

最编程 2024-10-07 07:12:35
...

 YOLOv2 训练分为三个阶段:

 第一阶段:第一阶段就是先在 ImageNet 分类数据集上预训练 Darknet-19,此时模型输入为 224×224,共训练 160 个 epochs。

 第二阶段:将网络的输入调整为 448x448,继续在 ImageNet 数据集上 finetune 分类模型,训练 10 个 epochs,此时分类模型的 top-1 准确度为 76.5%,而 top-5 准确度为 93.3%。

 第三阶段:修改 Darknet-19 分类模型为检测模型,并在检测数据集上继续 finetune 网络。网络修改包括:移除最后一个卷积层、global avgpooling 层以及 softmax 层,并且新增了三个 3×3×1024 卷积层,同时增加了一个 passthrough 层,最后使用 1×1 卷积层输出预测结果,输出的 channels 数为:num_anchors × (5 + num_classes),和训练采用的数据集有关系。

 由于 anchors 数为 5,对于 VOC 数据集输出的 channels 数就是 125,而对于 COCO 数据集则为 425。这里以 VOC 数据集为例,最终的预测矩阵为 T(shape为(batch_size, 13, 13, 125)),可以 reshape 到(batch_size, 13, 13, 5, 25),其中 T[:, :, :, :,0:4] 为预测框的位置和大小,T[:, :, :, :,5] 为预测框的置信度,T[:, :, :, :,5:] 为类别预测值。

在这里插入图片描述