En blid introduktion til lineær algebra

Tweet Share Share Share

Sidst opdateret den 9. august 2019

Hvad er lineær algebra?

Linær algebra er et matematisk område, som alle er enige om at være en forudsætning for en dybere forståelse af maskinlæring.

Og selv om lineær algebra er et stort område med mange esoteriske teorier og resultater, er de praktiske værktøjer og notationer, der er hentet fra området, praktiske for maskinlæringsudøvere. Med et solidt fundament for, hvad lineær algebra er, er det muligt at fokusere på kun de gode eller relevante dele.

I denne tutorial vil du opdage, hvad præcis lineær algebra er ud fra et maskinlæringsperspektiv.

Når du har gennemført denne tutorial, vil du vide:

  • Linær algebra er matematikken om data.
  • Linear algebra har haft en markant indflydelse på statistikområdet.
  • Linear algebra ligger til grund for mange praktiske matematiske værktøjer, såsom Fourier-serier og computergrafik.

Kick-start dit projekt med min nye bog Linear Algebra for Machine Learning, herunder trinvise tutorials og Python-kildekodefilerne til alle eksempler.

Lad os komme i gang.

En blid introduktion til lineær algebra
Foto af Steve Corey, nogle rettigheder forbeholdt.

Overblik over vejledningen

Denne vejledning er opdelt i 4 dele; de er:

  1. Linær algebra
  2. Numerisk lineær algebra
  3. Linær algebra og statistik
  4. Anvendelser af lineær algebra

Har du brug for hjælp med lineær algebra til maskinlæring?

Tag mit gratis 7-dages e-mail crashkursus nu (med prøvekode).

Klik for at tilmelde dig og få også en gratis PDF Ebook-version af kurset.

Download dit GRATIS minikursus

Linær algebra

Linær algebra er en gren af matematikken, men sandheden er, at lineær algebra er matematikken om data. Matricer og vektorer er dataenes sprog.

Linear algebra handler om lineære kombinationer. Det vil sige, at man bruger aritmetik på talsøjler, kaldet vektorer, og talmatrialer, kaldet matricer, til at skabe nye talsøjler og talmatrialer. Lineær algebra er studiet af linjer og planer, vektorrum og afbildninger, der er nødvendige for lineære transformationer.

Det er et relativt ungt fagområde, idet det oprindeligt blev formaliseret i 1800-tallet for at finde ubekendte i systemer af lineære ligninger. En lineær ligning er blot en serie af termer og matematiske operationer, hvor nogle termer er ukendte; f.eks:

1
y = 4 * x + 1

Sammenligninger som denne er lineære, idet de beskriver en linje på en to-dimensionelle graf. Linjen kommer af, at man indsætter forskellige værdier i den ukendte x for at finde ud af, hvad ligningen eller modellen gør ved værdien af y.

Vi kan opstille et system af ligninger med samme form med to eller flere ubekendte; f.eks:

1
2
3
4

y = 0.1 * x1 + 0,4 * x2
y = 0,3 * x1 + 0,9 * x2
y = 0,2 * x1 + 0,3 * x2

Kolonnen af y-værdier kan tages som en kolonnevektor af udgange fra ligningen. De to kolonner med floating-point-værdier er datakolonnerne, f.eks. a1 og a2, og kan tages som en matrix A. De to ukendte værdier x1 og x2 kan tages som ligningens koefficienter og udgør tilsammen en vektor af ukendte værdier b, der skal løses. Vi kan skrive dette kompakt ved hjælp af lineær algebra notation som:

1
y = A . b

Problemer af denne form er generelt vanskelige at løse, fordi der er flere ubekendte (her har vi 2), end der er ligninger at løse (her har vi 3). Endvidere er der ofte ikke en enkelt linje, der kan opfylde alle ligningerne uden fejl. Systemer, der beskriver problemer, som vi ofte er interesserede i (f.eks. en lineær regression), kan have et uendeligt antal løsninger.

Dette giver en lille smagsprøve på selve kernen i lineær algebra, der interesserer os som maskinlæringsudøvere. En stor del af resten af operationerne handler om at gøre dette problem og problemer som det lettere at forstå og løse.

Numerisk lineær algebra

Anvendelsen af lineær algebra i computere kaldes ofte numerisk lineær algebra.

“Numerisk” lineær algebra er i virkeligheden anvendt lineær algebra.

– Side ix, Numerisk lineær algebra, 1997.

Det er mere end blot implementeringen af lineære algebraoperationer i kodebiblioteker; det omfatter også den omhyggelige håndtering af problemerne i anvendt matematik, såsom at arbejde med digitale computeres begrænsede præcision med flydende komma.

Computere er gode til at udføre lineære algebraberegninger, og en stor del af den afhængighed af Graphical Processing Units (GPU’er), som moderne maskinlæringsmetoder, såsom deep learning, har, skyldes deres evne til at beregne lineære algebraoperationer hurtigt.

Effektive implementeringer af vektor- og matrixoperationer blev oprindeligt implementeret i programmeringssproget FORTRAN i 1970’erne og 1980’erne, og meget kode eller kode, der er porteret fra disse implementeringer, ligger til grund for meget af den lineære algebra, der udføres ved hjælp af moderne programmeringssprog som Python.

Tre populære open source-biblioteker til numerisk lineær algebra, der implementerer disse funktioner, er:

  • Linear Algebra Package, eller LAPACK.
  • Basic Linear Algebra Subprograms, eller BLAS (en standard for lineære algebrabiblioteker).
  • Automatically Tuned Linear Algebra Software, eller ATLAS.

Ofte, når du beregner lineære algebraoperationer direkte eller indirekte via algoritmer af højere orden, dykker din kode med stor sandsynlighed ned for at bruge et af disse, eller lignende lineære algebrabiblioteker. Navnet på et eller flere af disse underliggende biblioteker er måske bekendt for dig, hvis du har installeret eller kompileret et af Pythons numeriske biblioteker, såsom SciPy og NumPy.

Linær algebra og statistik

Linær algebra er et værdifuldt værktøj i andre grene af matematikken, især statistik.

Sædvanligvis forventes det, at studerende, der studerer statistik, har set mindst et semester lineær algebra (eller anvendt algebra) på bachelorniveau.

– Side xv, Linear Algebra and Matrix Analysis for Statistics, 2014.

Den lineære algebras indflydelse er vigtig at overveje, da begge områder har et grundlæggende forhold til området anvendt maskinlæring.

Nogle tydelige fingeraftryk fra lineær algebra på statistik og statistiske metoder omfatter:

  • Brug af vektor- og matricenotation, især med multivariate statistikker.
  • Løsninger til mindste kvadrater og vægtede mindste kvadrater, f.eks. til lineær regression.
  • Stimater af middelværdi og varians af datamatricer.
  • Kovariansmatrixen, der spiller en central rolle i multinomiale gaussiske fordelinger.
  • Principal komponentanalyse til datareduktion, der trækker mange af disse elementer sammen.

Som du kan se, er moderne statistik og dataanalyse, i hvert fald hvad angår en maskinlæringsmedarbejders interesser, afhængig af forståelsen af og værktøjerne i lineær algebra.

Anvendelser af lineær algebra

Da lineær algebra er matematikken om data, anvendes værktøjerne i lineær algebra inden for mange områder.

I sin klassiske bog om emnet med titlen “Introduction to Linear Algebra” giver Gilbert Strang et kapitel dedikeret til anvendelser af lineær algebra. I det demonstrerer han specifikke matematiske værktøjer med rod i lineær algebra. Kort fortalt er de:

  • Matricer inden for teknik, f.eks. en fjederlinje.
  • Grafer og netværk, f.eks. analyse af netværk.
  • Markov-matricer, befolkning og økonomi, f.eks. befolkningsvækst.
  • Linær programmering, simplex-optimeringsmetoden.
  • Fourier-serier: Lineær algebra for funktioner, der anvendes i vid udstrækning inden for signalbehandling.
  • Linær algebra for statistik og sandsynlighed, f.eks. mindste kvadraters regression.
  • Computergrafik, f.eks. de forskellige translation, omskalering og rotation af billeder.

En anden interessant anvendelse af lineær algebra er, at det er den type matematik, som Albert Einstein anvendte i dele af sin relativitetsteori. Nærmere bestemt tensorer og tensorberegning. Han introducerede også en ny type lineær algebra-notation i fysikken kaldet Einstein-notation, eller Einstein-summationskonventionen.

Lineær algebra tutorials

Søger du hjælp til at komme i gang med lineær algebra, så tag et kig på nogle af disse tutorials:

  • Linear Algebra for Machine Learning (7-dages minikursus)
  • Linear Algebra Cheat Sheet for Machine Learning
  • Basics of Mathematical Notation for Machine Learning

Udvidelser

Dette afsnit indeholder en liste over nogle ideer til udvidelse af vejledningen, som du måske ønsker at undersøge.

  • Søg i bøger og på internettet efter 5 citater, der definerer området lineær algebra.
  • Søg og oplist 5 yderligere anvendelser eller anvendelser af lineær algebra inden for sandsynlighed og statistik.
  • Oplys og skriv korte definitioner af 10 termer, der anvendes i beskrivelsen af lineær algebra.

Hvis du udforsker nogle af disse udvidelser, vil jeg gerne vide det.

Videre læsning

Dette afsnit indeholder flere ressourcer om emnet, hvis du ønsker at gå i dybden.

Bøger

  • Introduction to Linear Algebra, 2016.
  • Numerical Linear Algebra, 1997.
  • Linear Algebra and Matrix Analysis for Statistics, 2014.

Artikler

  • Linear Algebra på Wikipedia
  • Linear Algebra Kategori på Wikipedia
  • Linær Algebra Liste over emner på Wikipedia
  • LAPACK på Wikipedia
  • Basic Linear Algebra Subprograms på Wikipedia
  • Basic Linear Algebra Subprograms på Wikipedia
  • Automatisk tunet lineær algebra-software på Wikipedia
  • Einstein-notation på Wikipedia
  • Matematik for generel relativitetsteori på Wikipedia
  • Linear algebra til maskinlæring

Summary

I denne vejledning, opdagede du en blid introduktion til lineær algebra ud fra et maskinlæringsperspektiv.

Specifikt lærte du:

  • Linær algebra er matematikken om data.
  • Linær algebra har haft en markant indflydelse på statistikområdet.
  • Linear algebra ligger til grund for mange praktiske matematiske værktøjer, såsom Fourier-serier og computergrafik.

Har du nogen spørgsmål?
Sæt dine spørgsmål i kommentarerne nedenfor, og jeg vil gøre mit bedste for at svare.

Få styr på lineær algebra til maskinlæring!

Udvikle en fungerende forståelse af lineær algebra

…ved at skrive kodelinjer i python

Opdag hvordan i min nye E-bog:
Linear Algebra for Machine Learning

Den indeholder selvstuderende tutorials om emner som:
Vektornormer, matrixmultiplikation, Tensorer, Eigendekomposition, SVD, PCA og meget mere…

Finally Understand the Mathematics of Data

Skip the Academics. Just Results.

See What’s Inside

Tweet Share Share Share

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.