Hvordan maskinlæring utnytter lineær algebra for å løse dataproblemer

Kilde node: 1866213

Hvordan maskinlæring utnytter lineær algebra for å løse dataproblemer

Hvorfor du bør lære grunnleggende om lineær algebra.


By Harshit Tyagi, Datavitenskapslærer | Mentor | YouTuber



kilde: https://www.wiplane.com/p/foundations-for-data-science-ml

 

Maskiner eller datamaskiner forstår bare tall, og disse tallene må representeres og behandles på en måte som gjør at disse maskinene kan løse problemer ved å lære av data i stedet for forhåndsdefinerte instruksjoner som ved programmering.

Alle typer programmering bruker matematikk på et eller annet nivå, og maskinlæring er programmeringsdata for å lære funksjonen som best beskriver dataene.

Problemet (eller prosessen) med å finne de beste parametrene til en funksjon ved å bruke data kalles modellopplæring i ML.

Derfor, i et nøtteskall, er maskinlæring programmering for å optimalisere for best mulig løsning, og vi trenger matematikk for å forstå hvordan dette problemet løses.

Det første trinnet mot å lære matematikk for ML er Lineær algebra.

Lineær algebra er det matematiske grunnlaget som løser problemet med å representere data så vel som beregninger i maskinlæringsmodeller.

Det er matematikken til matriser - teknisk referert til som vektorer, matriser og tensorer.

Vanlige bruksområder — Lineær algebra i aksjon

 
 



kilde: https://www.wiplane.com/p/foundations-for-data-science-ml

 

I ML-sammenheng har alle hovedfaser av utviklingen av en modell lineær algebra bak kulissene.

Viktige bruksområder som er aktivert av lineær algebra er:

  • data og lært modellrepresentasjon
  • ordinnbedding
  • dimensjonsreduksjon

Datarepresentasjon – Drivstoffet til ML-modeller, aka dato, må konverteres til matriser før de mates inn i modellene dine, beregningene som utføres på disse matrisene inkluderer operasjoner som matrisemultiplikasjon (punktprodukt) som videre returnerer utdata som også er representert som en transformert matrise/tensor av tall.



https://projector.tensorflow.org/

 

Ordinnleiringer - ikke bekymre deg for terminologien her, det handler bare om å representere stordimensjonale data (tenk på et stort antall variabler i dataene dine) med en mindre dimensjonal vektor.

Natural Language Processing (NLP) omhandler tekstdata. Å håndtere tekst betyr å forstå betydningen av et stort korpus av ord, og hvert ord representerer en annen betydning som kan være lik et annet ord, vektorinnbygging i lineær algebra lar oss representere disse ordene mer effektivt.

Egenvektorer (SVD) — Til slutt lar konsepter som egenvektorer oss redusere antall funksjoner eller dimensjoner til dataene, samtidig som vi beholder essensen av dem alle ved å bruke noe som heter hovedkomponentanalyse.

Fra data til vektorer

 
 



kilde: https://www.wiplane.com/p/foundations-for-data-science-ml

 

Lineær algebra omhandler i utgangspunktet vektorer og matriser (ulike former av matriser) og operasjoner på disse matrisene. I NumPy er vektorer i utgangspunktet en 1-dimensjonal rekke tall, men geometrisk har dette både størrelse og retning.



kilde: https://www.wiplane.com/p/foundations-for-data-science-ml

 

Dataene våre kan representeres ved hjelp av en vektor. I figuren ovenfor er en rad i disse dataene representert av en egenskapsvektor som har 3 elementer eller komponenter som representerer 3 forskjellige dimensjoner. N-oppføringer i en vektor gjør det til et n-dimensjonalt vektorrom, og i dette tilfellet kan vi se 3-dimensjoner.

Deep Learning - Tensorer som strømmer gjennom et nevralt nettverk

 
 
Lineær algebra kan sees i aksjon på tvers av alle de store applikasjonene i dag, det være seg sentimentanalyse på en LinkedIn eller et Twitter-innlegg (innbygging), det være seg å oppdage en type lungeinfeksjon fra røntgenbilder (datasyn), eller hvilken som helst tale til tekst bot (NLP).

Alle disse datatypene er representert av tall i tensorer, og vi kjører vektoriserte operasjoner for å lære mønstre fra dem ved å bruke et nevralt nettverk som deretter sender ut behandlet tensor som igjen blir dekodet for å produsere den endelige slutningen til modellen.

Dimensjonsreduksjon — Transformasjon av vektorrom

 
 



kilde: https://www.wiplane.com/p/foundations-for-data-science-ml

 

Når det kommer til innebygging, kan du i utgangspunktet tenke på at en n-dimensjonal vektor erstattes med en annen vektor som tilhører et lavere dimensjonalt rom som er mer meningsfylt og den som overvinner beregningskompleksiteter.

For eksempel, her er en 3-dimensjonal vektor som er erstattet av et 2-dimensjonalt rom, men du kan ekstrapolere det til et virkelighetsscenario hvor du har et veldig stort antall dimensjoner.

Å redusere dimensjoner betyr ikke å fjerne funksjoner fra dataene, men å finne nye funksjoner som er lineære funksjoner av de opprinnelige funksjonene og bevarer variansen til de opprinnelige funksjonene.

Å finne disse nye variablene (funksjonene) betyr å finne hovedkomponentene (PC-er) som konvergerer for å løse egenvektor- og egenverdiproblemer.

Anbefalingsmotorer — Bruk av innbygginger

 
 
Du kan tenke på Embedding som et 2D-plan som er innebygd i et 3D-rom, og det er der dette begrepet kommer fra. Du kan tenke på bakken du står på som et 2D-plan som er innebygd i dette rommet vi bor i.

Bare for å gi deg en reell brukssak for å forholde deg til all denne diskusjonen om vektorinnbygging, bruker alle applikasjoner som gir deg personlige anbefalinger vektorinnbygging i en eller annen form.

Her er for eksempel en grafikk fra Googles kurs om anbefalingssystemer hvor vi får utdelt disse dataene om forskjellige brukere og deres foretrukne filmer. Noen brukere er barn og andre er voksne, noen filmer var alle tiders klassikere mens andre er mer kunstneriske. Noen filmer er rettet mot et yngre publikum, mens filmer som memento foretrekkes av voksne.

Nå trenger vi ikke bare å representere denne informasjonen i tall, men må også finne nye mindre dimensjonale vektorrepresentasjoner som fanger alle disse funksjonene godt.



Kilde: Googles maskinlæringskurs om anbefalingssystemer

 

En veldig rask måte å forstå hvordan vi kan trekke denne oppgaven er ved å forstå noe som kalles matrisefaktorisering som lar oss bryte en stor matrise ned i mindre matriser.

Ignorer tallene og fargene for nå, og prøv å forstå hvordan vi har brutt ned en stor matrise i to mindre.

For eksempel, her ble denne matrisen med 4X5, 4 rader og 5 funksjoner brutt ned i to matriser, en av formen 4X2 og den andre med formen 2X5. Vi har i utgangspunktet nye mindre dimensjonale vektorer for brukere og filmer.

Og dette lar oss plotte dette på et 2D-vektorrom, og her vil du se at bruker #1 og filmen Harry Potter er nærmere og bruker #3 og filmen Shrek er nærmere.

Begrepet prikkprodukt (matrisemultiplikasjon) av vektorer forteller oss mer om likheten mellom to vektorer. Og den har applikasjoner innen korrelasjons-/kovariansberegning, lineær regresjon, logistisk regresjon, PCA, konvolveringer, PageRank og en rekke andre algoritmer.

Bransjer der du ser at LA blir mye brukt

 
 
Nå håper jeg du er overbevist om at Lineær algebra driver ML-initiativene på en rekke områder i dag. Hvis ikke, her er en liste for å nevne noen:

  • Statistikk
  • Kjemisk fysikk
  • Genomics
  • Ordinnbygginger — nevrale nettverk/dyp læring
  • Robotics
  • Bildebehandling
  • Kvantefysikk

Hvor mye bør du vite for å komme i gang med ML/DL

 
 
Nå er det viktige spørsmålet hvordan kan du lære å programmere disse konseptene for lineær algebra. Så svaret er at du ikke trenger å finne opp hjulet på nytt, du trenger bare å forstå det grunnleggende om vektoralgebra beregningsmessig og deretter lære å programmere disse konseptene ved å bruke NumPy.

NumPy er en vitenskapelig beregningspakke som gir oss tilgang til alle de underliggende konseptene for lineær algebra. Den er rask da den kjører kompilert C-kode og den har et stort antall matematiske og vitenskapelige funksjoner som vi kan bruke.

Anbefalte ressurser

 
 

👉 Du kan bruke koden TDS10 å få 10% av.

Sjekk ut kursoversikten:

 
Bio: Harshit Tyagi er en ingeniør med sammenslått erfaring innen webteknologi og datavitenskap (aka full-stack data science). Han har veiledet over 1000 AI/Web/Data Science aspiranter, og designer data science og ML engineering learning tracks. Tidligere utviklet Harshit databehandlingsalgoritmer med forskere ved Yale, MIT og UCLA.

original. Ompostet med tillatelse.

Relatert:

Kilde: https://www.kdnuggets.com/2021/09/machine-learning-leverages-linear-algebra-solve-data-problems.html

Tidstempel:

Mer fra KDnuggets