Algoritmer for maskinlæring
En introduksjon til matematikken og logikken bak maskinlæring.
Hva er maskinlæringsalgoritmer?
Maskinlæringsalgoritmer er koder som hjelper brukere med å utforske, analysere og finne betydninger i komplekse datasett. Hver algoritme er et finitt sett med utvetydige, trinnvise instruksjoner som en maskin kan følge for å oppnå et bestemt mål. I en maskinlæringsmodell er målet å etablere eller oppdage mønstre som personer kan bruke til å lage prognoser eller kategorisere informasjon. Hva er maskinlæring?
Maskinlæringsalgoritmer bruker parametere som er basert på læringsdata, som er et delsett med data som representerer det store settet. Etter hvert som opplæringsdata utvides for å representere verden på en mer realistisk måte, beregner algoritmen mer nøyaktige resultater.
Forskjellige algoritmer analyserer data på forskjellige måter. Du grupperes ofte av maskinlæringsteknikkene de brukes for: overvåket læring, ikke-overvåket læring og forsterkningslæring. De mest brukte algoritmene bruker regresjon og klassifisering til å forutse målkategorier, finne uvanlige datapunkter, forutse verdier og oppdage likheter.
Maskinlæringsteknikker
Etterhvert som du lærer mer om maskinlæringsalgoritmer, vil du oppdage at de vanligvis faller innenfor én av tre maskinlæringsteknikker:
Overvåket opplæring
I overvåket læring gjør algoritmene prognoser basert på et sett med merkede eksempler som du angir. Denne teknikken er nyttig når du vet hvordan resultatet skal se ut.
Du kan for eksempel angi et datasett som inkluderer bypopulasjoner etter år i løpet av de siste 100 årene, og du ønsker å vite hva populasjonen til en bestemt by vil være fire år fra nå. Resultatet bruker etiketter som allerede finnes i datasettet: populasjon, sted og år.
Opplæring som ikke overvåkes
I ikke-overvåket læring er ikke datapunktene merket – algoritmen skalerer dem for deg ved å organisere dataene eller beskrive strukturen. Denne teknikken er nyttig når du ikke vet hvordan resultatet skal se ut.
Du kan for eksempel oppgi kundedata, og du ønsker å opprette kundesegmenter som liker lignende produkter. Dataene du oppgir, er ikke merket, og etikettene i utfallet genereres basert på likhetene som ble oppdaget mellom datapunkter.
Forsterkningsopplæring
Forsterkningslæring bruker algoritmer som lærer av utfall og deretter bestemmer hvilken handling som skal utføres. Etter hver handling mottar algoritmen tilbakemelding som hjelper den med å avgjøre om valget var riktig, nøytralt eller galt. Det er en god teknikk å bruke for automatiserte systemer som må foreta mange små beslutninger uten menneskelig veiledning.
For eksempel, hvis du designer en selvkjørende bil og du vil forsikre deg om at den overholder loven og holder folk trygge. Etterhvert som bilen får mer erfaring og en historikk med forsterkninger, lærer den hvordan den holder seg i sin fil, holder fartsgrensen og bremser for fotgjengere.
Hva kan du bruke maskinlæringsalgoritmer til?
Maskinlæringsalgoritmer hjelper deg med å svare på spørsmål som er for komplekse til å besvare gjennom manuell analyse. Det finnes mange ulike typer maskinlæringsalgoritmer, men brukstilfellene kan stort sett samles i disse kategoriene.
Forutsi en målkategori
Algoritmer for klassifisering av to klasser (binær) deler dataene inn i to kategorier. De er nyttige for spørsmål som kun har to mulige svar som utelukker hverandre, blant annet ja-/nei-spørsmål. For eksempel:
- Kommer dette dekket til å svikte i løpet av de neste 160 milene? Ja eller nei?
- Hva gir flest henvisninger: kreditt på 10 dollar eller 15 % rabatt?
Algoritmer for klassifisering på tvers av klasse (multinominell) deler dataene inn i tre eller flere kategorier. De er nyttige for spørsmål som har tre eller flere mulige svar som utelukker hverandre. For eksempel:
- I hvilken måned kjøper flertallet av reisende flybilletter?
- Hvilken følelse viser denne personen på bildet?
Finne uvanlige datapunkter
Algoritmer for avviksregistrering identifiserer datapunkter som faller utenfor de definerte parameterne for det som er «normalt». Du kan for eksempel bruke algoritmer for avviksregistrering til å svare på spørsmål som:
- Hvor er de defekte delene i denne bunken?
- Hvilke kredittkortkjøp kan være svindel?
Forutsi verdier
Regresjonsalgoritmer forutser verdien for et nytt datapunkt basert på historiske data. De hjelper deg med å svare på spørsmål som:
- Hvor mye koster en gjennomsnittlig leilighet med to soverom i min by til neste år?
- Hvor mange pasienter kommer til å besøke klinikken på tirsdag?
Se hvordan verdier endres over tid
Tidsseriealgoritmer viser hvordan en gitt verdi endres over tid. I tidsserieanalyser og tidsserieprognoser blir data samlet inn regelmessig over tid. Disse dataene brukes til å komme med prediksjoner og identifisere trender, sesongavhengighet, periodisitet og uregelmessighet. Tidsseriealgoritmer brukes til å svare på følgende typer spørsmål:
- Er det sannsynlig at prisen på en gitt aksje øker eller faller i året som kommer?
- Hva blir utgiftene mine neste år?
Oppdage likheter
Klyngealgoritmer deler dataene inn i flere grupper ved å fastslå nivået for likhet mellom datapunkter. Klyngealgoritmer fungerer bra for spørsmål som:
- Hvilke seere liker samme type filmer?
- Hvilke skrivermodeller opplever samme type feil?
Klassifisering
Klassifiseringsalgoritmer bruker prediktive beregninger til å tilordne data til forhåndsangitte kategorier. Klassifiseringsalgoritmer læres opp med inndata og brukes til å besvare spørsmål som for eksempel følgende:
- Er denne e-postmeldingen søppelpost?
- Hvordan er sentimentet (positivt, negativt eller nøytralt) i en gitt tekst?
Hva er maskinlæringsbiblioteker?
Et maskinlæringsbibliotek er et sett med funksjoner, strukturer, moduler og rutiner som er skrevet på et bestemt språk. Utviklere bruker koden i maskinlæringsbiblioteker som byggeklosser for å lage maskinlæringsløsninger som kan utføre kompliserte oppgaver. I stedet for å måtte kode hver algoritme og formel i en maskinlæringsløsning manuelt kan utviklere finne funksjonene og modulene de trenger, i et av de mange tilgjengelige maskinlæringsbibliotekene og bruke dem til å bygge en løsning som dekker behovene deres.
Finn ut mer om maskinlæring
Begynn å eksperimentere med Azure Machine Learning
Se hvordan ulike algoritmer analyserer data ved å utvikle og distribuere dine egne maskinlæringsmodeller ved hjelp av Azure Machine Learning.