Er maskinlæring noe for deg?

Av Tommy Odland

Publisert 03.11.2021

Hva er maskinlæring?

I boka “Machine Learning” definerte Tom M. Mitchell maskinlæring som et dataprogram som blir bedre til å utføre en oppgave etter hvert som programmet får mer data. For at definisjonen skal bli konkret må vi presisere hva det vil si å bli bedre, hvilken oppgave som skal utføres, og hvilke data som skal brukes.

Det enkleste eksempelet jeg kan tenke meg er et dataprogram som skal forutsi salgsprisen til en bolig. Anta at vi har salgspriser fra tidligere solgte boliger i samme nabolag tilgjengelig, men ingen annen informasjon om boligene. Da kan vi bruke gjennomsnittet av de tidligere salgsprisene i et forsøk på å forutsi hva boligen vil selges for. Programmet som tar gjennomsnitt gjør maskinlæring. Med andre ord trenger ikke maskinlæring å være så komplisert.

Virkeligheten er derimot ikke alltid like enkel. I eksempelet med boligpriser har vi kanskje også informasjon om boligenes størrelse, generelle tilstand, beliggenhet, etasje, parkeringsplass, og så videre. Alle disse faktorene kan gjøre oss i stand til å predikere med høyere sikkerhet hva én spesifikk bolig vil selges for, og moderne algoritmer håndterer slik informasjon godt. Problemet blir litt mer utfordrende om man ønsker å forstå i hvilken grad de ulike faktorene påvirker estimatet, eller om man vil vite hvor sikker algoritmen er i sitt estimat. Bruker man algoritmen til å selv sette priser, risikerer man en feedback-loop. Algoritmens prediksjoner påvirker fremtidige data, som videre påvirker fremtidige prediksjoner.

Matematikken bak de beste valgene

Om vi bruker maskinlæring kan vi trene en algoritme til å finne sammenhenger i data. Hvis en butikk har solgt 46, 56, 43, 52, 41, 57 og 48 varer de siste syv dagene, kan vi regne ut at snittet er 49 varer per dag. Gjør vi en liten antagelse om dataene, kan vi være 90 % sikker på at antall varer som blir solgt i morgen vil ligge mellom 38 og 61. Men å vite dette har liten verdi i seg selv. Det er hvordan informasjonen brukes videre som er avgjørende.

La oss anta at varen er nybakte brød, og at forretningsspørsmålet er hvor mange brød butikken bør bake hver dag. Butikken kan da gjøre to typer feil: å bake for lite brød slik at noen kunder snur i døra, eller å bake for mye brød slik at noe må kastes eller gis bort. Dersom kostnaden av begge typer feil er identiske, er det optimale svaret å bake 49 brød. Hvis kostnaden av en type feil er større enn den andre, må dette tas med i beregningen og gjennomsnittet er ikke lenger det riktige svaret.

Matematisk optimering handler om å ta best mulig valg. Det er en teknikk som kan brukes alene, eller sammen med maskinlæring. Ofte ønsker vi å maksimere økonomisk overskudd. Kjente bruksområder for matematisk optimering inkluderer å planlegge flyruter, utnytte dyre maskiner (f.eks. turbiner), sette opp vaktlister på sykehus, planlegge ruter for budbiler og få kabalen med forelesningssaler, fag og professorer til å gå opp på universiteter.

I Boston i USA har rutene for skolebusser historisk sett blitt satt opp manuelt, men når en optimeringsalgoritme gjorde jobben klarte de seg med 120 færre busser. Reisetiden til elevene var den samme. Du kan lese mer om dette i artikkelen “Optimizing schools’ start time and bus routes” av Bertsimas og andre.

Jakten etter gode problemer

Når bør maskinlæring, optimering eller andre former for matematisk modellering brukes? Det viktigste er å begynne med problemet og ikke løsningen. Det er nyttig å vite hva maskinlæring og optimering er, for da kan man lettere gjenkjenne problemer når de dukker opp. Å bestemme seg for å bruke maskinlæring, for så å lete etter et bruksområde, er derimot neppe den beste fremgangsmåten.

Maskinlæring og statistiske modeller brukes når man ønsker å predikere noe, og man har data tilgjengelig. I mitt arbeid har jeg brukt maskinlæring til å forutsi antall salg i fremtiden, beregne sannsynligheten for at kunder sier opp et abonnement, predikere sannsynligheten for at bankkunder misligholder lån og sannsynligheten for at bedrifter ønsker å kjøpe et produkt.

Matematisk optimering brukes når man skal utnytte eller fordele en mengde ressurser. Jeg har brukt optimering til å sette opp vaktlister for hundrevis av ansatte i butikker, slik at antall mennesker på jobb treffer godt på antall kunder i butikkene og de ansattes stillingsprosent respekteres. En annen oppgave gikk ut på å fordele mennesker på arbeidsoppgaver, slik at så mange som mulig fikk jobbe med det de ønsket. Logistikk er et annet relevant bruksområde, og her har jeg jobbet med algoritmer for å fordele varer til butikker på en optimal måte.

Hvis noen i din bedrift planlegger ressursutnyttelse manuelt eller forsøker å ta gode valg under usikre omstendigheter, så kan sannsynligvis optimering og maskinlæring være til hjelp. Moderne algoritmer kan finne beste løsning blant milliarder av muligheter, kvantifisere usikkerhet presist, og utnytte tusenvis av faktorer i et datasett for å predikere mer nøyaktig enn hva et menneske vil klare. På tross av dette fanger en modell sjeldent opp hele virkeligheten. Derfor er en vinnende kombinasjon ofte en algoritme som kommer med forslag, og et menneske som godkjenner eller justerer løsningene i etterkant.

Forutsetninger og realisme

Den viktigste forutsetningen for å lykkes er å ha en klar idé om hvilket problem man ønsker å løse. Det høres kanskje trivielt ut, men av og til snakkes det om at man ønsker innsikt i data, å ta datadrevne valg, eller å bruke maskinlæring - uten at det er tydelig hva man vil oppnå. At både forretningsprosesser og data er ryddige er også viktig. Dårlig datakvalitet er et større problem enn dårlige algoritmer.

Er maskinlæring noe for deg? Svaret er ja hvis du har data og ønsker å predikere noe. Mer generelt: vil en mer matematisk tilnærming være nyttig i din bedrift eller bransje? Jeg kan ikke se for meg at svaret er nei, men selv leter jeg etter matematiske problemer og prosesser som kan forbedres hele tiden. Nå som du vet litt mer om hva maskinlæring er, håper jeg at du vil gjøre det samme.

Trenger din bedrift hjelp til å komme i gang med dataanalyse, maskinlæring eller optimering? Våre eksperter bistår hele veien fra idé til produksjon, fra identifisering av verdifulle forretningsspørsmål og løsningsarkitektur til dataflyt, algoritmeutvikling, evaluering og operasjonalisering.


Vi vil gjerne høre fra deg, ta kontakt her!
MASKINLÆRING FOR LEDERE – MULIGHETER OG FALLGRUVER

  • ARTIKKEL

    Tommy Odland på MittLederUnivers

    Den 21.oktober holdt Tommy Odland et Webinar med tittelen: Maskinlæring for ledere – Muligheter og fallgruver
    Tommy Odland er Data Scientist i Sonat Consulting. Opptak fra webinaret finnes her: https://vimeo.com/470651859/6cbb8a170a

    Les mer
HOW NOT TO FAIL AT MACHINE LEARNING BEFORE YOU EVEN BEGIN

  • ARTIKKEL

    How not to fail at machine learning before you even begin

    Learn more about what it is, and how not to fail in your attempt to create new value with machine learning. Missed our webinar - view a recording of the webinar here.

    Les mer