Objektų aptikimas, kaip viena iš pagrindinių kompiuterinio matymo programų, tampa vis svarbesnis scenarijuose, kuriems reikalingas didelis tikslumas, tačiau turintys ribotus skaičiavimo išteklius, pavyzdžiui, robotika ir automobiliai be vairuotojo. Deja, daugelis šiuolaikinių didelio tikslumo detektorių neatitinka šių apribojimų. Dar svarbiau tai, kad realaus pasaulio objektų aptikimo programos veikia skirtingose platformose, kurioms dažnai reikia skirtingų išteklių.
Taigi natūralus klausimas yra tai, kaip sukurti tikslius ir efektyvius objektų detektorius, kurie taip pat galėtų prisitaikyti prie daugybės išteklių apribojimų?
„EfficientDet“: „Scalable and Efficient Object Detection“, priimtas „CVPR 2020“, pristato naują keičiamų ir efektyvių objektų detektorių šeimą. Remiantis ankstesniu darbu, susijusiu su neuroninių tinklų mastelio keitimu („EfficientNet“) ir įtraukiant naują dvikryptį funkcinį tinklą („BiFPN“) ir naujas masto keitimo taisykles, „EfficientDet“pasiekia šiuolaikinį tikslumą, tuo tarpu 9 kartus mažesnis ir naudoja žymiai mažiau skaičiavimų nei žinomi šiuolaikiniai detektoriai. Šiame paveikslėlyje parodyta bendra modelių tinklo architektūra.
Modelio architektūros optimizavimas
„EfficientDet“idėja kyla iš pastangų ieškoti sprendimų, kaip pagerinti skaičiavimo efektyvumą, sistemingai tiriant ankstesnius pažangiausius aptikimo modelius. Apskritai objektų detektoriai turi tris pagrindinius komponentus: pagrindą, kuris išgauna ypatybes iš duoto vaizdo; objektų tinklas, kuris ima iš stuburo kelių lygių funkcijas kaip įvestį ir pateikia kombinuotų funkcijų, kurios atspindi charakteringas vaizdo charakteristikas, sąrašą; ir galutinį klasės / dėžutės tinklą, kuris naudoja kombinuotas funkcijas, kad numatytų kiekvieno objekto klasę ir vietą.
Peržiūrėję šių komponentų projektavimo galimybes nustatėme keletą pagrindinių optimizavimo būdų, kaip pagerinti našumą ir efektyvumą. Ankstesni detektoriai dažniausiai naudoja „ResNets“, „ResNeXt“arba „AmoebaNet“kaip pagrindus, kurie yra mažiau galingi arba mažesnio efektyvumo nei „EfficientNets“. Pradžioje įdiegus „EfficientNet“pagrindą, galima pasiekti daug daugiau efektyvumo. Pavyzdžiui, pradedant „RetinaNet“bazine linija, kurioje naudojamas „ResNet-50“pagrindas, mūsų abliacijos tyrimas rodo, kad paprasčiausias „ResNet-50“pakeitimas „EfficientNet-B3“gali pagerinti tikslumą 3%, o skaičiavimą sumažinti 20%. Kitas optimizavimas yra pagerinti funkcinių tinklų efektyvumą. Nors dauguma ankstesnių detektorių tiesiog naudoja „Downlink Pyramid Network“(FPN), mes pastebime, kad žemyn esantis FPN iš esmės apsiriboja vienpusiu informacijos srautu. Alternatyvūs FPN, pvz., „PANet“, prideda papildomų sąnaudų prieš papildomą skaičiavimą.
Naujausi bandymai naudoti „Neural Architecture Search“(NAS) atrado sudėtingesnę NAS-FPN architektūrą. Nors ši tinklo struktūra yra efektyvi, ji taip pat yra netaisyklinga ir labai optimizuota konkrečiai užduočiai atlikti, todėl sunku prisitaikyti prie kitų užduočių. Norėdami išspręsti šias problemas, siūlome naują dviejų krypčių funkcijų tinklą „BiFPN“, kuris įgyvendina daugiasluoksnių funkcijų iš FPN / PANet / NAS-FPN derinimo idėją, leidžiančią perduoti informaciją iš viršaus į apačią ir iš apačios į viršų. naudojant reguliarius ir efektyvius ryšius.
Norėdami dar labiau pagerinti efektyvumą, siūlome naują greitai normalizuotą sintezės metodiką. Tradiciniai metodai paprastai traktuoja visus įnašus į FPN net ir skirtingomis rezoliucijomis. Tačiau mes pastebime, kad skirtingos skiriamosios gebos įvesties funkcijos dažnai nevienodai prisideda prie išvesties funkcijų. Taigi kiekvienai įvesties funkcijai pridedame papildomą svorį ir leidžiame tinklui išmokti kiekvienos jų svarbą. Mes taip pat pakeisime visas įprastas konvulsijas pigesnėmis, giliai atskiriamomis konvulsijomis. Dėl šios optimizacijos mūsų BiFPN dar labiau pagerina tikslumą 4%, o skaičiavimo išlaidas sumažina 50%.
Trečiasis optimizavimas apima geriausią kompromisą tarp tikslumo ir efektyvumo esant įvairiems išteklių apribojimams. Ankstesni mūsų darbai parodė, kad tinklo gylio, pločio ir skiriamosios gebos mastelio keitimas gali žymiai pagerinti vaizdo atpažinimą. Įkvėpti šios idėjos, mes siūlome naują objektų detektorių sudėtinį mastelio keitimo metodą, kuris kartu padidina skiriamąją gebą / gylį / plotį. Kiekvienas tinklo komponentas, ty pagrindas, objektas ir blokinis / klasės nuspėjamasis tinklas, turės vieną sudėtingą mastelio koeficientą, kuris valdys visus mastelio matmenis, naudodamasis euristinėmis taisyklėmis. Šis metodas leidžia lengvai nustatyti, kaip modeliuoti mastelį, apskaičiuojant tam tikro tikslinio išteklių suvaržymo mastelio koeficientą.
Sujungdami naują pagrindą ir „BiFPN“, pirmiausia suprojektuojame nedidelę „EfficientDet-D0“bazinę liniją, o tada pritaikome junginio mastelį, kad „EfficientDet-D1“taptų D7. Kiekvienas serijinis modelis turi didesnes skaičiavimo išlaidas, apimančias įvairius išteklių apribojimus nuo 3 milijardų FLOP iki 300 milijardų FLOPS, ir užtikrina didesnį tikslumą.
Našumo modelis
Įvertinant „EfficientDet“COCO duomenų rinkinyje, plačiai naudojamame objektų aptikimo etaloniniame duomenų rinkinyje. „EfficientDet-D7“pasiekia 52,2 vidutinį vidutinį tikslumą (mAP), kuris yra 1,5 balo didesnis nei ankstesnis šiuolaikinis modelis, naudojant 4 kartus mažiau parametrų ir 9,4 karto mažiau skaičiavimų
Mes taip pat palyginome parametrų dydį ir procesoriaus / GPU vėlavimą tarp „EfficientDet“ir ankstesnių modelių. Esant panašiems tikslumo apribojimams, „EfficientDet“modeliai veikia 2–4 kartus greičiau GPU ir 5–11 kartus greičiau procesoriuje nei kiti detektoriai. Nors „EfficientDet“modeliai pirmiausia skirti objektų aptikimui, mes taip pat tikriname jų efektyvumą atliekant kitas užduotis, pavyzdžiui, semantinį segmentavimą. Norėdami atlikti segmentavimo užduotis, mes šiek tiek modifikuojame „EfficientDet-D4“, pakeisdami aptikimo galvos ir galvos praradimą ir praradimą, išlaikydami tą patį mastelį ir „BiFPN“. Palyginame šį modelį su ankstesniais šiuolaikiniais segmentavimo modeliais, skirtais „Pascal VOC 2012“, plačiai naudojamam segmentavimo testavimo duomenų rinkiniui.
Atsižvelgiant į išskirtinį našumą, tikimasi, kad „EfficientDet“taps nauju pamatu būsimiems objektų aptikimo tyrimams ir potencialiai padarys labai tikslius objektų aptikimo modelius naudingus daugelyje realaus pasaulio programų. Taigi „Github.com“atidarė visus kodo ir iš anksto paruošto modelio lūžio taškus.