chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

簡單聊聊目標檢測新范式RT-DETR的骨干:HGNetv2

jf_pmFSk4VX ? 來源:GiantPandaCV ? 2023-04-27 09:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【前言】前幾天瘋狂刷屏的RT-DETR賺足了眼球,在精度和速度上體現(xiàn)的優(yōu)勢和性價比遠遠高于YOLO,而今年ChatGPT、Sam的出現(xiàn),也讓一些吃瓜群眾知乎CNN沒有未來了,今天的文章,我們簡單聊一聊RT-DETR的骨干網(wǎng)絡,HGNetv2。

一、RT-DETR橫空出世

前幾天被百度的RT-DETR刷屏,該提出的目標檢測新范式對原始DETR的網(wǎng)絡結構進行了調(diào)整和優(yōu)化,以提高計算速度和減小模型大小。這包括使用更輕量級的基礎網(wǎng)絡和調(diào)整Transformer結構。并且,摒棄了nms處理的detr結構與傳統(tǒng)的物體檢測方法相比,不僅訓練是端到端的,檢測也能端到端,這意味著整個網(wǎng)絡在訓練過程中一起進行優(yōu)化,推理過程不需要昂貴的后處理代價,這有助于提高模型的泛化能力和性能。

9288ca34-e494-11ed-ab56-dac502259ad0.png

當然,人們對RT-DETR之所以產(chǎn)生濃厚的興趣,我覺得大概率還是對YOLO系列審美疲勞了,就算是出到了YOLO10086,我還是只想用YOLOv5和YOLOv7的框架來魔改做業(yè)務。。

二、初識HGNet

看到RT-DETR的性能指標,發(fā)現(xiàn)指標最好的兩個模型backbone都是用的HGNetv2,毫無疑問,和當時的picodet一樣,骨干都是使用百度自家的網(wǎng)絡。初識HGNet的時候,當時是參加了第四屆百度網(wǎng)盤圖像處理大賽,文檔圖像方向識別專題賽道,簡單來說,就是使用分類網(wǎng)絡對一些文檔截圖或者圖片進行方向角度分類。

92c91e5e-e494-11ed-ab56-dac502259ad0.png

當時的方案并沒有那么快定型,通常是打榜過程發(fā)現(xiàn)哪個網(wǎng)絡性能好就使用哪個網(wǎng)絡做魔改,而且木有顯卡,只能蹭Ai Studio的平臺,不過v100一天8小時的實驗時間有點短,這也注定了大模型用不了。

92e9a584-e494-11ed-ab56-dac502259ad0.png

流水的模型,鐵打的煉丹人,最后發(fā)現(xiàn)HGNet-tiny各方面指標都很符合我們的預期,后面就一直圍繞它魔改。

當然,比賽打榜是目的,學習才是享受過程,當時看到效果還可以,便開始折騰起了HGNet的網(wǎng)絡架構,我們可以看到,PP-HGNet 針對 GPU 設備,對目前 GPU 友好的網(wǎng)絡做了分析和歸納,盡可能多的使用 3x3 標準卷積(計算密度最高),PP-HGNet是由多個HG-Block組成,細節(jié)如下:

93128274-e494-11ed-ab56-dac502259ad0.png

ConvBNAct是啥?簡單聊一聊,就是Conv+BN+Act,CV Man應該最熟悉不過了:

classConvBNAct(TheseusLayer):
def__init__(self,
in_channels,
out_channels,
kernel_size,
stride,
groups=1,
use_act=True):
super().__init__()
self.use_act=use_act
self.conv=Conv2D(
in_channels,
out_channels,
kernel_size,
stride,
padding=(kernel_size-1)//2,
groups=groups,
bias_attr=False)
self.bn=BatchNorm2D(
out_channels,
weight_attr=ParamAttr(regularizer=L2Decay(0.0)),
bias_attr=ParamAttr(regularizer=L2Decay(0.0)))
ifself.use_act:
self.act=ReLU()

defforward(self,x):
x=self.conv(x)
x=self.bn(x)
ifself.use_act:
x=self.act(x)
returnx

且標準卷積的數(shù)量隨層數(shù)深度增加而增多,從而得到一個有利于 GPU 推理的骨干網(wǎng)絡,同樣速度下,精度也超越其他 CNN ,性價比也優(yōu)于ViT-base模型。

93276482-e494-11ed-ab56-dac502259ad0.png

另外,我們可以看到:

  • PP-HGNet 的第一層由channel為96的Stem模塊構成,目的是為了減少參數(shù)量和計算量。PP-HGNet
  • Tiny的整體結構由四個HG Stage構成,而每個HG Stage主要由包含大量標準卷積的HG Block構成。
  • PP-HGNet的第三到第五層使用了使用了可學習的下采樣層(LDS Layer),該層group為輸入通道數(shù),可達到降參降計算量的作用,且Tiny模型僅包含三個LDS Layer,并不會對GPU的利用率造成較大影響.
  • PP-HGNet的激活函數(shù)為Relu,常數(shù)級操作可保證該模型在硬件上的推理速度。

三、再探HGNetv2

時隔半年,出世的RT-DETR又讓我關注起了這個網(wǎng)絡,而此時,HGNet已不叫HGNet,就像陳老師已經(jīng)不是當年的陳老師,阿珍也不是當初那片星空下的阿珍,現(xiàn)在升級換代變成了Pro版本。我們看看v2版本做了哪些變動?最基本的組成單元還是ConvBNAct不變,但該結構添加了use_lab結構,啥是use_lab結構,簡單來說就是類似于resnet的分支殘差,但是use_lab是使用在了純激活函數(shù)部分:

#refertohttps://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
classConvBNAct(nn.Layer):
def__init__(self,
in_channels,
out_channels,
kernel_size=3,
stride=1,
padding=1,
groups=1,
use_act=True,
use_lab=False,
lr_mult=1.0):
super().__init__()
self.use_act=use_act
self.use_lab=use_lab
self.conv=Conv2D(
in_channels,
out_channels,
kernel_size,
stride,
padding=padding
ifisinstance(padding,str)else(kernel_size-1)//2,
groups=groups,
bias_attr=False)
self.bn=BatchNorm2D(
out_channels,
weight_attr=ParamAttr(
regularizer=L2Decay(0.0),learning_rate=lr_mult),
bias_attr=ParamAttr(
regularizer=L2Decay(0.0),learning_rate=lr_mult))
ifself.use_act:
self.act=ReLU()
ifself.use_lab:
self.lab=LearnableAffineBlock(lr_mult=lr_mult)
#激活函數(shù)部分添加lab結構

同時,use_lab結構可以通過scale控制分流大?。?/p>

#refertohttps://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py
classLearnableAffineBlock(nn.Layer):
def__init__(self,
scale_value=1.0,
#scale設置分流占比
bias_value=0.0,
lr_mult=1.0,
lab_lr=0.01):
super().__init__()
self.scale=self.create_parameter(
shape=[1,],
default_initializer=Constant(value=scale_value),
attr=ParamAttr(learning_rate=lr_mult*lab_lr))
self.add_parameter("scale",self.scale)
self.bias=self.create_parameter(
shape=[1,],
default_initializer=Constant(value=bias_value),
attr=ParamAttr(learning_rate=lr_mult*lab_lr))
self.add_parameter("bias",self.bias)

defforward(self,x):
returnself.scale*x+self.bias

除此之外,相對于第一版,HGNetv2已摘除了ESE模塊,但提供了LightConvBNAct模塊,更加具體的內(nèi)容可參見:https://github.com/PaddlePaddle/PaddleDetection/blob/develop/ppdet/modeling/backbones/hgnet_v2.py

PP-HGNetv2的整體結構詳見下圖:

933aa286-e494-11ed-ab56-dac502259ad0.png

【結尾】 總體而言,HGNet還是一個比較低調(diào)的網(wǎng)絡,官方也沒有過多宣傳,但是好不好用,依舊還是使用者說了算,后續(xù)如果DETR變體可以在國內(nèi)常見的板端成熟落地,如瑞芯微,地平線,高通等芯片上適配,會給使用者帶來更多的選擇。


審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 網(wǎng)絡
    +關注

    關注

    14

    文章

    8327

    瀏覽量

    95546
  • 模型
    +關注

    關注

    1

    文章

    3810

    瀏覽量

    52253
  • ChatGPT
    +關注

    關注

    31

    文章

    1599

    瀏覽量

    10390

原文標題:簡單聊聊目標檢測新范式RT-DETR的骨干:HGNetv2

文章出處:【微信號:GiantPandaCV,微信公眾號:GiantPandaCV】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何使用Transformer來做物體檢測?

    導讀 本文為一個Facebook的目標檢測Transformer (DETR)的完整指南,詳細介紹了DETR架構的內(nèi)部工作方式以及代碼。 介紹 DEtection TRansforme
    的頭像 發(fā)表于 04-25 10:45 ?3407次閱讀
    如何使用Transformer來做物體<b class='flag-5'>檢測</b>?

    使用跨界模型Transformer來做物體檢測!

    這是一個Facebook的目標檢測Transformer (DETR)的完整指南。 介紹 DEtection TRansformer (DETR)是Facebook研究團隊巧妙地利
    的頭像 發(fā)表于 06-10 16:04 ?3046次閱讀
    使用跨界模型Transformer來做物體<b class='flag-5'>檢測</b>!

    解讀目標檢測中的框位置優(yōu)化

    目標檢測已經(jīng)有了長足的發(fā)展,總體來說根據(jù)階段個數(shù),可以劃分為Two-stage(Faster RCNN)、one-stage(SSD) 或者E2E(DETR)。根據(jù)是否基于anchor
    的頭像 發(fā)表于 06-21 17:40 ?3315次閱讀
    解讀<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>中的框位置優(yōu)化

    RT-DETR用114FPS實現(xiàn)54.8AP遠超YOLOv8

    最近,基于Transformer的端到端檢測器(DETR)已經(jīng)取得了顯著的性能。然而,DETR的高計算成本問題尚未得到有效解決,這限制了它們的實際應用,并使它們無法充分利用無后處理的好處,如非最大值抑制(NMS)。
    的頭像 發(fā)表于 04-20 09:59 ?2784次閱讀

    介紹RT-DETR兩種風格的onnx格式和推理方式

    RT-DETR是由百度近期推出的DETR-liked目標檢測器,該檢測器由HGNetv2、混合編
    的頭像 發(fā)表于 05-17 17:46 ?5513次閱讀
    介紹<b class='flag-5'>RT-DETR</b>兩種風格的onnx格式和推理方式

    Focus-DETR:30%Token就能實現(xiàn)SOTA性能,效率倍增

    目前 DETR 類模型已經(jīng)成為了目標檢測的一個主流范式。但 DETR 算法模型復雜度高,推理速度低,嚴重影響了高準確度
    的頭像 發(fā)表于 08-02 15:12 ?2068次閱讀
    Focus-<b class='flag-5'>DETR</b>:30%Token就能實現(xiàn)SOTA性能,效率倍增

    一種新型的DETR輕量化模型Focus-DETR

    作者對多個 DETR檢測器的 GFLOPs 和時延進行了對比分析,如圖 1 所示。從圖中發(fā)現(xiàn),在 Deformable-DETR 和 DINO 中,encoder 的計算量分別是 decoder
    的頭像 發(fā)表于 08-02 15:34 ?1878次閱讀
    一種新型的<b class='flag-5'>DETR</b>輕量化模型Focus-<b class='flag-5'>DETR</b>

    華為諾亞提出全新目標檢測器Focus-DETR

    為實現(xiàn)模型性能和計算資源消耗、顯存消耗、推理時延之間的平衡,F(xiàn)ocus-DETR 利用精細設計的前景特征選擇策略,實現(xiàn)了目標檢測高相關特征的精確篩選;繼而,F(xiàn)ocus-DETR 進一步
    的頭像 發(fā)表于 08-02 15:43 ?1397次閱讀
    華為諾亞提出全新<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>器Focus-<b class='flag-5'>DETR</b>

    DETR架構的內(nèi)部工作方式分析

    這是一個Facebook的目標檢測Transformer (DETR)的完整指南。 ? 介紹 DEtection TRansformer (DETR)是Facebook研究團隊巧妙地利
    的頭像 發(fā)表于 08-30 10:53 ?2140次閱讀
    <b class='flag-5'>DETR</b>架構的內(nèi)部工作方式分析

    基于OpenVINO Python API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎上進行改進的,一種基于 DETR 架構的實時端到端檢測器,它通過使用一系列新的技術和算法,實現(xiàn)了更高效的訓練和推理,我們將在 Python、C+
    的頭像 發(fā)表于 10-20 11:15 ?2498次閱讀
    基于OpenVINO Python API部署<b class='flag-5'>RT-DETR</b>模型

    第一個基于DETR的高質(zhì)量通用目標檢測方法

    現(xiàn)有的DETR系列模型在非COCO數(shù)據(jù)集上表現(xiàn)較差,且預測框不夠準確。其主要原因是:DETR檢測頭中用全局交叉注意力替換了原來的卷積,刪除了以中心為中心的先驗知識;另一方面,DETR
    的頭像 發(fā)表于 11-01 16:12 ?1550次閱讀
    第一個基于<b class='flag-5'>DETR</b>的高質(zhì)量通用<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>方法

    基于OpenVINO C++ API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎上進行改進的,一種基于 DETR 架構的實時端到端檢測器,它通過使用一系列新的技術和算法,實現(xiàn)了更高效的訓練和推理,在前文我們發(fā)表了《基于 Op
    的頭像 發(fā)表于 11-03 14:30 ?2416次閱讀
    基于OpenVINO C++ API部署<b class='flag-5'>RT-DETR</b>模型

    基于OpenVINO C# API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎上進行改進的,一種基于 DETR 架構的實時端到端檢測器,它通過使用一系列新的技術和算法,實現(xiàn)了更高效的訓練和推理,在前文我們發(fā)表了《基于 Op
    的頭像 發(fā)表于 11-10 16:59 ?1996次閱讀
    基于OpenVINO C# API部署<b class='flag-5'>RT-DETR</b>模型

    百度開源DETRs在實時目標檢測中勝過YOLOs

    這篇論文介紹了一種名為RT-DETR的實時檢測Transformer,是第一個實時端到端目標檢測器。
    的頭像 發(fā)表于 03-06 09:24 ?4056次閱讀
    百度開源DETRs在實時<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>中勝過YOLOs

    OpenVINO? Java API應用RT-DETR目標檢測器實戰(zhàn)

    本文將從零開始詳細介紹環(huán)境搭建的完整步驟,我們基于英特爾開發(fā)套件AIxBoard為硬件基礎實現(xiàn)了Java在Ubuntu 22.04系統(tǒng)上成功使用OpenVINO? Java API,并且成功運行了RT-DETR實現(xiàn)實時端到端目標檢測
    的頭像 發(fā)表于 03-18 15:04 ?2907次閱讀
    OpenVINO? Java API應用<b class='flag-5'>RT-DETR</b>做<b class='flag-5'>目標</b><b class='flag-5'>檢測</b>器實戰(zhàn)