Maskinlæring allerede nå?

7 min read

«Digitaliser eller dø!» er en vanlig tanke for tiden. Frykten for å bli akterutseilt i markedet av innovativ teknologi er stor. Det mest kjente eksemplet er Kodak som tjente gode penger på analoge filmer, men ventet for lenge med å hoppe på digitaliseringsbølgen. I dag er det mange som snakker om maskinlæring basert på stordata (Big Data), der det utvikles algoritmer for å avdekke skjulte sammenhenger i dataene. Riktig bruk av maskinlæring kan effektivisere og i noen tilfeller fullt ut erstatte eksisterende arbeidsprosesser. Ideen om at vi allerede sitter på en gullgruve i kraft av data vi allerede har er fascinerende!

Det er et stykke å gå fra man bestemmer seg til å bruke nye muligheter til man kan høste fruktene. De fleste har gode rapporteringssystemer basert på de vanlige støttesystemene, ofte med ett eller flere datavarehus. Stordata egner seg ikke for disse systemene, og det investeres derfor i ny infrastruktur og kompetanse. Det er imidlertid krevende å bruke stordata fra sensorer til maskinlæring siden det stiller krav til datakvalitet på sensorsignalene. Det kan medføre behov for endringer i f.eks. sensoren i seg selv, overføringsmekanismer, hvordan dataene lagres med mer. Tilstrekkelig kvalitet på stordata for maskinlæring og annen analyse vil derfor være en viktig konkurransefaktor.

DNV GL jobber med analyser av både store og små data, og er en samarbeidspartner for selskaper som vil analysere egne data, gjerne i kombinasjon med andre delte eller åpne data. DNV GL jobber sammen med mange kunder for å fasilitere bruk av stordata, men i denne artikkelen vil jeg gjerne vise at maskinlæring ikke bare dreier seg om stordata med noen eksempler fra våre interne effektiviseringsprosesser.

Maskinlæring krever ikke stordata i seg selv. Det kan også fungere godt på små data dersom de inneholder strukturer som maskinen kan oppdage. Dette gir muligheter for å ta i bruk tidligere eksisterende datakilder på en ny måte. Ved å bruke maskinlæring kan man høste ny kunnskap fra fagsystemer og datavarehus. En stor fordel vil da være at man jobber med data og prosesser man kjenner godt, og der datakvaliteten er kultivert gjennom mange år. Det er med andre ord store muligheter i eksisterende systemer.

I DNV GL så vi en mulighet i å bruke data fra DNV GLs egen tjeneste for teknisk support fra eksperter på en ny måte. Gjennom mange år er kundespørsmål blitt manuelt kategorisert og sendt til riktig fagavdeling. Ideen var at maskinlæring kunne finne et mønster i 200 000 historiske spørsmål med tilordnet kategori. Etter prøving og feiling med ulike maskinlæringsalgoritmer klarte vi å få en tilstrekkelig høy treffprosent til at dette ble ansett godt nok. Dette er i dag en del av saksbehandlingssystemet, og saksbehandlingen er nå effektivisert slik at supportsaker videresendes til antatt riktig fagavdeling uten menneskelig vurdering.

Figur 1 – Eksempel på bruk av maskinlæring for å rute supportsaker til riktig fagavdeling/ekspert. Spørsmål fra historiske saker brukes til å lære opp en algoritme til å kjenne igjen hva slags spørsmål det dreier seg om.

 

Et annet eksempel på bruk av eksisterende data er estimering av hvor lang tid en skipsinspeksjon vil ta. Siden en viktig del av DNV GLs aktiviteter er å inspisere skip er det viktig at vi rekker å gjøre ferdig inspeksjonen mens skipet ligger til kai. Vi har derfor laget en ML-løsning som estimerer tidsforbruket ved å bruke erfaringsdata fra tidligere bestillinger og registrerte timer fra disse jobbene. Dette er langt fra stordata, men er et annet eksempel på ny bruk av eksisterende data.

Figur 2 – Maskinlæring brukes til å estimere arbeidsomfanget til en inspeksjon av skipet ved et havneanløp basert på historiske bestillinger og tidsforbruk. Et slikt tidsestimat kan brukes til å vurdere om man rekker å gjøre planlagt arbeid mens skipet ligger til kai.

 

Maskinlæring lager altså en modell av de observasjonene den gis. Denne modellen vil imidlertid forvitre over tid. I eksemplet over kan vi tenke oss at kundene vil trenge hjelp med nye typer utstyr, og dermed vil spørsmålene fra kundene endres ettersom tiden går. Av den grunn må alle maskinlæringsmodeller som skal tas i bruk ha en retreningsprosess. Der vil nye data lastes inn, en ny maskinlæringsmodell lages, vurderes og vil – dersom den nye modellen er god nok – overta for den gamle modellen. Dette betyr at det ikke er tilstrekkelig med en engangs dataeksport som grunnlag dersom maskinlæring skal bli en integrert del av arbeidsprosessene. Man bør altså sette opp en jevnlig trening og validering av modellene, eller eventuelt delegere ansvar for dette til et supportteam. Dersom man ikke setter opp gode prosesser for retrening bør ikke maskinlæringsprosjektene komme videre fra prosjektfasen.

Tilretteleggingen av data er som regel den mest tidkrevende oppgaven når man jobber med maskinlæring. Utfordringene man da står overfor er ofte de samme som et datavarehusprosjekt møter. Når rådata er innhentet må data bearbeides før maskinlæring kan brukes. Bearbeidingen kan f.eks. være å fylle ut hull i tidsserier, fjerne sære/ekstreme data mm. Data scientists bruker ofte mye av tiden sin på slik innhenting og tilrettelegging av data, og bruker dermed en for liten del av tiden på å jobbe med maskinlæringsmodeller. Et velfungerende team som raskt tilgjengeliggjør data er derfor svært viktig for effektiv bruk av data scientists, og vil samtidig kunne bygge mer robuste dataoverføringer enn man gjør i et tradisjonelt maskinlæringseksperiment.

For prosjekter med stordata vil det imidlertid oppstå nye problemstillinger som et tradisjonelt ETL/datavarehusteam ikke nødvendigvis har erfaring med, som f.eks. nye dataformater, oppdateringsfrekvens, volum mm. Jevnlig dataoppdatering, -prosessering og overvåkning er likevel en oppgave som er svært lik ansvaret et tradisjonelt datavarehusmiljø har. Det kan derfor være relevant å bruke ETL/datavarehusressurser og infrastruktur i maskinlæringsprosjekter fra starten av.

Når maskinlæringsprosjektet er i gang med definerte målsetninger og man har tilgang til data vil det likevel alltid være en usikkerhet rundt selve dataene. I og med at vi forsøker å avdekke sammenhenger i dataene som ingen har sett før kan vi ikke vite med sikkerhet at de faktisk er der. Det betyr at man ikke kan vite med sikkerhet om prosjektet vil lykkes uansett hvor mange dyktige utviklere man bruker. Dersom man ikke har tilstrekkelig med data eller at det ikke finnes tydelige sammenhenger i datagrunnlaget vil ikke prosjektet lykkes.

Man bør prøve ut ulike maskinlæringstilnærminger før man gir opp, men en viktig ferdighet i et godt maskinlæringsprosjekt er å kritisk vurdere om man skal gå videre. Det er fristende å fortsette prosjekter man har lagt ned mye arbeid i, men det er viktigere å konkludere tidlig nok med at datagrunnlaget er for svakt. En slik konklusjon er også er et godt prosjektresultat i og med at disse erfaringene kan føre til positive endringsprosesser i organisasjonen slik at man fanger mer data, riktige data og data med bedre kvalitet.

ML-modeller kan ha stor betyding for mange bedrifter, men man må da samtidig være bevisst på hvilken risiko det ligger i dette. ML-modeller kan for eksempel avdekke svindel eller hvilke kunder man er i ferd med å miste. Dersom man ikke beskytter disse modellene vil andre aktører for eksempel lære seg hvordan en svindel kan designes for å unngå å bli oppdaget, eller konkurrerende bedrifter kan få kjennskap til hvilke av ens kunder de har høyest mulighet til å kapre. Sikkerheten rundt disse bedriftsinterne modellene må derfor være god.  I andre sammenhenger ser bedriftene muligheter for å ta ML-modeller i form av API-er ut på markedet som en betalt, verdiøkende tjeneste. Uansett kan ML-modellene være viktig intellektuell eiendom som må tas godt vare på.

Det er mange steg på veien til et vellykket ML-prosjekt, men om en ser seg om med nye øyne på hvilke data man sitter på kan det ligge muligheter nærmere enn man hadde forventet. Med riktig kompetanse og god kunnskap om dataene, forretningsforståelse og definerte målsetninger kan et digitaliseringssteg allerede være innenfor rekkevidde.

 

About Kristian Ramsrud

Kristian Ramsrud har 15 års erfaring med analyse av data i DNV GL. Han var med på å grunnlegge enterprise datavarehus/BI-løsningene i DNV GL, og har erfaring med både interne og eksterne løsninger. I 2016 var han team lead for Data Management for Veracity, DNV GLs plattform for stordata før han i 2017 gikk over til å lede maskinlæringsaktivitetene i DNV GLs største forretningsområde, Maritime.