Andmed juhtivad algoritmid, nagu nĂ€rvivĂ”rgud, on maailma vallutanud. Nende arengut on tinginud mitmed pĂ”hjused, sealhulgas odavad ja vĂ”imsad seadmed ning tohutu andmemaht. NĂ€rvivĂ”rgud on praegu esirinnas kĂ”ikides 'kognitiivsetes' ĂŒlesannetes, nagu pildituvastus, looduskeele mĂ”istmine jne. Kuid need ei tohiks piirduda ainult selliste ĂŒlesannetega. KĂ€esolevas materjalis kĂ€sitletakse, kuidas suruda kokku pilte nĂ€rvivĂ”rkude abil, kasutades ĂŒlejÀÀnud Ă”ppimist. Artiklis esitatud lĂ€henemine töötab kiiremini ja paremini kui tavalised koodekid. Skeemid, vĂ”rrandid ja muidugi testitulemuste tabel on allpool.
See artikkel pÔhineb töös. Oletatakse, et olete tuttav nÀrvivÔrkude ja nende mÔistetega konvolutsioon ja kaotuse funktsioon.
Mis on pildikompressioon ja milliseid selle liike on?
Pildikompressioon on protsess, mille kÀigus muudetakse pilti nii, et see kasutab vÀhem ruumi. Lihtne piltide salvestamine vÔtaks palju ruumi, seega on olemas koodekid nagu JPEG ja PNG, mille eesmÀrk on vÀhendada algse pildi suurust.
Nagu teada, on olemas kaks tĂŒĂŒpi pildikompressiooni: kaotusteta ja kaotustega. Nagu nimed viitavad, on kaotusteta kompressiooni korral vĂ”imalik taastada algpildi andmed, samas kui kaotustega kompressiooni korral kaotatakse mĂ”ningad andmed kompressimise kĂ€igus. NĂ€iteks on JPG - kaotustega algoritmid [tĂ”lke mĂ€rk. - peamiselt, Ă€rgem unustagem ka kaotusteta JPEG-d], samas kui PNG on kaotusteta algoritm.

Kaotusteta ja kaotustega kompressiooni vÔrdlus
Pöörake tĂ€helepanu, et parempoolsel pildil on palju plokkartefakte. See on kadunud teave. KĂ”rvuti asetsevad sarnaste vĂ€rvide pikslid kokkusurutakse ĂŒheks piirkonnaks ruumi kokkuhoidmiseks, kuid seejĂ€rel kaob teave tegelike pikslite kohta. Loomulikult on JPEG, PNG jne koodekite rakendatavates algoritmides palju keerukust, kuid see on hea intuitiivne nĂ€ide kaotava kompressiooni kohta. Kaotusteta kompressioon on hea, kuid kaotusteta kompresseeritud failid vĂ”tavad palju ruumi kettal. On olemas tĂ”husamad meetodid piltide kompressiooniks, ilma et kaotataks palju teavet, kuid need on ĂŒsna aeglased ja paljud rakendavad iteratiivseid lĂ€henemisviise. See tĂ€hendab, et neid ei saa kĂ€ivitada mitme kesk- vĂ”i graafikaprotsessorite tuumade kaupa. Selline piirang muudab need igapĂ€evases kasutuses tĂ€iesti ebapraktiliseks.
Konvolutsioonilise nÀrvivÔrgu sisend
Kui midagi tuleb arvutada ja arvutused vĂ”ivad olla umbkaudsed, lisage . Autorid kasutasid ĂŒsna tavalist konvolutsioonilist nĂ€rvivĂ”rku, et parandada piltide kompressiooni. Esitatud meetod töötab mitte ainult kĂ”ige paremate lahendustega samal joonel (kui mitte paremini), vaid see vĂ”ib samuti kasutada paralleelseid arvutusi, mis viib kiirusprotsessi jĂ€rsu suurendamiseni. PĂ”hjus on selles, et konvolutsioonilised nĂ€rvivĂ”rgud (CNN) oskavad vĂ€ga hĂ€sti tuvastada ruumilist teavet piltidest, mis esitatakse seejĂ€rel kompaktsemal kujul (nĂ€iteks salvestatakse ainult pildi âolulisedâ bitid). Autorid soovisid kasutada CNN-i seda vĂ”imalust, et paremini esindada pilte.
Arhitektuur
Autorid pakkusid vĂ€lja kahepoolsed vĂ”rgud. Esimene vĂ”rk vĂ”tab sisendiks pildi ja genereerib kompaktse esinduse (ComCNN). Selle vĂ”rgustiku vĂ€ljundit töötleb seejĂ€rel tavaline koodek (nĂ€iteks JPEG). PĂ€rast koodeki töötlemist edastatakse pilt teise vĂ”rku, mis âparandabâ koodeki pildi, ĂŒritades taastada algset pilti. Autorid nimetavad seda vĂ”rku rekonstrueerivaks CNN-iks (RecCNN). Nagu ka GAN, koolitatakse mĂ”lemat vĂ”rku iteratiivselt.

ComCNN kompaktne esitus edastatakse tavaliseks koodekiks

RecCNN. ComCNN-i vĂ€ljundid skaleeritakse suurendamisega ja edastatakse RecCNN-ile, mis pĂŒĂŒab Ă”ppida ĂŒlejÀÀnud osa
Dekooderi vĂ€ljundid skaleeruvad koos suurendamisega ja edastatakse RecCNN-ile. RecCNN pĂŒĂŒab genereerida pilti, mis on originaalile vĂ”imalikult sarnane.

Piltide tihendamise lÀbilaskevÔime raamistik. Co(.) on piltide tihendamise algoritm. Autorid kasutasid JPEG, JPEG2000 ja BPG.
Mis on jÀÀk?
JÀÀk on samm pĂ€rast töötlemist, et "parandada" dekooderi poolt dekodeeritud pilti. Suure hulga "teabega" maailma kohta suudab nĂ€rvivĂ”rk teha kognitiivseid otsuseid, mida parandada. See idee pĂ”hineb , mille kohta saate lugeda rohkem ĂŒksikasju .
Kao funktsioonid
Kaks kaofunktsiooni kasutatakse, kuna meil on kaks nÀrvivÔrku. Esimene neist, ComCNN, on tÀhistatud kui L1 ja mÀÀratletud jÀrgmiselt:

ComCNN-i kaofunktsioon
Selgitus
See vĂ”rrand vĂ”ib tunduda keeruline, kuid tegelikult on see standardne (keskmine ruutviga) MSE. ||ÂČ tĂ€hendab n-maa normi, kuhu nad kuuluvad.

VÔrrand 1.1
Cr tÀhistab ComCNN-i vÀljundeid. Ξ tÀhistab ComCNN-i Ôpitavaid parameetreid, XK on sisendpilt.

VÔrrand 1.2
Re() tÀhendab RecCNN. See vÔrrand edastab lihtsalt 1.1 vÔrrandi vÀÀrtuse RecCNN-ile. Ξ tÀhistab RecCNN-i Ôpitavaid parameetreid (kattepealne tÀhendab, et parameetrid on fikseeritud).
Intuitiivne mÀÀratlemine
VÔrrand 1.0 sunnib ComCNN-i muutma oma kaalu nii, et pÀrast vÀÀristamist RecCNN abil nÀeks lÔpppilt vÔimalikult sarnane sisendpildile. Teine kaofunktsioon RecCNN mÀÀratletakse jÀrgmiselt:

VÔrrand 2.0
Selgitus
JÀlle vÔib funktsioon tunduda keeruline, kuid enamikul juhtudel on see nÀrvivÔrgu standardne kaofunktsioon (MSE).

VÔrrand 2.1
Co() tÀhendab dekooderi vÀljundit, x kattega tÀhendab ComCNN-i vÀljundit. Ξ2 on RecCNN-i Ôpitavad parameetrid, res() esindab lihtsalt RecCNN-i jÀÀk vÀljundit. Oluline on mÀrkida, et RecCNN Ôpitakse Co() ja sisendpildi vahelise erinevuse pÔhjal, mitte sisendpildi pÔhjal.
Intuitiivne mÀÀratlemine
VÔrrand 2.0 sunnib RecCNN-i muutma oma kaalu nii, et vÀljundid oleksid vÔimalikult sarnased sisendpildile.
Ăppimise skeem
Mudeleid treenitakse iteratiivselt, sarnaselt Esimese mudeli kaalu fikseeritakse, samal ajal kui teise mudeli kaalud uuendatakse; seejÀrel fikseeritakse teise mudeli kaalud, samal ajal kui esimene mudel Ôpib.
Testid
Autorid vĂ”rdsustasid oma meetodi olemasolevate meetoditega, sealhulgas lihtsate koodekitega. Nende meetod töötab paremini kui teised, sĂ€ilitades samal ajal kĂ”rge kiirus vastavas seadmes. Lisaks pĂŒĂŒdsid autorid kasutada ainult ĂŒhte kahest vĂ”rku ja mĂ€rkisid jĂ”udluse langust.

Struktuurilise sarnasuse indeksi (SSIM) vÔrdlus. KÔrged vÀÀrtused viitavad paremale sarnasele originaaliga. Autorite tulemused on esile tÔstetud paksus kirjas.
KokkuvÔte
KĂ€sitlesime uut viisi sĂŒvaĂ”ppe kasutamiseks piltide tihendamiseks, rÀÀkides vĂ”imalusest kasutada nĂ€rvivĂ”rke ĂŒlesannetes, mis ei ole "tavalised", nĂ€iteks piltide klassifitseerimine ja keele töötlemine. See meetod mitte ainult ei vasta tĂ€napĂ€evastele nĂ”udmistele, vaid vĂ”imaldab ka pilte palju kiiremini töödelda.
NÀrvivÔrkude Ôppimine on muutunud lihtsamaks, sest just meie hublasi jaoks loomulikult pakkusime vÀlja sooduskoodi HABR, mis annab lisaks 10% allahindlusele, mis on nÀidatud bÀnneril.
Veel kursuseid
Soovitatud artiklid
Allikas: habr.com
