日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

PP-yoloE论文的理解

發(fā)布時間:2024/1/1 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PP-yoloE论文的理解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

1.簡單回顧PP-YOLOv2

2.本文的貢獻(xiàn)

2.1?anchor free

2.2 Backbone and Neck

2.2.1 ESE的原始架構(gòu)?

2.3?TAL和T-head

2.3.1?TAL

2.4 Efficient Task-aligned Head(ET-head)?

2.4.1?varifocal loss (VFL)

2.4.2?distribution focal loss(DFL)

3. 實驗

3.1 與sota檢測器相比

涉及到的論文


出自:百度 2022.44.2

論文:https://arxiv.org/pdf/2203.16250.pdf

代碼:https://github.com/PaddlePaddle/PaddleDetection

?PP-YOLOE的整體框架圖:

1.簡單回顧PP-YOLOv2

論文:https://arxiv.org/abs/2104.10419

代碼:https://github.com/paddlepaddle/paddledetection

主干ResNet50-vd,deformable convolution,PAN neck with SPP layer and DropBlock【7】,lightweight IOU aware head。 主干激活使用relu,neck 激活使用mish。 loss函數(shù)有分類loss,回歸loss和目標(biāo)loss,且PP-yolov2使用了IoU loss和Iou aware loss;

2.本文的貢獻(xiàn)

①anchor-free

②powerful backbone and neck equipped with CSPRepResStage

③ET-head

④TAL動態(tài)label assign

2.1?anchor free

原因:基于anchor的方法摻雜太多人工設(shè)定,且同一組anchor參數(shù)無法適用于所有數(shù)據(jù)集;

細(xì)節(jié):anchor free方法參考FCOS【25】,PPYOLOE中的anchor free方法,主要就是將之前anchor base中預(yù)測相較于anchor的xywh,改進(jìn)為預(yù)測ltrb(left,top,right,bottom),并將ltrb結(jié)果乘上當(dāng)前特征圖的stride。

結(jié)果:速度略有提升,且ap下降0.3;

2.2 Backbone and Neck

提出了RepResBlock:

使用了resdiual connections和dense connection,將這種模塊用于backbone和neck中;

參考TreeBlock【20】,作者提出了RepResBlock,訓(xùn)練階段如fig3(b),推理階段如圖3(c),簡化的TreeBlock如fig3(a),將concat替換成element-wise add operation就得到了fig3(b)作者的backbone命名為CSPRepResBlock,包括三個卷積和四個RepResBlock,如fig3(d) 通過ESE(Effective Squeeze and Extraction) layer施加通道注意力。?

2.2.1 ESE的原始架構(gòu)?

SE(Squeeze-and-Excitation(SE))結(jié)構(gòu):

?

ESE結(jié)構(gòu):

區(qū)別:se有兩個fc,ese只有一個fc;

2.3?TAL和T-head

物體檢測方法的2個局限性: ? ?

①分類和定位的獨立性。分類和定位一般用的是2個獨立的分支,這樣使得2個任務(wù)之間缺乏交互,在預(yù)測的時候就會出現(xiàn):得分高的預(yù)測位置不準(zhǔn),位置準(zhǔn)的預(yù)測得分不高。 ?

?②任務(wù)無關(guān)的樣本分配:對于分類最優(yōu)的anchor和對于定位最優(yōu)的anchor往往并不是同一個。

解決辦法:TOOD提出任務(wù)對齊頭(Task-aligned head, T-head)和新的任務(wù)對齊學(xué)習(xí)(Task-aligned Learning, TAL)來更明確地對齊兩個任務(wù); 操作流程:首先,T-head對FPN特征進(jìn)行預(yù)測。然后,計算每個定位點的任務(wù)對齊度量,TAL根據(jù)此度量為T-head生成學(xué)習(xí)信號。最后,T-head對分類和定位的分布進(jìn)行相應(yīng)的調(diào)整。其中,最對齊的錨通過概率圖prob (probability map)獲得更高的分類得分,通過學(xué)習(xí)偏移獲得更準(zhǔn)確的錨框預(yù)測。

2.3.1?TAL

Task Alignment Learning:為了進(jìn)一步指導(dǎo)T-Head做出與任務(wù)對齊的預(yù)測提出TAL。

它包括一個分配策略和新?lián)p失的函數(shù);

分配策略 ①Task-aligned Sample Assignment:

1)對齊良好的錨點應(yīng)能聯(lián)合精確定位預(yù)測出較高的分類分?jǐn)?shù);

2)不對齊的錨應(yīng)具有較低的分類評分,并隨后予以抑制。

②Anchor alignment metric:分類得分和IoU的高階組合來衡量任務(wù)對齊程度,?

?

其中:s和u分別表示分類分?jǐn)?shù)和IOU值

③Training sample assignment:選擇t值最大的m個錨點為正樣本,而使用其余的錨點作為負(fù)樣本;?

損失函數(shù)

t^是對t的歸一化

2.4 Efficient Task-aligned Head(ET-head)?

解決的點:分類和定位的任務(wù)沖突 ? ?

YOLOX使用了decopled head 該方法的缺點:導(dǎo)致分類任務(wù)和定位任務(wù)分離,使得兩個任務(wù)獨立; 缺乏特定任務(wù)學(xué)習(xí);

解決方法:參考TOOD【5】,優(yōu)化得到ET-head 改進(jìn)點: ?

?①相比較TOOD,使用ESE block替換layer attention。 ? ?

②分類分支添加了shortcut。 ? ?

③分類分支使用varifocal loss (VFL),優(yōu)點:這種實現(xiàn)使得iou高的正樣本對損耗的貢獻(xiàn)相對較大,促使模型更加關(guān)注高質(zhì)量樣本; ?

?④回歸分支使用distribution focal loss(DFL)。

最終loss:

結(jié)果:map提升0.5;

2.4.1?varifocal loss (VFL)

focal loss:

其中a用來均衡正負(fù)樣本的權(quán)重,y為gt,前景類的預(yù)測概率p∈[0,1],(1-p)的r次和p的r次用來調(diào)制每個樣本的權(quán)重。使困難樣本有更高的權(quán)重; VFL從focal loss中借鑒了樣本加權(quán)思想來解決類不平衡問題;

VFL loss:

其中p是預(yù)測的IACS(分類)得分,q是目標(biāo)IoU得分。 對于訓(xùn)練中的正樣本,將q設(shè)置為生成的bbox和gt box之間的IoU;而對于負(fù)樣本,q為0。

2.4.2?distribution focal loss(DFL)

參考:《Generalized Focal Loss: Learning Qualified and Distributed Bounding Boxes for Dense Object Detection》 -清華大學(xué),南京大學(xué) https://blog.csdn.net/qq_52302919/article/details/125304230 ? https://zhuanlan.zhihu.com/p/310229973?

3. 實驗

實驗數(shù)據(jù):MS COCO-2017(80個類別,118000張圖片)

數(shù)據(jù)處理細(xì)節(jié):random crop,random horizontal filp,color distortion,和multi-scale;

參數(shù)設(shè)置細(xì)節(jié):SGD,momentum=0.9,weight decay=5e-4,cosine learning rate schedule,epochs=300,warmup epochs=5,base learning rate=0.01,batch size=64;exponential moving average(EMA) 硬件設(shè)備:8*32G V100 GPU

3.1 與sota檢測器相比

科普性相關(guān)信息

一文看懂Label Assignment--標(biāo)簽分配最新論文總結(jié) - 知乎

涉及到的論文

《Bag of Tricks for Image Classification with Convolutional Neural Networks》

可學(xué)習(xí)的各種訓(xùn)練策略(文中用于分類):

1.學(xué)習(xí)率的調(diào)整

當(dāng)batch_size=256時,初始化lr=0.1,當(dāng)batch_size=b,則學(xué)習(xí)率調(diào)整為

? ?

如:b=128,

2.學(xué)習(xí)率熱身效應(yīng)

在訓(xùn)練初期使用較小的學(xué)習(xí)率進(jìn)行熱身,逐漸增大到設(shè)置的學(xué)習(xí)率,則前m個batches使用warm up使用的學(xué)習(xí)率:

? ? ,1<=i<=qm

3.使的網(wǎng)絡(luò)初始階段更容易訓(xùn)練

Zero γ(可查看原文)

4.只對卷積層和全連接層的weight的weights使用weight decay

在SGD中優(yōu)化中相當(dāng)于L2正則,作者認(rèn)為并不是所有的參數(shù)weight decay;

5.其他策略

(使用廣泛,不一一細(xì)講了):

1.提升模型的訓(xùn)練速度,FP16和FP32的混合訓(xùn)練;

2.ResNet網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化;

3.Cosine Learning Rate Decay;

4.Label Smoothing

5.Knowledge Distillation

6.Mixup Training

參考:https://www.jianshu.com/p/02a76ac73d48

《Dropblock:A regularization method for convolutional networks:Advaces in neural information process system》

dropblock:一種正則化方法,在ImageNet分類任務(wù)中,使用Resnet-50精度提升了1.6%個點,在coco檢測任務(wù)中,精度提升了1.6%。

SPP layer :將不同尺寸使用max pooling輸出為固定長度的尺寸

Relu激活:又稱為修正線性單元(Rectified Linear Unit),是一種分段線性函數(shù),其彌補(bǔ)了sigmoid函數(shù)以及tanh函數(shù)的梯度消失問題。

函數(shù):

ReLU函數(shù)的優(yōu)點:
1. 在輸入為正數(shù)的時候(對于大多數(shù)輸入 z 空間來說),不存在梯度消失問題。
2. 計算速度要快很多。ReLU函數(shù)只有線性關(guān)系,不管是前向傳播還是反向傳播,都比sigmod和tanh要快很多。(sigmod和tanh要計算指數(shù),計算速度會比較慢)
ReLU函數(shù)的缺點:
當(dāng)輸入為負(fù)時,梯度為0,會產(chǎn)生梯度消失問題。

參考鏈接:https://zhuanlan.zhihu.com/p/139696588

mish激活:

一種自正則的非單調(diào)神經(jīng)激活函數(shù),平滑的激活函數(shù)允許更好的信息深入神經(jīng)網(wǎng)絡(luò),從而得到更好的準(zhǔn)確性和泛化。根據(jù)論文實驗,該函數(shù)在最終準(zhǔn)確度上比Swish(+0.494%)和ReLU(+ 1.671%)都有提高。

函數(shù):

圖形來自于:https://wenku.baidu.com/view/9cbad2976adc5022aaea998fcc22bcd126ff4236.html?

IOU loss的使用:

標(biāo)檢測任務(wù)的損失函數(shù)由Classificition Loss和Bounding Box Regeression Loss兩部分構(gòu)成。

Bounding Box Regression Loss Function的演進(jìn)路線是:
Smooth L1 Loss --> IoU Loss --> GIoU Loss --> DIoU Loss --> CIoU Loss

Iou loss提出前,大家主要通過4個坐標(biāo)點獨立回歸Bounding box(bbox,邊界框),這樣做的缺點有:

目標(biāo)檢測的評價方式是使用IoU,而實際回歸坐標(biāo)框的時候使用4個坐標(biāo)點,二者是不等價的,如下圖所示;
L1或者L2 Loss相同的框,其IoU 不是唯一的
通過4個坐標(biāo)點回歸坐標(biāo)框的方式,是假設(shè)4個點相互獨立的,沒有考慮其相關(guān)性,實際4個坐標(biāo)點具有一定的相關(guān)性
基于L1和L2的距離的loss對于尺度 不具有 不變性
————————————————
版權(quán)聲明:本文為CSDN博主「尋找永不遺憾」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_45377629/article/details/124911293

?《Fcos:Fully convolutional one-stage object detection》

提出的無anchor的網(wǎng)絡(luò)結(jié)構(gòu):

分類使用fcoal loss,回歸使用iou loss;center-ness大小為0-1,用BCE loss計算。用于抑制FCOS產(chǎn)生的低質(zhì)量的bbox,尤其是那些離目標(biāo)中心較遠(yuǎn)的locations?;

residual connections:

殘差鏈接主要是為了解決梯度消失問題;

dense connections :

密集連接主要是使用更多的感受野擴(kuò)大中間特征;

總結(jié)

以上是生活随笔為你收集整理的PP-yoloE论文的理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。