kunstig intelligens

Utviklet nevralt nettverk for å finne syke kyllinger

På sikt kan avansert bildeanalyse hjelpe dyrleger med den ekstremt krevende oppgaven å inspisere slaktede kyllinger for sykdommer.

Illustrasjon.
Illustrasjon. Colourbox (innfelt

En dyrlege på et kyllingslakteri må hvert sekund inspisere et sted mellom tre og fire kyllinger for sykdommer.

Jobben er så krevende at dyrlegene må rotere hver halvtime. Og nettopp derfor er det et stort potensial i å assistere dem med avansert bildeanalyse, forteller senior system developer Jens Fagertun ved IHFood.

– Det har blitt tøyd helt til grensen nå – det kan ikke gjøres raskere hvis et menneske skal kunne følge med, sier han.

I et samarbeid mellom danske IHFood, forskere ved Aalborg Universitet, Linco, Danpo og HKScan har Jens Fagertun og Anders Jørgensen utviklet et nevralt nettverk som i det store og hele skal kunne gjøre det samme som dyrlegen gjør: se forskjell på en syk og en frisk kylling.

Masse data – masse støy

Først litt kontekst for de av leserne som ikke er helt inne i slakterienes kyllinginspeksjon.

Før en kylling havner i kjøledisken, blir den inspisert på slakteriet to ganger av en dyrlege – eller en person med tilsvarende kvalifikasjoner.

Dette foregår på et transportbånd, slik figuren under viser. Den første gangen er fuglen hel. Deretter blir innvollene tatt ut, og så inspiseres innvollene. Fugler som vurderes som syke, blir fjernet fra transportbåndet.

Illustrasjon: Jørgensen, A., Fagertun, J. & Moeslund, T. B.

Dette oppsettet kunne Jens Fagertun og kollegene utnytte til å samle inn treningsdata ved først å sette opp et kamera som tar bilder av samtlige kyllinger. Lenger ute på kjeden satte gruppen opp en optisk sensor for å registrere om kyllingen fortsatt henger på kroken, eller om den har blitt tatt ned av dyrlegen.

– På den måte kan vi samle inn alle de dataene som vi reelt har bruk for. Og det gir oss en fornuftig klassifisering. Men det finnes støy i datasettet, og det er vi klar over, sier Jens Fagertun.

Repeterende korreksjon

Støyen kan komme fra flere steder. Det kan for eksempel være slik at en fugl som har blitt tatt ned, senere blir hengt opp igjen etter nærmere inspeksjon. Jens Fagertun og de andre gikk derfor i gang med å vurdere hva de kunne gjøre i tillegg til manuelt å gjennomgå de flere enn 30.000 bildene – for eksempel ved å outsource oppgaven til en Mechanical Turk-tjeneste.

– Problemet med å outsource oppgaven er at resultatet har svært varierende kvalitet. Det er også mye jobb med å håndtere en slik prosess. Det vil antakelig kreve at du får flere til å gjøre det samme og deretter gjennomfører kvalitetskontroll, forteller Jens Fagertun, som også peker på at oppgaven krever spesialkunnskaper, hvis man ikke bare vil fange opp de mest åpenbare feilene.

Løsningen ble i stedet å fokusere på de bildene hvor modellen tok mest feil.

– Vi ser på hvor sikker modellen er på seg selv i de tilfellene hvor den tar feil, forklarer Jens Fagertun.

Modellen gir som output en sannsynlighet for at svaret er A eller B. Hvis modellen er svært sikker på at svaret er A, men merkingen (labelen) sier B, er det altså en større forskjell mellom modell og merking, enn hvis modellen er mindre sikker på at svaret er A.

Gruppen rangerte dermed alle de gjetningene som lå lengst fra merkingen, og gjennomgikk de 1000 bildene som lå øverst.

Innenfor de 1000 bildene blir noen omklassifisert hvis det viser seg at modellen har rett, mens andre blir helt fjernet fra datasettet. Det kan for eksempel være bilder, hvor det slett ikke finnes noen kylling, eller den henger feil i kroken, forklarer Jens Fagertun.

I andre tilfeller tar modellen feil fordi den ennå ikke har lært å kjenne igjen det som den skal lete etter. Her kan man deretter på lengre sikt vurdere hvilken type bilder – og dermed hvilken type sykdommer – som man må legge til for å gjøre modellen bedre.

– Slik er det med all maskinlæring. Hvis du vil at en modell skal kjenne igjen biler i et veikryss, er det ingen vits i at du bare bruker bilder som er tatt på dagtid. Da vil den feile når den ser et bilde som er tatt om natten, sier Jens Fagertun.

Zoom og speilvending

Prosessen ble gjentatt seks ganger – med forbedringer av modellens presisjon i hvert trinn. Ved hver repetering ble modellen trent gjennom 300 epoker, noe som i denne sammenhengen betyr 300 ganger, hvor modellen ser 100.000 eksempler (samples).

Forbedringer i modellens ytelse etter hver repetisjon. Illustrasjon: Jørgensen, A., Fagertun, J., Moeslund, T.B.
Forbedringer i modellens ytelse etter hver repetisjon.

De 100.000 eksemplene dannes ved å augmentere – eller endre – de omkring 33.000 treningsbildene. Det kan være en tilfeldig zoom eller en speilvending. Teknikken gjør modellen mer robust overfor variasjoner i bildene.

– Hvis treningsdataene våre for eksempel har en overvekt av små kyllinger, kunne modellen ende opp med å feilklassifisere bilder av store kyllinger, sier Jens Fagertun.

Der er grenser for hvor mye data du kan skape ved å augmentere data, understreker han.

– Du har en base av bilder som er tatt, og disse bruker du til hele tiden å generere nye data. Men grunnstammen din av bilder er langt på vei avgjørende for hvor stor variasjon du har i dataene, sier Jens Fagertun. – Du kunne godt ta 10 bilder og augmentere dem til 100.000 varianter. Men det kan ikke løse problemet med å ha for lite data.

Assistere dyrlegen

På sikt vil IHFood gjerne kunne gjøre systemet så skarpskodd at det også kan identifisere hvilken sykdom det kan være snakk om.

–Men akkurat nå har man ute i produksjonen bare bruk for noe som kan markere de syke kyllingene, sier Jens Fagertun.

– Det vi i første omgang ønsker, er å lage et assisterende system. Modellen kunne potensielt settes til å sortere flesteparten av kyllingene, hvor den er veldig sikker på hva den gjør. Og etter dette vil det være en gruppe som den er usikker på, og de kunne så kjøres forbi dyrlegen, som dermed ville få bedre tid til oppgaven sin.

I siste rekke kan det bli lovgivningen som avgjør i hvilken grad dataanalyse kan erstatte dyrlegen ved transportbåndet.

– Men hvis denne løsningen kan innebære bedre matvaresikkerhet, er jeg overbevist om at myndighetene også kan se fordelene ved den, sier Jens Fagertun:

– Rent teknisk trenger vi en masse data. Metoden som vi har benyttet her, kan hjelpe oss med å skaffe disse store datamengdene, selv om merkingen av dataene i utgangspunktet er full av støy.

Powered by Labrador CMS