首页 > 编程知识 正文

论文算法代码不公开,论文文献阅读笔记

时间:2023-05-04 19:11:07 阅读:46698 作者:961

如有错误,恳请指出。

文章1.introduction2. revisit PP-yolo 2.1预处理2.2基线模型2.3 training schedule3. selectionofrefinements 3.1 pathatte erinputsize 3.4 iouawarebranch4. other try 4.1 cosinelearningratedecay 4.2 backboneparameterfreeezing

paper: qxdxl: A Practical Object Detector

代码: https://github.com/paddle paddle/paddle detection 3358 www.Sina.com /

对PP-YOLO进行了进一步的改良,在提高精度的同时保持了估计时间大致一定。 作者分析了一系列改进,通过分段烧蚀实验实证评价了其对最终模型性能的影响。 最后qxdxl实现了更好的性能(49.5 %映射) -速度(69FPS )的平衡,优于YOLOv4和YOLOv5。

PP-YOLO阅读笔记:目标检测算法——PP-YOLO

1. Introduction在各种实际应用中,不仅计算资源有限,而且由于缺乏软件支持,两级目标检测进展非常缓慢。 因此,如何在保持推理速度的同时提高YOLOv3的有效性是实用上的重要问题。 为了同时满足这两个问题,作者增加了一些改进。 这些改善几乎不增加估计时间,提高PP-YOLO的整体性能。

2.revisit PP-yolo 2.1预处理应用从beta((,) beta(,) beta(,) beta )分布采样的权重MixUp。 在此,=1.5,=1.5 =1.5,

然后RandomColorDistortion、RandomExpand、RandCrop、RandomFlip以0.5的概率依次应用。

然后对RGB通道进行归一化处理。

最后,从[320、352、384、416、448、480、512、544、576、608]中均匀地提取输入尺寸。

2.2 Baseline Model基准机型为PP-YOLO,是YOLOv3的改进版。 首先使用ResNet50-vd替换了YOLOv3的backbone,然后使用10种技巧提高了性能。

具体看:论文阅读笔记|目标检测算法——PP-YOLO

2.3训练调度在COCOtrain2017中使用随机梯度下降(SGD )训练网络,并使用分布在8个gpu中的96张图像的小批量进行500K迭代。 学习率在4K迭代时从0线性增加到0.005,在400K和450K迭代时分别除以10。 重量衰减设定为0.0005,运动量设定为0.9。 采用梯度裁剪稳定训练过程。

3 .优化选择qx dxl的示意性结构如图所示。

3.1 pathaggregationnetwork http://www.Sina.com /,以前曾多次提到,在此不再重复。

3.2 Mish Activation Function Mish激活函数在YOLOv4、YOLOv5等多种实际探针中均被证明有效。 它们在主干上采用了mish激活功能。 但是,作者喜欢使用事先训练好的参数。 因为有在ImageNet上达到top-1精度82.4%的强大模型。摘要:

3.3 Larger In

put Size

增加输入尺寸会扩大对象的面积。因此,小范围的目标信息将比以前更容易保存。因此,性能将得到提高。但是,较大的图像输入尺寸会占用更多的内存。要应用这个技巧,我们需要减少Batchsize。更具体地说,我们将Batchsize从每GPU 24张图像减少到每GPU 12张图像,并将最大输入尺寸从608扩大到768。

输入大小从[320、352、384、416、448、480、512、544、576、608、640、672、704、736、768]均匀绘制。

3.4 IoU Aware Branch

在PP-YOLO中,IoU aware loss采用的是软权重格式(soft weight format),与初衷不一致。因此作者采用软标签格式(soft label format)。公式为:
l o s s = − t ∗ log ⁡ ( σ ( p ) ) − ( 1 − t ) ∗ log ⁡ ( 1 − σ ( p ) ) loss = -t*log(σ(p))-(1-t)*log(1-σ(p)) loss=−t∗log(σ(p))−(1−t)∗log(1−σ(p))
其中t表示锚点和它匹配的ground-truth边界框之间的IoU,p是IoU感知分支的原始输出。ps:仅仅正样本的IoU损失进行了计算

IoU注意力的提出由来:

在YOLOv3中,将分类概率和目标得分相乘作为最终检测置信度,其中这没有考虑到定位精度。为了处理这个问题,论文中引入一个IoU预测分支。在训练过程中,使用感知IoU损失来训练这个分支。在推理阶段,最后的分类置信度由分类概率、目标分数和IoU值乘积得到。最终的检测置信度然后用作后续NMS的输入。

4. Other try

作者其实还尝试了其他的一些消融实验,但是没有效果,所以最后也没有使用这些技巧,这里还是记录一下比较好。

4.1 Cosine Learning Rate Decay

与线性步进学习率衰减不同,余弦学习率衰减是学习率的指数衰减。不过其对初始学习率、热身步数、结束学习率等超参数敏感,所以没有看见其对COCOtrain2017有一个积极影响。(但是对COCOminitrain产生了积极的作用)

4.2 Backbone Parameter Freezing

在对下游任务进行ImageNet预训练参数的微调时,通常会在前两个阶段冻结参数。然后这里同样是对COCOminitrain有效而对COCOtrain2017无效。

不一致现象的一个可能原因是两个训练集的大小不同,COCO minitrain2017是COCOtrain2017的五分之一。在小数据集上训练的参数的泛化能力可能比预先训练的参数差。

4.3 SiLU Activation Function

同样的SiLU,对COCOminitrain有效而对COCOtrain2017无效。所以使用Mish而不是SiLU。

5. Result 消融实验,各个在qxdxl中各个技巧带来的提升:
与SOTA的对比:

总结:

本文介绍了PP-YOLO的一些更新,形成了一个高性能的对象检测器PPYOLOv2。qxdxl比其他著名的探测器(如YOLOv4和YOLOv5)在速度和精度上取得了更好的平衡。在本文中,我们探索了一些技巧,并展示了如何将这些技巧结合到PPYOLO检测器上,并演示了它们的有效性。

总结,其实PP-YOLO系列几乎没有任何创新的,但通过实验结合技巧提升了检测性能。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。