Maskinlæring i praksis

Ved hjelp av maskinlæring kan du blant annet få store forretningsmessige gevinster, samt øke sikkerheten i virksomheten din. Her får du konkrete tips til hvordan du går frem.

Innlegget er skrevet av infrastruktur-ingeniørene Julie Dahl, Thomas Hillesøy og Martin Hettervik.

Maskinlæring er spådd til å stadig få en større rolle i norsk næringsliv. Tidligere i år oppfordret vi næringslivet til å ta i bruk nettopp maskinlæring for å holde seg på toppen av næringskjeden, publisert i kronikken “Maskinlæring: Neste steg etter Big Data” i Computerworld. Selv om flere kanskje har en idé om hvordan maskinlæring kan tilføre forretningsverdi, er det ikke lett å forestille seg hvordan teknologien skal implementeres i praksis.

Dette innlegget vil belyse konkrete problemstillinger som kan løses med maskinlæring. Vi antar at leseren kjenner til tanken bak maskinlæring, som blant annet kan gjøres ved å lese nevnte kronikk. Vårt valgte verktøy for implementasjon og presentasjon av maskinlæring i dette innlegget er Splunk, dette grunnet fleksibiliteten og funksjonaliteten verktøyet gir.

Maskinlæring kan oppdage sikkerhetsbrudd

Som et eksempel, se for deg et datasystem satt opp etter alle kunstens regler, med autentisering, brannmur, og det som hører til. Allikevel klarer en uvedkommende å snike seg inn ved å utnytte diverse svakheter i systemet. Denne brukeren planter så skadevare i form av et virus. Viruset blir oppdaget, men det er for sent, det har allerede spredd seg utover i systemet. For å minimere ødeleggelsen er det nødvendig å vite hvor viruset har spredd seg og hvilke prosesser det kan påvirke. Hva om maskinene kan gjøre slike prediktive analyser for oss?

Datamaskiner er flinke til mye, men tradisjonelt sett er de ikke flinke til å oppdage unormaliteter og forutse hendelser; det er her maskinlæring kommer inn i bildet. Ved hjelp av Splunk kunne man i scenarioet over oppdaget unormal oppførsel i systemet og stoppet den ondsinnede brukeren allerede før skaden var gjort. Derimot, om viruset var plantet, kunne Splunk forutsett hvordan viruset ville spredd seg utover i resten av systemet. I de følgende avsnittene vil vi presentere hvordan Splunk kan brukes til å løse konkrete problemstillinger som i eksempelet over.

Machine Learning Toolkit er en tilleggspakke til Splunk som utvider plattformen for bruk til maskinlæring. Den gjør det lett for deg som bruker å selv ta i bruk maskinlæring på egen data, dette ved å tilby en rekke nye kommandoer og visualiseringer. Inkludert er grafiske veiledninger som tar deg gjennom stegene for å tilpasse dataen din til forhåndsinstallerte datamodeller. En modell består av algoritmer, som du også kan bruke til å bygge dine egne modeller. Dersom ingen av de ferdige algoritmene passer ditt brukstilfelle kan tilleggspakken utvides med over flere hundre ferdigutviklede algoritmer fra åpen kildekode (kilde).

En av modellene kan identifisere numeriske verdier med statistisk avvik fra tidligere verdier i datasettet. Slike verdier indikerer at noe interessant, uvanlig eller potensielt dårlig har hendt. Modellen kan blant annet brukes til å forhindre uautoriserte tilganger og sikkerhetstrusler i et system. Den kan for eksempel trigge en alarm om et uvanlig antall innlogginger av en bruker er oppdaget. Grafen i Figur 1 viser hvordan Splunk kan måle antall innlogginger og sette en terskel basert på gjennomsnittsavvikene. Statistisk signifikante avvik er her markert med gult.

Figur 1: Markerte numeriske avvik på et datasett.

Forutse salg med maskinlæring

Maskinlæring kan også benyttes i mer forretningsmessige brukstilfeller enn i eksemplet over. For en forretning er det nyttig å lage prognoser for fremtidige salg. Et eksempel er en butikk som selger ferske brød hver dag. De ansatte ønsker å spare kostnader, samt redusere matsvinnet, ved å forutse hvor mange brød de har igjen ved stengetid. I Splunk kan dette enkelt gjøres ved å hente inn historiske data og sanntidsdata for salg, og tilføre denne dataen i en av de innebygde datamodellene. Butikken får da presentert forventet salg, faktiske salg, og et estimat på hvor godt modellen faktisk passer. Butikken kan da benytte det forventede salget til å justere innkjøpet, slik at ved slutten av dagen har de solgt ut alt brødet. Figur 2 viser hvordan dette kan grafisk visualiseres i Splunk.

Figur 2: Brødbeholdning i en butikk over tre dager. Blå stolper viser modellens estimat av brødsalg gjennom dagen, grønne stolper viser faktisk antall solgte brød, og oransje stolper viser modellens nøyaktighet (lavere er bedre).

Samme forretning er kanskje også interessert å se om personer som kjøper en type vare i tillegg har en tendens til å kjøpe visse andre typer varer. Altså, kan kunder klassifiseres på bakgrunn av handlevaner? Dette kan gi forretningen innsikt i hvordan de bør innrede varehyllene sine for mersalg. Med Splunk kan man i en datamodell benytte klassifiseringsalgoritmer som grupperer valgte parametere sammen. En slik klassifisering gir butikken flere muligheter for analyse av bruksmønster, og kan hjelpe butikkens markedsavdeling med hvordan de bør spre informasjon til ulike kundegrupper. Figur 3 gir et visuelt eksempel på hvordan Splunk kan kategorisere handletidspunkt sammen med total salgssum og margin på salget.

Figur 3: Klassifiserte kunder basert på handlevaner. Hver farget klynge representerer en kundegruppe, klassifisert ut i fra tidspunkt på døgnet, salgssum og margin på salget.

Eksemplene vist i dette innlegget er kun få av mange brukstilfeller for maskinlæring. Forhåpentligvis gir de en indikasjon på hvilke problemer teknologien kan løse, og hvordan teknologien kan optimalisere og automatisere prosesser. Splunk sine enkle modeller for maskinlæring kan hypotetisk bli en akselerator for bruk av maskindata i næringslivet, og en brobygger mellom IT- og forretningsavdelinger i bedrifter. Med et verktøy som Splunk har du uansett allerede en plattform og inngangsdør til rask verdiskapning med maskinlæring.

Martin er ansatt i Sopra Steria som Infrastructure Engineer, og arbeider primært med løsninger innenfor Splunk og tilhørende infrastruktur. Han er utdannet sivilingeniør ved NTNU og har jobbet i Sopra Steria siden 2015.

Legg inn en kommentar