Av Ahsan Ghafoor, 3 års student på integrert master i Informatikk ved UiT
Hva skjer når du ber en algoritme om å anbefale karriere, og den faktisk klarer det?
Tenk deg dette: Du liker å snakke med folk og er god til å overbevise, men du vil helst slippe matematikk. Hvilke yrker passer for deg? Det er akkurat slike spørsmål jeg prøver å svare på denne våren, med kode, data og en vektordatabase.

Jeg har praksis gjennom emnet Realfagspraksis ved UiT, og jobber med å bygge et anbefalingssystem for yrker. Systemet tar inn ferdigheter og egenskaper brukeren velger, og foreslår karriereveier som matcher. Ikke bare én «riktig» jobb, men flere relevante forslag, med forklaringer på hvorfor akkurat disse yrkene dukker opp. Jeg fikk jobbe både hjemmefra og på kontoret, noe som ga meg en god miks av selvstendighet og samarbeid. På kontoret spiste vi felles lunsj, og jeg ble til og med invitert med på påskelunsj og interne møter, det føltes som å være en del av teamet fra dag én.
Utdanning.no, mer enn bare en nettside
Praksisen min er knyttet til Utdanning.no, en nasjonal tjeneste som samler informasjon om utdanning og yrker i Norge. Nettsiden eies av Kunnskapsdepartementet og drives av Direktoratet for høyere utdanning og kompetanse (HK-dir). Målet deres er å hjelpe folk med å ta gode valg om utdanning og karriere gjennom hele livet. Det betyr verktøy som Jobbkompasset og karakterkalkulatoren, ting folk faktisk bruker når de lurer på hva de skal bli. Prosjektet mitt passer rett inn her, siden jeg jobber med å gjøre nettopp slike anbefalinger mer treffsikre og lettere å forstå i det nye verktøyet «Jobbutforskeren».


Dataene jeg bruker kommer fra O*NET, verdens største yrkesundersøkelse. Dataen inneholder tallverdier for hvor viktig ulike ferdigheter, kunnskaper og evner er i rundt 800 yrker. For eksempel: hvor viktig er matematikk for en programmerer? Hvor viktig er det å kunne snakke foran folk for en advokat? Hvert yrke blir til en vektor, en lang liste med tall som beskriver yrket. Tenk på det som et fingeravtrykk: ingen yrker er helt like, men noen ligner mer på hverandre enn andre.
For å finne de beste matchene bruker jeg Qdrant, en vektordatabase. Når en bruker krysser av for «jeg liker å snakke med folk» og «jeg vil unngå matematikk», finner systemer yrkene der ferdighetskravene ligner mest på det brukeren beskriver.
Det som overrasket meg mest
Det første som slo meg, var hvor mye små endringer betyr. Måten jeg skalerte tallene på hadde stor påvirkning. Det er litt som å justere volumknappene på mikser, små dreininger endrer hele lyden. Negative valg var også overraskende vanskelige. Å si «jeg vil unngå stress» er ikke det motsatte av «jeg liker stress». Negative variabler fungerer som en straff i rangeringen, yrker som scorer høyt på noe du vil unngå, dyttes nedover lista.
Forklarbarhet, det holder ikke å bare gi svar
En viktig del av prosjektet er å forklare hvorfor et yrke blir anbefalt. Brukeren trenger å vite at advokat er en match fordi de liker å snakke og overbevise. For hver anbefaling viser systemet hvilke valg som bidro mest. I en offentlig tjeneste som Utdanning.no er dette ekstra viktig, systemet skal inspirere til utforskning, ikke en gi fasit.
Fagkompetansen som faktisk ble brukt og utfordringer jeg møtte på
Studiet har forberedt meg godt. Programmering var selvsagt sentral, særlig bruk av Python, Pandas og API-er. Det som overrasket meg mest, var hvor viktig den matematiske forståelsen var. Normalisering, vekting og «nærhet i et vektorrom» bygger på kunnskap i kalkulus, lineær algebra og statistikk fra studiet. Kommunikasjon var også viktigere enn jeg hadde trodd, gode avklaringer tidlig sparte meg for mye arbeid senere.
Det vanskeligste var å vite hva som var «riktig» resultat. Når en bruker velger fem egenskaper, finnes det ingen fasit. Løsningen var enkle tester: velger brukeren bare én variabel, skal resultatet være identisk med å sortere direkte på den. Disse «sunn fornuft»-sjekker ga meg tillit til at systemet oppfører seg stabilt.
Veien videre
Hvis jeg får mer tid, vil jeg jobbe med å bruke usikkerheten i dataene. O*NET inneholder informasjon om standardfeil og konfidensintervall. Det betyr at vi vet hvor sikre svarene er. Et yrke der alle er enige om at matematikk er viktig bør kanskje vektes annerledes enn et yrke der det er stor uenighet. Dette kunne gjort anbefalingene enda mer nyanserte.
Denne praksisperioden har gitt meg et mye mer realistisk bilde av hvordan fag brukes i arbeidslivet. Den viktigste lærdommen? Data må forstås, ikke bare brukes. En god løsning må kunne forklares og små valg i modelleringen kan ha overraskende stor effekt. Jeg sitter igjen med bedre forståelse av både teknologien og hvordan den kan brukes i en tjeneste som faktisk hjelper folk.
Til studenter som vurderer Realfagspraksis: gjør det. Det er noe helt annet å jobbe med et ekte problem enn å løse oppgaver i et emne.

Takk til Utdanning.no for en lærerik praksisperiode!
