<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          (附代碼)Kaggle競賽中使用YoloV5將物體檢測的性能翻倍的心路歷程

          共 2374字,需瀏覽 5分鐘

           ·

          2021-05-22 11:44

          全網(wǎng)搜集目標(biāo)檢測文章,人工篩選最優(yōu)價(jià)值知識,避免垃圾信息轟炸


          編者薦語
          文章介紹了作者在kaggle比賽中使用YoloV5從建立基線到一步一步的優(yōu)化過程,最終將performance提升了一倍,非常好的競賽經(jīng)驗(yàn)總結(jié)文章。
          轉(zhuǎn)載自 | AI公園

          作者 | Mostafa Ibrahim

          編譯 | ronghuaiyang


          我花了三個(gè)月的時(shí)間深入研究物體檢測。我嘗試了很多方法,從實(shí)現(xiàn)最先進(jìn)的模型,如YoloV5、VFNets、DETR,到將目標(biāo)檢測模型與圖像分類模型融合以提高性能。在比賽的早期階段,我努力提高基準(zhǔn)模型的分?jǐn)?shù),但我找不到有用的在線資源,這就是我寫這篇文章的原因。我想帶你們踏上一段從頭到尾的旅程,簡要地向你們展示我所走的每一步,我的成績幾乎翻了一倍。

          官方的競賽指標(biāo)是(mean) Average Precision,這是最常用的目標(biāo)檢測指標(biāo)之一。為了向你展示每一步的進(jìn)步,我將在旁邊加上它的分?jǐn)?shù)。

          1、第一步是建立一個(gè)簡單的基線,0.126 mAP

          我敢肯定,這是大量數(shù)據(jù)科學(xué)家早前落入的陷阱。我們總是很興奮地用我們能想到的每一種技術(shù)來做最復(fù)雜的模型。這是一個(gè)巨大的錯(cuò)誤,你最終會(huì)感到沮喪并離開ML項(xiàng)目,即使你不這樣做,你也很可能會(huì)過擬合。

          我經(jīng)歷了慘痛的教訓(xùn),但最終還是用以下規(guī)范構(gòu)建了一個(gè)初始模型:

          • YoloV5-XL
          • 圖像的分辨率從3K調(diào)整為512

          我知道這聽起來很簡單,一開始我也是這么想的。但是,實(shí)際上,構(gòu)建基線可能是最煩人的步驟之一。因?yàn)橛泻芏嗖襟E,比如將輸出處理成競賽的格式等等(我不想深入討論)。

          另外,我實(shí)際的初始YoloV5-XL模型只有0.064(上面的一半),我花了2周的時(shí)間調(diào)試它,結(jié)果發(fā)現(xiàn)我沒有正確地歸一化輸入數(shù)據(jù)!

          2、去掉一個(gè)輸入類別!0.143 mAP (+13%)

          這個(gè)trick當(dāng)時(shí)對我來說沒有多大意義。14個(gè)輸入類別,13種不同疾病,1個(gè)“No Finding”類別。大約70%的數(shù)據(jù)集屬于“No Finding”類,只有30%屬于其他類。有個(gè)參賽者發(fā)現(xiàn),你可以去掉這個(gè)類,并使用“2 class filter”技巧來預(yù)測它(見下文)。這使得數(shù)據(jù)集的傾斜度大大降低。此外,它允許訓(xùn)練明顯更快(因?yàn)槟銓⒂?xùn)練更少的圖像)。

          3、增加訓(xùn)練和推理圖像的分辨率,0.169 mAP (+18%)

          第二步是將圖像分辨率從512提高到1024。這是一個(gè)微不足道的改進(jìn),但我想在這里傳達(dá)的重點(diǎn)是,如果我以這個(gè)分辨率開始,我可能不會(huì)進(jìn)一步提高我的分?jǐn)?shù)。原因很簡單,因?yàn)樵谶@個(gè)更高的分辨率上進(jìn)行訓(xùn)練會(huì)導(dǎo)致批大小從16減少到4(為了不耗盡GPU內(nèi)存),這大大減慢了訓(xùn)練過程。這意味著更慢的實(shí)驗(yàn),你不會(huì)想用更慢的實(shí)驗(yàn)來比賽……

          4、融合EfficientNet和YoloV5,0.196 mAP (+16%)

          這不是我的主意,我是從一個(gè)public kernel中得到的想法。但是,這是我在Kaggle比賽中遇到的最好的主意之一。我想強(qiáng)調(diào)的是,在Kaggle上進(jìn)行比賽的一個(gè)主要好處是你可以從社區(qū)中學(xué)到很多東西。

          這里的主要思想是訓(xùn)練一個(gè)圖像分類模型(EfficientNet),它可以實(shí)現(xiàn)非常高的AUC(約0.99),并找到一種方法將其與目標(biāo)檢測模型融合。這被稱為“2 class filter”,比賽中的每個(gè)人都采用了這個(gè)方法,因?yàn)樗蟠筇岣吡朔謹(jǐn)?shù)。我會(huì)在下一篇文章中介紹。

          5、加權(quán)框融合(WBF)后處理,0.226 mAP (+15%)

          這對我來說也是一個(gè)全新的想法,在網(wǎng)上很難找到。加權(quán)框融合是一種對目標(biāo)檢測模型產(chǎn)生的框進(jìn)行過濾,從而使結(jié)果更加準(zhǔn)確和正確的技術(shù)。它的性能超過了現(xiàn)有的類似方法,如NMS和soft-NMS。具體內(nèi)容我會(huì)在另一篇文章介紹。

          應(yīng)用WBF的結(jié)果是這樣的:

          6、用5折交叉驗(yàn)證使用WBF融合,0.256 mAP (+13%)

          我犯過的一個(gè)最大的錯(cuò)誤是我忘記做交叉驗(yàn)證,這也是我寫這篇文章的主要原因之一,就是為了強(qiáng)調(diào)ML基礎(chǔ)知識的重要性。我太專注于應(yīng)用新技術(shù)和提高性能,以至于忘記了應(yīng)用這個(gè)基本的ML技術(shù)。

          如果你想知道我是如何得到0.256的,那是因?yàn)槲易x了一些在競賽結(jié)束后發(fā)布的解決方案,這是在類似于我的模型的交叉驗(yàn)證后他們大多數(shù)能得到的結(jié)果。最終的pipeline可以在這里看到:

          7、我嘗試過的其他的東西,但是沒有成功

          1. DETR訓(xùn)練。DETR是一個(gè)了不起的目標(biāo)檢測transformer ,我想把它實(shí)踐,但是,我沒有發(fā)現(xiàn)他們提供的代碼文檔有什么幫助,我也找不到很多有用的資源。此外,我花了大約3周的時(shí)間(大約是比賽持續(xù)時(shí)間的四分之一)嘗試讓它工作。我這么說的原因是,雖然離開你一直在研究的解決方案可能很難,但在實(shí)驗(yàn)性ML的世界里,這有時(shí)不得不做,說實(shí)話,我希望我可以早一點(diǎn)離開。但是,好的一面是,我發(fā)現(xiàn)另一個(gè)名為MMDetection的庫提供了DETR,而且使用起來容易得多。
          2. WBF預(yù)處理,雖然很多競爭對手都說這提高了他們的分?jǐn)?shù),但并沒有提高我的分?jǐn)?shù)。這就是ML的特點(diǎn),并不是所有的技術(shù)都能以同樣的方式使不同的模型受益。

          我最終的代碼:https://github.com/mostafaibrahim17/VinBigData-Chest-Xrays-Object-detection-


          ?------------------------------------------------


          雙一流高校研究生團(tuán)隊(duì)創(chuàng)建 ↓

          專注于目標(biāo)檢測原創(chuàng)并分享相關(guān)知識 ?


          整理不易,點(diǎn)贊三連!

          瀏覽 59
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  影音先锋女人av鲁色资源网小说 | 久久婷婷五月天综合 | 亚洲综合在线一区 | 久久九九免费视频 | 丰滿人妻一区二区三区 |