一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

算法 | 超Mask RCNN速度4倍,僅在單個(gè)GPU訓(xùn)練的實(shí)時(shí)實(shí)例分割算法

WpOh_rgznai100 ? 來源:YXQ ? 2019-06-11 10:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在論文《YOLACT:Real-time Instance Segmentation》中,作者提出了一種簡潔的實(shí)時(shí)實(shí)例分割全卷積模型,僅使用單個(gè) Titan Xp,以 33 fps 在MS COCO 上實(shí)現(xiàn)了 29.8 的 mAP,速度明顯優(yōu)于以往已有的算法。而且,這個(gè)結(jié)果是就在一個(gè) GPU 上訓(xùn)練取得的!

引言

一開始,作者提出了一個(gè)疑問:創(chuàng)建實(shí)時(shí)實(shí)例分割算法需要什么?

在過去的幾年中,在實(shí)例分割方向取得了很大進(jìn)展,部分原因是借鑒了物體檢測領(lǐng)域相關(guān)的技術(shù)。比如像 mask RCNN 和 FCIS 這樣的實(shí)例分割方法,是直接建立在像Faster R-CNN 和 R-FCN 這樣的物體檢測方法之上。然而,這些方法主要關(guān)注圖像性能,而較少出現(xiàn) SSD,YOLO 這類關(guān)注實(shí)時(shí)性的實(shí)例分割算法。因此,本文的工作主要是來填補(bǔ)這一空白。SSD 這類方法是將 Two-Stage 簡單移除成為 One-Stage 方法,然后通過其它方式來彌補(bǔ)性能的損失。而這類方法在實(shí)例分割領(lǐng)域擴(kuò)充起來卻并不容易,由于 Two-Stage 的方法高度依賴于特征定位來產(chǎn)生 mask,而這類方法不可逆。而 One-Stage 的方法,如 FCIS,由于后期需要大量的處理,因此也達(dá)不到實(shí)時(shí)。

YOLACT 介紹

基于此,作者在這項(xiàng)研究中提出一種放棄特征定位的方法——YOLACT(You Only Look At CoefficienTs)來解決實(shí)時(shí)性問題。

YOLACT 將實(shí)例分割分解為兩個(gè)并行任務(wù):(1)在整副圖像上生成非局部原型 mask 的字典;(2)為每個(gè)實(shí)例預(yù)測一組線性組合系數(shù)。 從這兩部分內(nèi)容生成全圖像實(shí)例分割的想法簡單:對(duì)于每個(gè)實(shí)例,使用預(yù)測的系數(shù)線性組合原型,然后用預(yù)測邊界框來 crop。作者通過這種方式來讓網(wǎng)絡(luò)學(xué)會(huì)如何定位實(shí)例mask本身,這些在視覺上,空間上和語義上相似的實(shí)例,在原型中卻不同。

作者發(fā)現(xiàn),由于這個(gè)過程不依賴于 repooling,因此此方法可以產(chǎn)生高質(zhì)量和高動(dòng)態(tài)穩(wěn)定性的 masks。盡管本文使用了全卷積網(wǎng)絡(luò)實(shí)現(xiàn),但模板 mask 可以自己在具有平移變換情況下對(duì)實(shí)例進(jìn)行定位。最后,作者還提出了 Fast NMS,這比標(biāo)準(zhǔn) NMS 的快12ms,并且性能損失很小。

這種方法有是三個(gè)優(yōu)點(diǎn):第一,速度非???。第二,由于沒使用類似“repool”的方法,mask的質(zhì)量非常高。第三,這個(gè)想法可以泛化。生成原型和mask系數(shù)的想法可以添加到現(xiàn)有的目標(biāo)檢測的算法里面。

算法

算法介紹

為了提高實(shí)例分割的速度,作者提出了一種快速、單階段的實(shí)例分割模型——YOLACT。主要思想是將 Mask 分支添加到單階段目標(biāo)檢測框架中。因此,研究人員將實(shí)例分割任務(wù)分解為兩個(gè)更簡單的并行任務(wù),將其組合以形成最終的 Mask。YOLACT 的網(wǎng)絡(luò)結(jié)構(gòu)圖如下圖所示。

作者將實(shí)例分割的復(fù)雜任務(wù)分解為兩個(gè)更簡單的并行任務(wù),這些任務(wù)可以組合以形成最終的 mask。 第一個(gè)分支使用 FCN 生成一組圖像大小的“原型掩碼”(prototype masks),它們不依賴于任何一個(gè)實(shí)例。第二個(gè)是給目標(biāo)檢測分支添加額外的 head ,用于預(yù)測每個(gè) anchor 的“掩碼系數(shù)”(mask coefficients)的向量,其中 anchor 是在編碼原型空間中的實(shí)例表示。最后,對(duì)經(jīng)過NMS后的每個(gè)實(shí)例,本文通過線性組合這兩個(gè)分支來為該實(shí)例構(gòu)造mask。

YOLACT 將問題分解為兩個(gè)并行的部分,利用 fc 層(擅長產(chǎn)生語義向量)和 conv 層(擅長產(chǎn)生空間相干掩模)來分別產(chǎn)生“掩模系數(shù)”和“原型掩?!?。因?yàn)樵秃脱谀O禂?shù)可以獨(dú)立地計(jì)算,所以 backbone 檢測器的計(jì)算開銷主要來自合成(assembly)步驟,其可以實(shí)現(xiàn)為單個(gè)矩陣乘法。通過這種方式,論文中的方法可以在特征空間中保持空間一致性,同時(shí)仍然是 One-Stage 和快速的。

原型生成

原型生成分支是預(yù)測整個(gè)圖像的一組K個(gè)原型 mask。采用 FCN 來實(shí)現(xiàn)protonet ,其最后一層有 k 個(gè) channels(每個(gè)原型一個(gè))并將其附加到 backbone 特征層。

掩碼系數(shù)(mask coefficients)

在實(shí)驗(yàn)中,YOLACT 為每個(gè)Anchor預(yù)測(4+C+k)個(gè)值,額外 k 個(gè)值即為 mask系數(shù)。另外,為了能夠通過線性組合得到 mask,很重要的一步是從最終的mask 中減去原型 mask。換言之,mask 系數(shù)必須有正有負(fù)。所以,在 mask系數(shù)預(yù)測時(shí)使用了 tanh 函數(shù)進(jìn)行非線性激活,因?yàn)?tanh 函數(shù)的值域是(-1,1)。

合成Mask

為了生成實(shí)例掩模,通過基本的矩陣乘法配合 sigmoid 函數(shù)來處理兩分支的輸出,從而合成 mask。

其中,P 是 h×w×k 的原型 mask 集合;C 是 n×k 的系數(shù)集合,代表有 n 個(gè)通過 NMS 和閾值過濾的實(shí)例,每個(gè)實(shí)例對(duì)應(yīng)有 k 個(gè) mask 系數(shù)。

Loss 設(shè)計(jì):Loss 由分類損失、邊界框回歸損失和 mask 損失三部分組成。其中分類損失和邊界框回歸損失同 SSD,mask 損失為預(yù)測 mask 和 ground truth mask 的逐像素二進(jìn)制交叉熵。

Mask 裁剪:為了改善小目標(biāo)的分割效果,在推理時(shí)會(huì)首先根據(jù)檢測框進(jìn)行裁剪,再閾值化。而在訓(xùn)練時(shí),會(huì)使用 ground truth 框來進(jìn)行裁剪,并通過除以對(duì)應(yīng) ground truth框面積來平衡 loss 尺度。

Emergent Behavior

在實(shí)例分割任務(wù)中,通常需要添加轉(zhuǎn)移方差。在 YOLACT 中唯一添加轉(zhuǎn)移方差的地方是使用預(yù)測框裁剪 feature map 時(shí)。但這只是為了改善對(duì)小目標(biāo)的分割效果,作者發(fā)現(xiàn)對(duì)大中型目標(biāo),不裁剪效果就很好了。

Backbone 檢測器

因?yàn)轭A(yù)測一組原型 mask 和 mask 系數(shù)是一個(gè)相對(duì)比較困難的任務(wù),需要更豐富更高級(jí)的特征,所以在網(wǎng)絡(luò)設(shè)計(jì)上,作者希望兼顧速度和特征豐富度。因此,YOLACT 的主干檢測器設(shè)計(jì)遵循了 RetinaNet 的思想,同時(shí)更注重速度。 YOLACT 使用 ResNet-101 結(jié)合 FPN 作為默認(rèn)主干網(wǎng)絡(luò),默認(rèn)輸入圖像尺寸為550×550,如上圖所示。使用平滑-L1 loss 訓(xùn)練 bounding box 參數(shù),并且采用和 SSD 相同的 bounding box 參數(shù)編碼方式。 使用 softmax 交叉熵訓(xùn)練分類部分,共(C+1)個(gè)類別。同時(shí),使用 OHEM 方式選取訓(xùn)練樣本,正負(fù)樣本比例設(shè)為 1:3. 值得注意的是,沒有像 RetinaNet 一樣采用 focal loss。

快速 NMS(fast NMS)

a.對(duì)每一類的得分前 n 名的框互相計(jì)算 IOU,得到 C*n*n 的矩陣X(對(duì)角矩陣),對(duì)每個(gè)類別的框進(jìn)行降序排列。

b.其次,通過檢查是否有任何得分較高的框與其 IOU 大于某個(gè)閾值,從而找到要?jiǎng)h除的框,通過將 X 的下三角和對(duì)角區(qū)域設(shè)置為 0 實(shí)現(xiàn)。這可以在一個(gè)批量上三角中實(shí)現(xiàn),之后保留列方向上的最大值,來計(jì)算每個(gè)檢測器的最大 IOU 矩陣 K。

c.最后,利用閾值 t(K

論文實(shí)驗(yàn)

作者在 MS COCO 的 test-dev 數(shù)據(jù)集上對(duì) YOLACT 和目前最好的方法進(jìn)行了性能對(duì)比。本文的關(guān)注點(diǎn)在于速度的提升,且所有實(shí)驗(yàn)都是在 Titan Xp 上進(jìn)行的,故一些結(jié)果和原文中的結(jié)果可能略有不同。

實(shí)驗(yàn)來驗(yàn)證本文模型在不同大小輸入圖像情況下的性能。除了基本的 550×550 模型,還有輸入為 400×400 和 700×700 的模型,相應(yīng)地也調(diào)整了 anchor 的尺寸(sx=s550/550*x s)。降低圖像大小會(huì)導(dǎo)致性能的大幅度下降,這說明越大的圖像進(jìn)行實(shí)例分割的性能越好,但提升圖像尺寸帶來性能提升的同時(shí)會(huì)降低運(yùn)行速度。

當(dāng)然作者還做了關(guān)于 Mask 質(zhì)量與視頻動(dòng)態(tài)穩(wěn)定性相關(guān)的對(duì)比實(shí)驗(yàn),并詳細(xì)分析了優(yōu)劣緣由。詳見論文。

總結(jié)

YOLACT 網(wǎng)絡(luò)的優(yōu)勢:快速,高質(zhì)量的 mask,優(yōu)良的動(dòng)態(tài)穩(wěn)定性。

YOLACT 網(wǎng)絡(luò)的劣勢:性能略低于目前最好的實(shí)例分割方法,很多由檢測引起的錯(cuò)誤,分類錯(cuò)誤和邊界框的位移等。

此外,作者最后還提到了該方法的一些典型錯(cuò)誤:

1)定位誤差:當(dāng)場景中一個(gè)點(diǎn)上出現(xiàn)多個(gè)目標(biāo)時(shí),網(wǎng)絡(luò)可能無法在自己的模板中定位到每個(gè)對(duì)象,此時(shí)將會(huì)輸出一些和前景 mask 相似的物體,而不是在這個(gè)集合中實(shí)例分割出一些目標(biāo)。

2)特征泄露(Leakage):網(wǎng)絡(luò)對(duì)預(yù)測的集成 mask 進(jìn)行了裁剪,但并未對(duì)輸出的結(jié)果進(jìn)行去噪。這樣一來,當(dāng)b-box 準(zhǔn)確的時(shí)候,沒有什么影響,但是當(dāng) b-box 不準(zhǔn)確的時(shí)候,噪聲將會(huì)被帶入實(shí)例 mask,造成一些“泄露”。

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

    關(guān)注

    28

    文章

    4940

    瀏覽量

    131197
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4709

    瀏覽量

    95336

原文標(biāo)題:超Mask RCNN速度4倍,僅在單個(gè)GPU訓(xùn)練的實(shí)時(shí)實(shí)例分割算法 | 技術(shù)頭條

文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    k210在線訓(xùn)練算法是yolo5嗎?

    k210在線訓(xùn)練算法是yolo5嗎
    發(fā)表于 06-16 08:25

    單片機(jī)項(xiàng)目實(shí)例:XPT2046觸摸屏芯片驅(qū)動(dòng)與校準(zhǔn)算法

    單片機(jī)項(xiàng)目實(shí)例:XPT2046觸摸屏芯片驅(qū)動(dòng)與校準(zhǔn)算法,推薦下載!

    改進(jìn)粒子群算法的永磁同步電機(jī)PID控制器

    采用粒子優(yōu)化算法進(jìn)行PID模糊控制訓(xùn)練能提高永磁同步電機(jī)的控制精度,提出一種基于改進(jìn)粒子群算法的永磁同步電機(jī) PID控制方法,構(gòu)建永磁同步電機(jī)PD模糊控制目標(biāo)畫數(shù),選擇電壓、轉(zhuǎn)矩、速度
    發(fā)表于 05-28 15:44

    實(shí)時(shí)生成步進(jìn)電機(jī)速度曲線

    一種用于步進(jìn)電機(jī)加速度的新算法可以實(shí)現(xiàn)速度曲線的實(shí)時(shí)參數(shù)化和計(jì)算。該算法可以在低端微控制器上運(yùn)行,只使用簡單的定點(diǎn)算術(shù)運(yùn)算并且不使用數(shù)據(jù)表。
    發(fā)表于 05-14 15:09

    RK3576 yolov11-seg訓(xùn)練部署教程

    yolov11-seg 是YOLO(You Only Look Once)系列的最新成員,專為實(shí)時(shí)實(shí)例分割任務(wù)設(shè)計(jì)。它在保持YOLO家族高效推理速度的同時(shí),通過創(chuàng)新的網(wǎng)絡(luò)結(jié)構(gòu)和
    的頭像 發(fā)表于 04-16 09:43 ?748次閱讀
    RK3576 yolov11-seg<b class='flag-5'>訓(xùn)練</b>部署教程

    無法轉(zhuǎn)換TF OD API掩碼RPGA模型怎么辦?

    無法轉(zhuǎn)換重新訓(xùn)練的 TF OD API 掩碼 RPGA 模型,該模型使用以下命令在 GPU 上工作: mo > --saved_model_dir
    發(fā)表于 03-06 06:44

    執(zhí)行“mask_rcnn_demo.exe”時(shí),無法找到帶有名稱的Blob:DetectionOutput是怎么回事?

    引用 將 ONNX* Mask R-CNN 模型轉(zhuǎn)換為 OpenVINO?文檔的中間表示。 已下載并轉(zhuǎn)換 mask_rcnn_R_50_FPN_1x 模型到 IR 執(zhí)行命令
    發(fā)表于 03-05 07:10

    網(wǎng)絡(luò)筆記分享-實(shí)時(shí)生成步進(jìn)電機(jī)速度曲線

    一種用于步進(jìn)電機(jī)加速度的新算法可以實(shí)現(xiàn)速度曲線的實(shí)時(shí)參數(shù)化和計(jì)算。該算法可以在低端微控制器上運(yùn)行,只使用簡單的定點(diǎn)算術(shù)運(yùn)算并且不使用數(shù)據(jù)表。
    發(fā)表于 03-04 21:17

    什么是BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法

    BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法(Backpropagation Algorithm)是一種用于訓(xùn)練神經(jīng)網(wǎng)絡(luò)的有效方法。以下是關(guān)于BP神經(jīng)網(wǎng)絡(luò)的反向傳播算法的介紹: 一、基本概念 反向傳播算法
    的頭像 發(fā)表于 02-12 15:18 ?763次閱讀

    華為云 Flexus X 實(shí)例部署安裝 Jupyter Notebook,學(xué)習(xí) AI,機(jī)器學(xué)習(xí)算法

    前言 由于本人最近在學(xué)習(xí)一些機(jī)器算法,AI 算法的知識(shí),需要搭建一個(gè)學(xué)習(xí)環(huán)境,所以就在最近購買的華為云 Flexus X 實(shí)例上安裝了學(xué)習(xí)環(huán)境,Jupyter Notebook。沒想到效果格外
    的頭像 發(fā)表于 01-02 13:43 ?530次閱讀
    華為云 Flexus X <b class='flag-5'>實(shí)例</b>部署安裝 Jupyter Notebook,學(xué)習(xí) AI,機(jī)器學(xué)習(xí)<b class='flag-5'>算法</b>

    GPU是如何訓(xùn)練AI大模型的

    在AI模型的訓(xùn)練過程中,大量的計(jì)算工作集中在矩陣乘法、向量加法和激活函數(shù)等運(yùn)算上。這些運(yùn)算正是GPU所擅長的。接下來,AI部落小編帶您了解GPU是如何訓(xùn)練AI大模型的。
    的頭像 發(fā)表于 12-19 17:54 ?733次閱讀

    【BearPi-Pico H3863星閃開發(fā)板體驗(yàn)連載】LZO壓縮算法移植

    算法特別注重解壓速度,其解壓操作非常迅速,幾乎不需要額外的內(nèi)存支持。這使得LZO非常適合對(duì)性能要求較高的場景,如實(shí)時(shí)系統(tǒng)或嵌入式設(shè)備。 壓縮效率 : 盡管LZO的壓縮速度可能不如某些其
    發(fā)表于 11-10 21:45

    PyTorch GPU 加速訓(xùn)練模型方法

    在深度學(xué)習(xí)領(lǐng)域,GPU加速訓(xùn)練模型已經(jīng)成為提高訓(xùn)練效率和縮短訓(xùn)練時(shí)間的重要手段。PyTorch作為一個(gè)流行的深度學(xué)習(xí)框架,提供了豐富的工具和方法來利用
    的頭像 發(fā)表于 11-05 17:43 ?1398次閱讀

    為什么ai模型訓(xùn)練要用gpu

    GPU憑借其強(qiáng)大的并行處理能力和高效的內(nèi)存系統(tǒng),已成為AI模型訓(xùn)練不可或缺的重要工具。
    的頭像 發(fā)表于 10-24 09:39 ?957次閱讀

    亞馬遜云科技宣布Amazon EC2 P5e實(shí)例正式可用 由英偉達(dá)H200 GPU提供支持

    1.7GPU內(nèi)存寬帶提升1.5。Amazon EC2 P5e非常適用于復(fù)雜的大型語言模型(LLM)和多模態(tài)基礎(chǔ)模型(FM)的訓(xùn)練、微調(diào)和推理,用于支持最苛刻和計(jì)算密集型的生成式A
    的頭像 發(fā)表于 09-19 16:16 ?878次閱讀