8 Šiuolaikiniai konvoliuciniai neuroniniai tinklai

Dabar, kai suprantame pagrindus, kaip sujungti CNN, apžvelkime šiuolaikines CNN architektūras. Ši apžvalga neišvengiamai yra nepilna dėl daugybės naujų įdomių dizainų, kurie nuolat pridedami. Jų svarba kyla iš to, kad jie gali būti ne tik tiesiogiai naudojami regos užduotims, bet ir tarnauja kaip pagrindiniai požymių generatoriai sudėtingesnėms užduotims, tokioms kaip sekimas (Yifu Zhang ir kt., 2021), segmentavimas (Long ir kt., 2015), objektų aptikimas (Redmon ir Farhadi, 2018) ar stiliaus transformacija (Gatys ir kt., 2016). Šiame skyriuje dauguma skyrelių atitinka reikšmingą CNN architektūrą, kuri tam tikru metu (ar tebėra) buvo bazinis modelis, ant kurio buvo kuriami daugelis tyrimų projektų ir diegiamų sistemų. Kiekvienas iš šių tinklų trumpai buvo dominuojanti architektūra, o daugelis buvo ImageNet konkurso nugalėtojai ar antros vietos laimėtojai; šis konkursas nuo 2010 m. tarnavo kaip prižiūrimojo mokymosi pažangos kompiuterinėje regoje barometras. Tik visai neseniai transformeriai pradėjo išstumti CNN, pradedant (Dosovitskiy ir kt., 2021) ir vėliau Swin transformeriu (Liu ir kt., 2021). Šią raidą aptarsime vėliau 11 skyrelis.

Nors gilių neuroninių tinklų idėja yra gana paprasta (sukrauti kartu daugybę sluoksnių), našumas gali labai skirtis priklausomai nuo architektūros ir hiperparametrų pasirinkimo. Šiame skyriuje aprašyti neuroniniai tinklai yra intuicijos, kelių matematinių įžvalgų ir daugybės bandymų ir klaidų rezultatas. Šiuos modelius pristatome chronologine tvarka, iš dalies tam, kad perteiktume istorijos pojūtį, ir jūs galėtumėte susidaryti savo intuiciją apie tai, kur juda sritis, ir galbūt sukurti savo architektūras. Pavyzdžiui, šiame skyriuje aprašyta rinkinio normalizacija ir liekamosios jungtys pasiūlė dvi populiarias idėjas giliesiems modeliams apmokyti ir kurti, ir abi jos vėliau buvo pritaikytos ir už kompiuterinės regos ribų.

Savo šiuolaikinių CNN apžvalgą pradedame nuo AlexNet (Krizhevsky ir kt., 2012), pirmojo didelio masto tinklo, įdiegto ir įveikusio įprastus kompiuterinės regos metodus didelio masto regos konkurse; VGG tinklo (Simonyan ir Zisserman, 2014), naudojančio daugybę pasikartojančių elementų blokų; tinklo tinkle (NiN), kuris konvoliuoja ištisus neuroninius tinklus pagal pleistrus per įvestis (Lin ir kt., 2013); GoogLeNet, naudojančio tinklus su daugiašakėmis konvoliucijomis (Szegedy ir kt., 2015); liekanų neuroninio tinklo (ResNet) (He ir kt., 2016), kuris tebėra viena populiariausių paruoštų architektūrų kompiuterinėje regoje; ResNeXt blokų (Xie ir kt., 2017) retesnėms jungtims; ir DenseNet (Huang ir kt., 2017) – liekamosios architektūros apibendrinimo. Laikui bėgant buvo sukurta daug specialių efektyvių tinklų optimizacijų, tokių kaip koordinačių postūmiai (ShiftNet) (Wu ir kt., 2018). Tai pasiekė kulminaciją automatinėje efektyvių architektūrų paieškoje, tokioje kaip MobileNet v3 (Howard ir kt., 2019). Tai taip pat apima pusiau automatinį (Radosavovic ir kt., 2020) dizaino tyrinėjimą, kuris atvedė prie RegNetX/Y, kuriuos aptarsime vėliau šiame skyriuje. Šis darbas pamokantis tuo, kad siūlo kelią sujungti brutalią skaičiavimo jėgą su eksperimentatoriaus išradingumu ieškant efektyvių dizaino erdvių. Paminėtinas ir (Liu ir kt., 2022) darbas, nes jis rodo, kad mokymo technikos (pvz., optimizavimo algoritmai, duomenų papildymas ir reguliarizacija) vaidina esminį vaidmenį gerinant tikslumą. Jis taip pat rodo, kad ilgai laikytos prielaidos, tokios kaip konvoliucijos lango dydis, gali reikalauti peržiūros, atsižvelgiant į išaugusį skaičiavimų ir duomenų kiekį. Šį ir daugelį kitų klausimų aptarsime nuosekliai šiame skyriuje.