Hvad er Machine Learning og hvordan kommer du i gang?

af Sebastian Wrede - Software Engineer
| Læsetid: minutter

Machine Learning, også forkortet ML, er en metode til at få maskiner til at lære af data. Det er en underkategori af kunstig intelligens, men hvor kunstig intelligens forsøger bredt at imitere den menneskelige intelligens, så er machine learning fokuseret på at træne en model på data til at løse en bestemt opgave. Hvilken data man bruger og strukturen for modellen kan variere, men fællestrækket er, at modellen gradvist bliver tilpasset data under træningen.

Machine learning inddeles typisk i de to kategorier supervised learning og unsupervised learning efter hvordan data er struktureret. I supervised learning består data af et input og en label, der beskriver det forventede output af modellen. Træningsprocessen går så ud på at få modellen til at give et output, der kommer så tæt på ens label som muligt. I unsupervised learning har man kun input data og ikke noget label, hvilket betyder at træningsprocessen handler om at strukturere og gruppere data efter forskellige kriterier.

De to kategorier kan også kombineres, så man får en hybrid af de to metoder kaldet semi-supervised learning, hvor en lille del af ens datasæt har labels. En anden tilgang til træningen er reinforcement learning, hvor man, i stedet for at være afhængig af data og labels, får modellen til at interagere med omgivelserne og lærer via trial-and-error. Man undgår derved at skulle have et datasæt fra begyndelsen og lader modellen lære af det, den observerer, mens den kører.

En anden måde at inddele Machine Learning er ved at kigge på formålet med modellen (eller analysen). Det kan være:

Prescriptive: Foreslår hvad man kan gøre
Predictive: Forudsiger hvad der vil ske i fremtiden
Diagnostic: Finder ud af hvorfor det er sket
Descriptive: Beskriver hvad der er sket

De to tilgange til machine learning beskrevet her siger ikke noget om modellens struktur. Det skyldes, at det definerende ved machine learning er læringsprocessen snarere end det konkrete valg af model. Modellen kan være bygget som et neuralt netværk eller en statistisk model eller noget helt tredje. Afhængigt af hvilken data man vælger og hvilket læringsmål man definerer, kan man med machine learning løse forskellige problemer inden for forskellige domæner og brancher. 

Gevinsterne ved Machine Learning

Anvendelsen af machine learning skaber ikke værdi i sig selv, men kommer af de problemer modellen løser. De væsentligste gevinster ved machine learning er:

-        Effektivitet: ML kan gøre nogle processer mere effektive ved at håndtere et arbejde, som man før måtte gøre manuelt. Effektiviteten kan også komme af at erstatte en tidligere regel-baseret model, så man ved at bruge en machine learning model gør modelleringsarbejdet mere effektivt.

-        Nye forretningsmuligheder: ML kan bruges til at løse problemer, hvor der ikke fandtes løsninger før. Det åbner op for helt nye muligheder, hvor ML kan integreres i et nyt produkt.

-        Øget medarbejdertilfredshed: I mange tilfælde kan machine learning løse kedelige rutineopgaver, der ellers skulle udføres af medarbejdere. Ved at få maskinen til at løse rutineopgaverne skaber man mere tid i medarbejdernes hverdag til de spændende opgaver. 

Ny anvendelse af data: Mange virksomheder ligger inde med data, der ikke bliver brugt, og dette potentiale kan ML forløse ved at bruge data som træningsmateriale.

Sådan kommer du i gang med Machine Learning

Når man skal i gang med at bruge machine learning, så er det vigtigt at holde fokus på det problem, man ønsker at løse, fremfor hvilken konkret machine learning teknologi, der kunne være spændende at afprøve. Man kan opdele et machine learning projekt i fem faser:

-         Definer forretningsproblem: Find use cases og identificer løsninger. Dette kan også opstå under udviklingsarbejdet med et andet IT-system eller under moderniseringen af en dataløsning.

-        Udforsk data: Find ud af hvilken eksisterende data, der kan bruges til at udvikle en løsning, og hvilken yderligere data, der skal indsamles.

-        Indlæs og transformer data: Den relevante data gøres klar til udviklingen og træningen af modellen. Det kan indebære at hente data fra en produktionsdatabase og udtrække relevante features.  

-        Udvikling og træning af model: Man kan vælge at bygge sin egen model fra bunden, bruge en kommerciel færdigbygget løsning, eller bruge en open-sourceløsning. Ligegyldigt hvad man vælger, så indebærer dette trin udviklingen, integrationen, og træningen af modellen. Det indebærer også test af modellen på et test-datasæt.

-        Deployment og monitorering: Den endelige udrulning af systemet, som også indebærer et system til at opsamle data til videreudvikling og træning af modellen samt monitorering af modellens performance.Når man har deployet sin model, så er man ikke færdig med ML-processen. Det er en cyklus, ligesom med alle andre IT-systemer, hvor man kontinuerligt skal forbedre og tilpasse systemet. I forbindelse med ML er det typisk den nye data, man får som input, og opdateringer til modellen, man skal have styr på. Strukturen af ML-modellen kan ændres over tid og de forskellige versioner af modellen kan versionsstyres på samme måde som den øvrige kodebase. Den nye data man får ind gennem brugen af ML skal gemmes og indarbejdes i den videre træning af modellen. Processen refereres til som MLOps, hvilket er ML-versionen af DevOps. 

Lad os hjælpe dig med at bruge Machine Learning

Selvom færdigudviklede ML-systemer kan være lette at anvende som bruger, så kræver forretningsanalysen, opsætningen og vedligeholdelsen en særlig ekspertise, som vi kan levere. Machine learning behøver ikke at blive opsat som et selvstændigt system. Det kan sagtens indgå i udviklingen af et relateret IT-system, hvori ML kan integreres for enten at løse et problem, der ikke kan løses på andre måder, eller for at effektivisere en proces. Hvis man alligevel moderniserer datahåndteringen, for eksempel ved at rykke data til et cloud-system, så kan man også i den proces få en indsigt i data, der giver idéer til ML-systemer, eller man kan sørge for at opsætningen er klar til fremtidig dataanalyse eller ML-udvikling.  

Mangler du sparring på hvordan du kommer videre, enten med opgradering af dit nuværende system eller gerne vil bygge et nyt, så kontakt os på +45 61 77 70 70 eller på mail: rasmus.halvor@soprasteria.com

Kontakt os

Search