Gå til hovedsiden

Den skjulte korrelasjonen mellom maskinlæring og data management

For å lykkes med maskinlæring er man avhengig av store datasett, og med store datasett kommer behovet for data management. Hvorfor er det så viktig med riktig klargjøring av data, og hvordan gjør man det? Denne artikkelen ser nærmere på hvorfor, og ikke minst hvordan organisasjoner får kontroll på dataene sine.

I flere tiår hadde maskinlæring (ML) en treg utvikling på grunn av kompleksiteten som kreves for å emulere menneskelig oppførsel samt utfordringene knyttet til å prosessere datasett av en tilstrekkelig størrelse. I dag ser det annerledes ut. Takket være store fremskritt innen software-utvikling, tilgjengeligheten av skalerbar datakraft, og tilgangen på store og rike data sett er det et økende antall organisasjoner som investerer i teknologi knyttet til maskinlæring.

Maskinlæring har vokst såpass mye at de fleste forbrukere har blitt avhengig av av det i mange tjenester de bruker daglig, som søkemotorer og sosiale medier-plattformer. På lik linje bruker organisasjoner det i CRM-systemer, innenfor markedsføring og ledelse, og generelt for å ta bedre avgjørelser for forretningen. 

Tingen er at for å lykkes med implementeringen av løsninger basert på maskinlæring er man avhengig av store mengder data. Man kan egentlig si at data er hjertet av enhver maskinlærings-modell. Og med store mengder data, kommer behovet for data management. En vesentlig forutsetning for å lykkes med data management er riktig klargjøring av data. Hvis man feiler her, vil maskinlærings-modellene ta stor skade av det. 

Hvorfor klargjøre data?

Når man står ovenfor en utfordring som må løses er rå data innsamlet basert på hva problemet er og hvilke predikasjoner en maskinlærings-algoritme må gjøre. For eksempel, om man ønsker å predikere prisen på boliger i et bestemt område, trenger man et stort nok datasett som inneholder informasjon om tidligere salg av boliger i dette området – inkludert prisene og et detaljert sett med attributter om hvert boligsalg. 

Når dataene er innhentet, kan de ikke brukes slik de er i sin rå form. Dataene må transformeres før en organisasjon kan ta avgjørelser basert på datasettet. Tre hovedgrunner til det er:

  • Algoritmer forventer tall. Selv om et spesifikt datasett kan inneholde data av mange ulike typer, forventer maskinlærings-modeller typisk numeriske data. Med andre ord, så kan en slik modell ta et tall som input, og predikere et tall som output.
  • Algoritmer har bestemte forutsetninger for å lykkes. Det finnes et bredt utvalg av unike algoritmer tilgjengelig som kan anvendes for å løse unike problem. Når man har planlagt et prosjekt, må man evaluere flere ulike algoritmer for å bestemme hvilke som vil gi best resultat, gitt datasettet og problemene som må løses. Utfordringen er at enhver algoritme has spesielle krav til data, så dataene må tilpasses de bestemte algoritmene som velges.
  • Ytelsen i modeller er avhengig av data. Ytelsen til en maskinlærings-algoritme er kun så god som dataene som er brukt til å trene den. Man kan sammenligne det med en bil. Hvis bilen fylles med dårlig drivstoff, vil ytelsen reduseres. I maskinlærings-modeller betyr det at predikasjonene vil bli dårligere hvis input-dataen ikke er klargjort eller hvis datasettet ikke er tilstrekkelig stort nok.

Gitt at mange maskinlærings-modeller er godt etablerte, godt forstått og mye brukt er nøkkelforskjellen hvilke data som blir brukt til å trene de. Til syvende og sist betyr det at klargjøring av data er kritisk, og kan være avgjørende om implementeringen av en maskinlærings-modell lykkes eller ikke.

Best praksis for data management

Ved å ha dette i bakhodet finnes det noen anbefalte praksiser når det kommer til data management for å sørge for at dataene er korrekt klargjort, og at den best mulige dataen er tilgjengelig for analyse eller for å bli brukt i en spesiell algoritme.

Identifiser use casene for bruken av maskinlæring

Fordi mange analyse-problemer godt kan løses av selv-lærende algoritmer, tror mange organisasjoner at det er så enkelt som å velge en algoritme og mate den med data. Ved å gjøre dette overser de spørsmålet om bruken av en spesiell algoritme er hensiktsmessig. I praksis er det dataene som bestemmer hvilken algoritme som skal brukes, ikke omvendt.

Definer datasettet

Enhver algoritme krever et datasett, kildene og hvilken frekvens den skal oppdateres med. Det er viktig å huske på at disse kravene vil variere avhengig av hvilken algoritme som blir brukt. For eksempel, om det er behov for sanntids-analyse, kan algoritmen kreve live clickstream-data. På samme måte kan prediktive applikasjoner kreve historiske data for å gjøre predikeringer. Det er vesentlig å evaluere hva som er faktisk er mulig, budsjett og tid tatt i betraktning. Dette vil spille inn en stor rolle i hva data som blir brukt, hvordan dataene blir definert og hvordan dataene blir klargjort.

Sett krav til klargjøringen av data

I tillegg til å avgjøre hvilke data som bør brukes vil use caset også i stor grad virke inn på kravene til klargjøringen av data gjennom datainnsamlingen og raffineringen av data som skjer før man setter i gang med analysene. Når riktige prosedyrer skal etableres må man tenke på håndteringen av mangelfulle verdier, dataprofilering og kvalitetssikring av dataene for å håndtere false positives og dataskjevhet.

Definer logiske bruksmønstre

Når use caset er identifisert og kravene for både selve datasettet og klargjøringen av dataene er bestemt, må man finne ut av hvordan man ønsker at dataene skal bli brukt. Med andre ord må man bestemme input på datatyper, hvilke avgjørelser algoritmen skal ta og tyngden av disse avgjørelsene.

Utvikle en data-pipeline for hvert use case

Når alle stegene over er fullført, må man definere kravene til data pipelinen for hvert use case, både for modelltreningen og for produksjon. Husk at siden ulike use cases krever distinkte datasett, krav til ytelse og prosessering og frekvenser på avgjørelser kan det være behov for ulike data pipelines. På grunn av det bør alle pipeliner studeres for å gi organisasjonen muligheten til å identifisere mulige overlapp og se mulighetene for å kombinere pipeline-komponenter for å gjøre hele prosessen så effektiv som mulig.

Velg en dataplattform

Det neste man må gjøre er å velge en dataplattform basert på datakildene som vil bli brukt og kravene til dataprosessering. Og det finnes et stort utvalg, fra open-source alternativer til kommersielle løsninger. For eksempel kan data lakes effektivt lagre store mengder data for videre utforsking. Den dataen kan bli prosessert, integrert og transformert til komplekse datasett klargjort for analyser i strukturerte datavarehus. 

Hva er forskjellen mellom en data lake og et datavarehus? Les mer om det her.

Planlegg for god vekst

Når det kommer til planlegging av hardware, sørg for å planlegge for tilstrekkelig kapasitet i ytelse og prosesseringskraft, lagring og nettverkskapasitet for hver pipeline. Prosjekter basert på maskinlæring er avhengig av data og bruken er større under modell-trening og forbedring enn når det er ute i produksjon. Det er altså helt nødvendig å ta høyde for god vekst i datavolum og kilder. Skybaserte plattformer tilbyr skalerbare muligheter, slik at du kan bestemme ytelse og prosesseringskraft uten å måtte gå til innkjøp av hardware.

Tilstrekkelig testing

En av de viktigste suksessfaktorene for å lykkes med maskinlæring er å sørge for nok testing av modellene for å oppnå et best mulig resultat, både før og etter at modellen er i produksjon. Dette krever kontinuerlige justeringer i de underliggende datasettene og en full endrings-historikk tilgjengelig.

Monitorer og raffiner dataflyten

Organisasjoner bør velge løsninger som sentraliserer konfigureringen, monitoreringen, og analyseringen av oppgaver som gjør det lettere å styre ytelse, feilsøking og planlegging av kapasitet. Ved å gjøre det kan organisasjoner sørge for at data forblir tilgjengelige og klar for analyse med maskinlæring.

Hvordan kan Visma bWise bistå din organisasjon?

Ved å følge disse praksisene kan organisasjoner optimere data-arkitekturen for å levere de beste resultatene som er mulig for deres bedrift. Det kan gjøre at det blir enklere å håndtere nye use caser og imøtekomme nye datasett. TimeXtender er en automatisert data management plattform som bistår organisasjoner med å implementere og kjøre data lakes, datavarehus og semantiske aksess-lag. 

Gjennom TimeXtender kan Visma bWise også hjelpe å sikre dataene dine knyttet mot analyse på Microsoft-plattformer for fremtiden ved å tilby muligheter for å endre dataplattform uten å måtte skrive om data pipelines.

Ønsker du å lære mer om maskinlæring og data managent? Vi holder jevnlige webinarer innenfor aktuelle og spennende temaer innen business intelligence.

Sjekk ut vår kurskalender

Mest populære