kunstig intelligens
Bilderedigering med dyp læring: – Vi må fjerne så mange feilkilder som mulig
Bedriften Esoft fra Fyn i Danmark er i ferd med å utvikle en GAN-modell (Generative Adversarial Network) som kan redigere bilder og blant annet fjerne magneter fra kjøleskap og ledninger fra gulvet.
Magneter på kjøleskapet, ledninger på gulvet og en stor svart regnsky på himmelen står ikke høyt på lista over ting som selger hus.
Danske Esoft, som selger bilder og tekster til eiendomsmeglere, har derfor spesialisert seg på å legge på en blå himmel og fjerne det uønskede rotet fra boligbilder før de blir lagt ut i salgsannonsen.
Den praktiske Photoshop-jobben er outsourcet til Esofts vietnamesiske selskap med over 500 ansatte. Men det fører til utfordringer når man som Esoft gjerne vil skalere, forteller sjefen for forskning og utvikling, Kasper Grud Skat Madsen.
– Vi vil gjerne utvide til flere markeder. Og da blir vi nødt til å gjøre noen ting annerledes, for klarer ikke å få tak i de menneskene vi trenger, forklarer han.
Derfor har Esoft store forventninger til avansert dataanalyse. Bedriften sitter på enorme datamengder som etter planen skal danne grunnlaget for en håndfull tjenester som selskapet i fremtiden vil presentere for Esofts kunder via et API (Application Programming Interface).
Tjenestene kan for eksempel automatisk telle tekst for beskrivelse av eiendommer og gjenkjenning av objekter i bilder – og til automatisk bilderedigering, som Kasper Grud Skat Madsen har jobbet med siden august.
Her gikk han først sammen med gruppen sin i gang med å undersøke hvor langt de kunne komme ved bare å bruke noen av de mange tilgjengelige plugins i Photoshop.
– Man kan komme et godt stykke på den måten, men vi fant også veldig mange begrensninger. Og da ble det naturlig å gå videre med GAN-modeller, sier Kasper Grud Skat Madsen.
For mye informasjon
GAN – som står for Generative Adversarial Networks – er en teknikk som setter sammen to nevrale nettverk: en generator og en diskriminator.
Ideen er å trene generatoren til å produsere de ønskede dataene – i dette tilfelle et redigert boligfoto – og trene diskriminatoren til å kjenne igjen et redigert bilde. På den måten kan de to nettverkene trene hverandre. Teknikken blir ofte brukt i forbindelse med bildedata.
– Den måten som jeg alltid vil gå inn i en slik oppgave på, er å titte i litteraturen og finne ut av hva som er det aller beste som finnes akkurat nå, forteller Kasper Grud Skat Madsen, som har en ph.d. i distribuerte databaser.
Etter litt undersøkelser fant han en GAN-løsning med åpen kildekode. Denne brukte gruppen til å bygge en Proof of Concept-løsning.
Men dette er ikke så enkelt som bare å fôre modellen med henholdsvis behandlede og ubehandlede bilder, forklarer Kasper Grud Skat Madsen.
– I begynnelsen prøvde vi å bruke hele bilder, men det gikk raskt opp for oss at det ikke kom til å fungere, sier han.
– Vi kan ikke bare gi dem de to bildene og la modellen lære alt sammen. Det er for mye informasjon i bildene til at modellen kan vite hva den skal fokusere på.
Kutt vekk kompleksitet
I stedet for de egentlige dataene tok Kasper Grud Skat Madsen og hans kolleger tak i et enkelt datasett som besto av geometriske figurer i forskjellige farger.
– Vi trenger å fjerne feilkilder. Og det kan for eksempel være hvordan en skygge faller på bildet. Ved å kjøre med geometriske figurer uten skygger, trenger vi ikke å håndtere den kompleksiteten til å begynne med, forklarer han.
Med et enkelt datasett kan dataforskeren (data scientist) følge med på hvordan GAN-modellen blir forbedret etter hvert som den trener – slik bildene under viser.
Bildet til venstre er lagt inn i generator-delen av GAN-modellen, mens bildet til høyre viser hvordan diskriminatoren mener at bildet skal se ut. Det midterste bildet viser det genererte bildet etter henholdsvis 5 epochs og 119 epochs – altså antallet av iterasjoner hvor modellen har sett hele treningssettet.
– Det som ofte er den største utfordringen når vi snakker maskinlæring, er å finne de dataene som du skal bruke. Det ligger mange typer maskinlærings-løsninger der ute. Men du kan ikke egentlig vurdere hvor gode de er i Esofts sammenheng hvis du ikke har noen gull-data. For ellers vet du ikke om eventuelle problemer kommer fra dine data eller fra løsningen, poengterer Kasper Grud Skat Madsen.
Bilder må skjæres opp
Når løsningen er perfeksjonert på det forenklede datasettet, kan Esoft bruke de riktige bildene. Men de kan fremdeles ikke brukes slik de er, siden mengden av informasjon vil være for høy.
Derfor må hvert element i bildet behandles for seg, forklarer Kasper Grud Skat Madsen.
– Når vi for eksempel skal fjerne magneter fra kjøleskap, får vi en modell for å skjære kjøleskapet ut av bildet, og så trener vi et GAN-nettverk til bare denne ene oppgaven.
Klippe- og limejobben skal etter planen utføres av en ML-modell som kan kjenne igjen for eksempel kjøleskap og automatisk klippe dem ut av bildet. Det samme skal skje for andre elementer som tak og gulv, og hvert element får sin egen trente GAN-modell.
Kasper Grud Skat Madsen forventer dessuten også at det kommer et trinn før GAN-modellen, der støyende elementer som for eksempel skygger blir fjernet fra bildet.
– Vi bruker veldig mye krefter på disse datasettene. Over halvparten av tiden vår blir brukt til å jobbe med data. Man kunne tro at det er matematikken og nerde-sakene som tar tid, men i virkeligheten er det data. Løsningen din blir jo aldri bedre enn dataene dine, understreker Kasper Grud Skat Madsen.
Hvor komplisert modellen i siste rekke må være for å redigere vekk alt uønsket, vil avhenge av markedet. I Danmark skal bilder gjerne være i svært høy kvalitet, mens man i Hellas ofte er fornøyd med bilder tatt med et mobilkamera, forteller Kasper Grud Skat Madsen.
– Så i noen markeder ville man kunne bruke en løsning med ganske få av disse nettverkene. På andre markeder må man bruke veldig mange før det blir bra nok.
Skal ikke erstatte ansatte
Siste trinn blir å automatisere at bildet blir limt sammen igjen, men så langt har ikke Esoft kommet enda, forteller Kasper Grud Skat Madsen. Og planen er ikke at løsningen i siste rekke skal erstatte det arbeidet som i dag gjøres i Vietnam.
– Dette blir en input, slik at det bildet som de skal jobbe med er veldig mye nærmere å være godt nok. Så vi kan utnytte arbeidskraften deres mer effektivt, og de leverer feedback tilbake til oss, slik at vi kan forbedre modellene ved for eksempel å legge inn mer treningsdata.
At de ansatte som redigerer bilder i Vietnam fremdeles skal være inne i prosessen – og ikke erstattes av maskinlæring – var faktisk et krav som Kasper Grud Skat Madsen hadde for å ta jobben i Esoft i august.
– Selv om vi bare sitter og trykker på knapper på en datamaskin, gjør vi noe som påvirker livet til veldig mange mennesker. Når først man har erkjent dette, synes jeg at det er naturlig å ta det med i overveielsene sine, sier han.
Artikkelen har tidligere vært publisert på Datatech. Datatech tilhører Teknologiens Mediehus.