Andersons vinkel

Bättre maskinlärningsprestanda genom CNN-baserad bildåterstorlek

mm
Lägg till Unite.AI bland dina föredragna källor på Google

Google Research har föreslagit en ny metod för att förbättra effektiviteten och noggrannheten i bildbaserade datorseendeutbildningsflöden genom att förbättra sättet som bilderna i en datamängd minskas vid förbehandlingsstadiet.

I artikeln Lära sig att ändra bildstorlek för datorseendeuppgifter använder forskarna Hossein Talebi och Peyman Milanfar en CNN för att skapa en ny hybridbildåterstorleksarkitektur som ger en betydande förbättring av igenkänningsresultat i fyra populära datorseende-datasets.

Det föreslagna gemensamma ramverket för igenkänning och återstorlek.

Det föreslagna gemensamma ramverket för igenkänning och återstorlek. Källa: https://arxiv.org/pdf/2103.09950.pdf

Artikeln observerar att de återstorleks-/återstorleksmetoder som för närvarande används i automatiserade maskinlärningspipelines är decennier gamla och ofta använder bara grundläggande bilineär, bikubisk och närmaste granne återstorlek – metoder som behandlar alla pixlar likgiltigt.

Till skillnad från detta kompletterar den föreslagna metoden bilddata via en CNN och inkorporerar den här indatamet i de återställda bilderna som slutligen kommer att passera genom modellens arkitektur.

Bildbegränsningar i AI-utbildning

För att utbilda en modell som hanterar bilder kommer en maskinlärningsram att innehålla ett förbehandlingsstadium, där en disparat variation av bilder i olika storlekar, färgrymder och upplösningar (som kommer att bidra till utbildningsdatamängden) systematiskt beskärs och återstorleks till konsekventa dimensioner och ett stabilt, enskilt format.

Generellt kommer detta att innebära någon form av kompromiss runt PNG-formatet, där en avvägning mellan bearbetningstid/resurser, filstorlek och bildkvalitet kommer att etableras.

I de flesta fall är de slutliga dimensionerna för den bearbetade bilden mycket små. Nedan ser vi ett exempel på 80×80-upplösningen som vissa av de tidigaste deepfakes-datasets genererades med:

Detta är 80x80-upplösningen som vissa av de tidigaste deepfakes-datasets genererades med.

Eftersom ansikten (och andra möjliga ämnen) sällan passar in i den erforderliga kvadratiska förhållandet kan svarta rutor behöva läggas till (eller bortkastad utrymme tillåtas) för att homogenisera bilderna, vilket ytterligare minskar den faktiska användbara bildinformationen:

Här har ansiktet extraherats från en större bildyta tills det är beskuret så ekonomiskt som möjligt för att inkludera hela ansiktsområdet. Men som syns på vänster sida kommer en stor del av den återstående ytan inte att användas under utbildningen, vilket lägger större vikt vid betydelsen av den återställda datans bildkvalitet.

Här har ansiktet extraherats från en större bildyta tills det är beskuret så ekonomiskt som möjligt för att inkludera hela ansiktsområdet. Men som syns på höger sida kommer en stor del av den återstående ytan inte att användas under utbildningen, vilket lägger större vikt vid betydelsen av den återställda datans bildkvalitet.

Sedan GPU-kapaciteten har förbättrats under de senaste åren, med den nya generationen NVIDIA-kort utrustade med ökningsmängder av video-RAM (VRAM), börjar de genomsnittliga bidragande bildstorlekarna att öka, även om 224×224 pixlar fortfarande är ganska standard (till exempel är det storleken på ResNet-50-datamängden).

En oåterställd 224x244 pixlar bild.

En oåterställd 224×244 pixlar bild.

Anpassning av batchar till VRAM

Anledningen till att bilderna måste vara alla lika stora är att gradientnedgång, metoden genom vilken modellen förbättras över tiden, kräver enhetlig utbildningsdata.

Anledningen till att bilderna måste vara så små är att de måste laddas (fullständigt dekomprimerade) in i VRAM under utbildning i små batchar, vanligtvis mellan 6-24 bilder per batch. För få bilder per batch, och det finns inte tillräckligt med gruppmaterial för att generalisera väl, samt förlänga utbildningstiden; för många, och modellen kan misslyckas med att erhålla nödvändiga egenskaper och detaljer (se nedan).

Denna “direktladdning” del av utbildningsarkitekturen kallas latent utrymme. Detta är där funktioner upprepas extraheras från samma data (dvs. samma bilder) tills modellen har konvergerat till en tillstånd där den har all den generaliserade kunskap den behöver för att utföra transformationer på senare, osedda data av liknande typ.

Denna process tar vanligtvis dagar, men kan ta ännu en månad eller mer av konstant och outtröttlig högvolym 24/7 bearbetning för att uppnå användbar generalisering. Ökningar i VRAM-storlek är endast användbara upp till en viss punkt, eftersom även mindre ökningar i bildupplösning kan ha en ordning av storlekseffekt på bearbetningskapacitet, och relaterade effekter på noggrannhet som inte alltid är fördelaktiga.

Användning av större VRAM-kapacitet för att accommodera högre batchstorlekar är också en blandad välsignelse, eftersom de större utbildningshastigheter som erhålls genom detta sannolikt kommer att kompenseras av mindre precisa resultat.

Därför, eftersom utbildningsarkitekturen är så begränsad, är allt som kan påverka en förbättring inom de befintliga begränsningarna av pipelinen en anmärkningsvärd prestation.

Hur överlägsen minskning hjälper

Den slutliga kvaliteten på en bild som kommer att ingå i en utbildningsdatamängd har visat sig ha en förbättrande effekt på utbildningsresultatet, särskilt i objekterkänningsuppgifter. 2018 hävdade forskare från Max Planck-institutet för intelligenta system att valet av återstorleksmetod märkbart påverkar utbildningsprestanda och resultat.

Dessutom har tidigare arbete från Google (skrivet av de nya artikelförfattarna) funnit att klassificeringsnoggrannhet kan förbättras genom att upprätthålla kontroll över kompressionsartefakter i datamängdsbilder.

CNN-arkitekturen för den föreslagna minskningsalgoritmen från Google Research.

CNN-arkitekturen för den föreslagna minskningsalgoritmen från Google Research.

CNN-modellen som byggts in i den nya återstorleksalgoritmen kombinerar bilineär återstorlek med en “hoppanslutningsfunktion” som kan inkorporera utdata från den tränade nätverket i den återställda bilden.

Till skillnad från en typisk encoder/decoder-arkitektur kan det nya förslaget fungera inte bara som en feed-forward-flaskhals, utan också som en invers flaskhals för uppskalning till valfri målstorlek och/eller bildförhållande. Dessutom kan den “standard” återstorleksmetoden bytas ut mot någon annan lämplig traditionell metod, såsom Lanczos.

Högfrekventa detaljer

Den nya metoden producerar bilder som i själva verket verkar “grädda” in nyckelfunktioner (som slutligen kommer att erkännas av utbildningsprocessen) direkt i källbilden. I estetiska termer är resultaten ovanliga:

Den nya metoden tillämpad på fyra nätverk – Inception V2; DenseNet-121; ResNet-50; och MobileNet-V2. Resultaten av den föreslagna minsknings-/återstorleksmetoden från Google Research producerar bilder med uppenbar pixelaggregering, som förutsäger de nyckelfunktioner som kommer att urskiljas under utbildningsprocessen.

Den nya metoden tillämpad på fyra nätverk – Inception V2; DenseNet-121; ResNet-50; och MobileNet-V2. Resultaten av den föreslagna minsknings-/återstorleksmetoden från Google Research producerar bilder med uppenbar pixelaggregering, som förutsäger de nyckelfunktioner som kommer att urskiljas under utbildningsprocessen.

Forskarna noterar att dessa initiala experiment är exklusivt optimerade för bildigenkänningsuppgifter, och att deras CNN-baserade “inlärda återstorleksalgoritm” kunde uppnå förbättrade felrater i sådana uppgifter. Forskarna avser i framtiden att tillämpa metoden på andra typer av bildbaserade datorseendeapplikationer.

Författare på maskinlärande, domänspecialist inom mänsklig bildsyntes. Fd chef för forskningsinnehåll på Metaphysic.ai, till dess upplösning i DNEG:s Brahma.ai.
Portfolio site: martinanderson.ai
Kontakt: martin@martinanderson.ai