Data lever i geometrisk rymd
Allt är en vektor
I maskinlärning lever data i geometrisk rymd. Varje datapunkt med N egenskaper är en punkt i N-dimensionell rymd. Det här är inte en metafor — det är den bokstavliga matematiska grunden för varje algoritm.
En handskriven sifferbild (28×28 pixlar) är en punkt i 784-dimensionell rymd. Varje pixel är en koordinat. Två liknade siffror är närliggande punkter i den rymden. Två olika siffror är långt isär.
En ordinbäddning mappar ett ord till en punkt i 300-dimensionell rymd. Ord med liknande betydelser hamnar i samma område. 'Hund' och 'valp' är nära varandra. 'Hund' och 'parlament' är långt ifrån.
En användarprofil med 50 egenskaper (ålder, köphistorik, klickmönster) är en punkt i 50-dimensionell rymd. Rekommendationsmotorer hittar användare som är 'närliggande' i denna rymd och föreslår vad deras geometriska grannar gillade.
Geometri är hur vi resonerar om dessa rum. Avstånd, riktning, vinkel, projektion — dessa är de grundläggande operationerna för maskinlärning.
Vektoroperationer — byggstenarna
Skalärprodukten driver allt
Tre vektoroperationer spelar roll i maskinlärning:
Vektoraddition — kombinera egenskaper eller signaler. Om du adderar två ordvektorer får du en vektor som representerar båda begreppen blandade tillsammans.
Skalär multiplikation — skalning av en vektor ändrar dess magnitud utan att ändra dess riktning. Inlärningshastigheter i gradientnedstigning är skalära multiplikatorer.
Skalärprodukt — det här är arbetshästen. Skalärprodukten av två vektorer a & b är lika med |a||b|cos(θ), där θ är vinkeln mellan dem. När vektorerna är normaliserade (enhetslängd) är skalärprodukten lika med cosinus för vinkeln.
Cosinuslikhet = cos(θ) = (a·b) / (|a||b|)
Denna enda formel driver:
- Sökmotorer — hitta dokument som liknar en fråga
- Uppmärksamhetsmekanismer — avgöra vilka token som spelar roll för varandra
- Rekommendationsmotorer — matcha användarprofiler med objektprofiler
- Hämtningsförstärkt generering — hitta relevant sammanhang för språkmodeller
cos(θ) = 1 betyder att vektorerna pekar i exakt samma riktning (identisk betydelse). cos(θ) = 0 betyder att de är vinkelräta (orelaterade). cos(θ) = -1 betyder att de pekar i motsatta riktningar (motsatt betydelse).
Cosinuslikhet
Cosinuslikhet är ett av de mest använda måtten i moderna maskinlärningssystem.
Tre sätt att mäta avstånd
Valet av avståndsmått ändrar vad 'liknade' betyder
Med två punkter i rymd finns många sätt att mäta 'avståndet' mellan dem. Varje mått definierar en annan geometri, & den geometrin avgör vad din modell anser vara 'liknade'.
Euklidiskt avstånd (L2) — det raka linjeavståndet. d = √(Σ(aᵢ - bᵢ)²). Det här är 'så luftvägen går' avståndet, det som din intuition förväntar. Det behandlar alla dimensioner lika & är känsligt för magnitud.
Manhattanavstånd (L1) — gångavståndet i stadsblock. d = Σ|aᵢ - bᵢ|. Som att navigera stadskvarter — du kan bara röra dig längs axlar, aldrig diagonalt. Mer robust mot utliggare i enskilda dimensioner eftersom det inte kvadrerar skillnaderna.
Cosinusavstånd — mäter vinkeln mellan vektorer & ignorerar magnitud helt. d = 1 - cos(θ). Två dokument om samma ämne har litet cosinusavstånd oavsett längd. Två lika långa dokument om olika ämnen har stort cosinusavstånd.
Valet är inte godtyckligt. Om magnitud spelar roll (dos av ett läkemedel, temperatur i en reaktor), använd euklidiskt. Om du bryr dig om proportioner snarare än absoluta värden (ordfrekvensfördelningar, användarprefersersprofiler), använd cosinus. Om enskilda funktionsskillnader spelar större roll än sammanlagd magnitud (feldiagnos, där en sensor som spike är meningsfull), använd Manhattan.
K-närmaste grannar — ren geometri
KNN: Den enklaste geometriska algoritmen
K-närmaste grannar är den mest transparenta geometriska algoritmen i maskinlärning. Den har ingen träningsfas — den ÄR träningsdata.
För att klassificera en ny punkt: hitta K närmaste punkter i träningsdata. Låt dem rösta. Majoritetsklassen vinner. Det är hela algoritmen.
Beslutsgränsen som KNN producerar är ett Voronoi-diagram — en uppdelning av rummet där varje punkt tillhör regionen för sin närmaste träningsexempel. Gränserna är de vinkelräta bisektorerna mellan angränsande träningspunkter.
Här är den geometriska insikten som spelar roll: valet av avståndsmått ändrar helt Voronoi-diagrammet. Euklidist avstånd producerar böjda, cirkulära gränser. Manhattanavstånd producerar diamantformade gränser. Cosinusavstånd producerar vinklade, konformade gränser.
Samma träningsdata. Samma K. Annat avståndsmått. Helt annan modell. Geometrin ÄR modellen.
Välja ett avståndsmått
Avståndsmått är inte utbytbara — rätt val beror på vad 'liknade' betyder för din data.
Hyperplan — platta gränser i höga dimensioner
Varje linjär klassificerare hittar ett hyperplan
En linjär klassificerare hittar en plan yta som separerar två klasser. Dimensionaliteten för denna yta beror på rummet:
- I 2D-rum är gränsen en linje (1-dimensionell)
- I 3D-rum är gränsen ett plan (2-dimensionellt)
- I 784D-rum (MNIST-siffror), är gränsen ett 783-dimensionellt hyperplan
Det allmänna mönstret: i N-dimensionell rymd är beslutsgränsen en (N-1)-dimensionell plan yta kallad hyperplan.
Logistisk regression, stödvektormaskiner & enperleptrons är alla hyperplanfinnare. De skiljer sig i HUR de hittar det bästa hyperplanet:
- Logistisk regression maximerar sannolikheten för korrekt klassificering
- SVM:er maximerar den geometriska marginalen — avståndet från hyperplanet till närmaste datapunkter
- Perceptrons hittar helt enkelt något hyperplan som separerar data, utan garanti för optimalitet
Viktvektorn för en linjär klassificerare ÄR normalvektorn för hyperplanet. Biastermen förskjuter hyperplanet bort från origo. Dessa är geometriska objekt med geometriska tolkningar.
Bortom platta gränser
När data inte är linjärt separerbart
Många verkliga problem kan inte lösas med en plan gräns. Överväg klassificering av hundar jämfört med kattbilder — ingen enskild hyperplan i pixelrymd separerar dem rent.
Två geometriska strategier finns:
Strategi 1: Kernel-tricket — Transformera data till ett högre-dimensionellt rum där det ÄR linjärt separerbart. Ett klassiskt exempel: punkter inuti en cirkel (klass A) & punkter utanför (klass B) i 2D. Ingen linje separerar dem. Men lägg till en tredje dimension z = x² + y², & de inre punkterna (små x² + y²) sitter lågt medan de yttre punkterna (stora x² + y²) sitter högt. Nu separerar ett plant hyperplan dem perfekt.
SVM:er med kernel-funktioner gör detta implicit — de beräknar skalärprodukter i det högre-dimensionella rummet utan att någonsin konstruera de faktiska högre-dimensionella vektorerna. Detta kallas 'kernel-tricket' & det är en rent geometrisk insikt.
Strategi 2: Neurala nätverk — Stapla linjära transformationer med olinjära aktiveringsfunktioner. Varje lager tillämpar en linjär transform (matrismultiplikation = rotation + skalning + skjuvning) följt av en olinjär 'böjning' (ReLU, sigmoid, tanh). Kompositionen av många linjär-sedan-böj-operationer kan approximera vilken kontinuerlig gränsform som helst.
Ett djupt neuralt nätverk är en sekvens av geometriska transformationer som vridar inmatningsrummet tills klasserna blir linjärt separerbara i det slutliga lagret.
Separera cirkulär data
Det här är ett av de viktigaste geometriska problemen inom maskinlärning.
Förlustlandskapet
Träning = Vandra nerför en yta
Varje maskinlärningsmodell har parametrar — vikter & biaser. Förlustuktionen mäter hur fel modellens förutsägelser är. Tillsammans definierar dessa ett förlustlandskap: ett landskap där varje punkt motsvarar en specifik uppsättning parametervärden, & höjden är förlusten.
För en modell med 2 parametrar är förlustlandskapet ett 3D-landskap du kan visualisera — kullar, dalar & slätter. För en modell med 175 miljarder parametrar (som GPT-3) finns förlustlandskapet i 175-miljarders-dimensionell rymd. Matematiken är identisk.
Gradientnedstigning är algoritmen som navigerar denna yta. Gradienten är ett geometriskt objekt — en vektor som pekar i riktningen för brantaste uppstigning. För att minska förlusten, flytta i motsatt riktning: den negativa gradienten. Det här är bokstavligen att vandra nerför.
Inlärningshastigheten styr stegstorleken. För stor & du överskrider dalar. För liten & du kryper. Gradienten berättar riktningen; inlärningshastigheten berättar hur långt du ska gå.
Sadelpunkter, minima & geometrin för höga dimensioner
Förlustlandskapet är inte en enkel skål
En naiv bild av träning föreställer sig en smidig skål med en enda lägsta punkt. Verkligheten är långt mer komplex:
Lokala minima — dalar som inte är de djupaste. Gradientnedstigning kan fastna här, nöjd med att varje riktning går upp, även om en djupare dal finns någon annanstans.
Sadelpunkter — formade som en hästsadel. Förlusten kurvor nedåt i vissa dimensioner & uppåt i andra. I 2D är detta sällsynt. I höga dimensioner är sadelpunkter exponentiellt vanligare än lokala minima. En kritisk punkt i 1000-dimensionell rymd måste kurva uppåt i ALLA 1000 dimensioner för att vara ett lokalt minimum. Om bara en dimension kurvor nedåt är det en sadelpunkt.
Platta platåer — områden där gradienten är nära noll. Träningen staller eftersom det inte finns någon sluttning att följa.
Skarpa jämfört med platta minima — ett skarpt minimum är en smal dal. Ett plant minimum är en bred dal. Forskning tyder på att platta minima generaliserar bättre till osedd data, eftersom små störningar till parametrarna (från brus i ny data) inte dramatiskt förändrar förlusten.
SGD med momentum hjälper till att undvika sadelpunkter & skarpa minima. Slumpmässigheten i stokastisk gradientnedstigning fungerar som att skaka en boll på ytan — den studsar ut från smala fällor & hittar bredare, plattare dalar.
SGD jämfört med full-batch gradientnedstigning
Det här är en av de viktigaste praktiska insikterna inom maskinlärningträning.
Ord som vektorer — semantisk aritmetik
Betydelse har riktning
Word2Vec, GloVe & moderna transformer-inbäddningar mappar diskreta tokens (ord, delordr) till kontinuerliga vektorrum. Resultatet är en geometrisk värld där betydelse har koordinater.
Det berömda exemplet: kung - man + kvinna ≈ drottning
Det här är vektoraritmetik. Vektorn från 'man' till 'kung' representerar begreppet 'kunglighet tillämpat på en man'. Vektorn från 'kvinna' till 'drottning' representerar 'kunglighet tillämpat på en kvinna'. Dessa vektorer är ungefär parallella — samma riktning, samma förhållande, olika startpunkter.
Andra geometriska förhållanden som uppstår från träning på text:
- Paris - Frankrike + Italien ≈ Rom (huvudstad-av-förhållande)
- gick - går + simma ≈ simmade (förfluten-tid-transformation)
- större - stor + liten ≈ mindre (komparativ form)
Ingen programmerade dessa förhållanden. Modellen upptäckte att betydelse har geometrisk struktur genom att läsa miljarder ord. Riktningar i inbäddningsrymd motsvarar semantiska förhållanden. Det här är en av de mest djupgående geometriska upptäckterna inom maskinlärning.
Manifold-hypotesen
Högdimensionell data lever på låg-dimensionella ytor
En 64×64 gråskalig ansiktsbild har 4 096 pixelvärden — det är en punkt i 4 096-dimensionell rymd. Men inte varje punkt i detta rum är ett giltigt ansikte. De flesta slumpmässiga 4 096-dimensionella vektorer ser ut som statiskt brus, inte ansikten.
Manifold-hypotesen säger att verkliga, högdimensionella data faktiskt ligger på eller nära låg-dimensionella böjda ytor (mångfalder) inbäddade i det högdimensionella rummet. Mångfalden av ansikten kan vara bara 50-dimensionell — parametriserad av faktorer som belysningsvinkel, huvudhållning, uttryck, hudton, ålder.
Det här är ett geometriskt påstående med praktiska konsekvenser:
- Dimensionalitetsreduktion (PCA, t-SNE, UMAP) fungerar för att data:n är ungefär låg-dimensionell. Dessa algoritmer hittar mångfalden & projicerar på den.
- Autoencoders lär sig att komprimera data:n till ett låg-dimensionellt latent rum (mångfalden) & rekonstruera från det.
- Generativa modeller (VAE:er, diffusionsmodeller) lär sig mångfalden & samplar nya punkter på den — genererar nya ansikten, ny musik, ny text som ser verklig ut för att den ligger på den inlärda mångfalden.
När din modell misslyckas med att generalisera är en geometrisk förklaring: den lärde den felaktiga mångfalden. Träningsdata:n ritade en yta som inte matchar den verkliga data:n-fördelningen.
Vektoranaloger
Den geometriska strukturen för inbäddningsrum är ett av de mest överraskande resultaten i modern maskinlärning.
ROC-kurvor — klassificeringsmässig kvalitet som område
Utvärderingsmått lever i geometriska rum
En ROC (Receiver Operating Characteristic) kurva plottar sant positiv-tal (y-axel) mot falskt positiv-tal (x-axel) när du sveper klassificerings-tröskeln från 0 till 1.
Det här är ett geometriskt rum med meningsfulla landmärken:
- (0, 1) — det övre vänstra hörnet — perfekt klassificering. Varje positiv upptäckt, noll falska larm.
- (0, 0) — det nedre vänstra — modellen klassificerar allt som negativt.
- (1, 1) — det övre högra — modellen klassificerar allt som positivt.
- Diagonalen från (0,0) till (1,1) — en slumpmässig klassificerare. Vid varje tröskel har den lika sant positiv- & falskt positiv-tal.
AUC (area Under the Curve) är bokstavligen en geometrisk areamätning. AUC = 0,5 betyder att modellen är slumpmässig (området under diagonalen). AUC = 1,0 betyder perfekt klassificering (hela enhetskvadrateten). En bra modells ROC-kurva böjer sig mot det övre vänstra hörnet & omsluter mer område.
AUC har en vacker sannolikhetsinterpretation: den motsvarar sannolikheten att modellen ger ett slumpmässigt positivt exempel en högre poäng än ett slumpmässigt negativt exempel. Men geometriskt är det bara område — & den geometriska enkelheten är vad som gör det intuitivt.
Precision-återkall-rum
Ett annat geometriskt avvägningsområde
Precision-återkall-kurvor lever i ett annat geometriskt rum än ROC-kurvor, & de berättar en annan historia.
Precision = av allt modellen flaggade som positivt, vilken fraktion var faktiskt positivt?
Återkall = av alla faktiska positiva, vilken fraktion hittade modellen?
När du sänker klassificerings-tröskeln (flagga fler saker som positiv) ökar återkallet (du fångar fler verkliga positiva) men precisionen minskar vanligtvis (du fångar också fler falska positiva). Denna avvägning spårar en kurva i precision-återkall-rum.
F1-poäng = 2 × (precision × återkall) / (precision + återkall) — det harmoniska medelvärdet. Geometriskt motsvarar F1-poängen punkten på precision-återkall-kurvan där precision motsvarar återkall. Det är där kurvan skär diagonalen för precision-återkall-kvadraten.
Genomsnittlig precision (AP) = området under precision-återkall-kurvan. Liksom AUC-ROC sammanfattar det hela kurvan till ett enda nummer som representerar geometrisk område.
ROC-kurvor & precision-återkall-kurvor är komplementära geometriska vyer av samma modell. ROC-kurvor kan vara vilseledande optimistiska på obalanserade datamängder (99% negativ klass). Precision-återkall-kurvor förblir informativa för att de fokuserar på den positiva klassen.
AUC-ROC-tolkning
Att förstå vad AUC-ROC mäter geometriskt hjälper dig välja mellan modeller.
Transformers — skalärprodukter som uppmärksamhet
Uppmärksamhet är ett geometriskt likhetsmått
Transformer-arkitekturen — grunden för moderna språkmodeller — är byggd på en geometrisk operation: skalärprodukten.
För varje token i en sekvens beräknar transformern tre vektorer: Fråga (Q), Nyckel (K) & Värde (V), var & en erhållen genom att multiplicera inbäddningen med inlärda viktmatriser.
Uppmärksamhetspoängen mellan två tokens är: poäng = Q · K^T / √d
Det här är en skalad skalärprodukt — ett geometriskt likhetsmått. När Q & K pekar i samma riktning (liten vinkel mellan dem) är skalärprodukten stor: denna nyckel är mycket relevant för denna fråga. När de är vinkelräta är skalärprodukten noll: irrelevant.
Poängen skickas genom softmax för att skapa en sannolikhetsfördelning: uppmärksamhetsvikter som summerar till 1. Utmatningen är den vägda summan av värdenvektorer, där vikterna bestäms av geometrisk inriktning.
I en mening som 'Katten satt på mattan för att den var trött,' beräknar uppmärksamhet: för ordet 'den' vilka andra ord har mest geometrisk inriktning? Om Q-vektorn för 'den' anpassas mest closely med K-vektorn för 'katt' uppmärksammar modellen 'katt' — löser pronomenreferensen genom geometri.
Multi-head uppmärksamhet — flera geometriska perspektiv
Varför flera heads?
Självuppmärksamhet med en enskild uppsättning Q, K, V-matriser beräknar en typ av geometrisk inriktning. Men språk har många typer av förhållanden — syntaktiska, semantiska, positionella, referentiella.
Multi-head uppmärksamhet använder flera uppsättningar av Q, K, V-projektionsmatriser, som var & en projicerar in i ett annat delrum för inbäddningen. Varje head mäter inriktning i sitt eget geometriska delrum.
Vad forskare observerar när de inspekterar uppmärksamhets-heads:
- Head 1 kan uppmärksamma det föregående ordet (positionell närhet)
- Head 2 kan uppmärksamma verbet från ämnet (syntaktisk beroende)
- Head 3 kan uppmärksamma semantiskt relaterade ord tidigare i sammanhanget
- Head 4 kan uppmärksamma det senaste substantivet (referens)
Varje head är en annan geometrisk lins på samma data:n. Projektionerna roterar & skalerar inbäddningsrummet annorlunda, vilket gör olika förhållanden synliga genom inriktning.
Det är därför transformers överträffar modeller med en enskild uppmärksamhetsmekanism. En enskild skalärprodukt i det fulla inbäddningsrummet fångar en uppfattning om likhet. Flera skalärprodukter i olika delrum fångar flera, komplementära uppfattningar samtidigt.
Multi-head uppmärksamhet
Multi-head uppmärksamhet är en av nyckelarkitekturinnovationerna i transformern.
Maskinlärning är tillämpad geometri
Enande tråden
Titta på vad vi har täckt. Varje större koncept inom maskinlärning har en geometrisk kärna:
Data = punkter i högdimensionell rymd
Egenskaper = dimensioner av detta rum
Likhet = avstånd eller vinkel mellan punkter
Klassificering = hitta geometriska gränser mellan klasser
Träning = navigera ett förlustlandskap genom att följa gradienter
Inbäddningar = inlärda koordinatsystem där geometri kodar betydelse
Utvärdering = områden under kurvor i metriska rum
Uppmärksamhet = skalärprodukter som mäter vinkellik inriktning
Det här är ingen slump. Maskinlärning ärvde sin matematiska ram från linjär algebra & differentialgeometri — fält som är fundamentalt om rum, form & transformation.
Att förstå geometrin ger dig något som att memorera algoritmer inte kan: intuition. När din modell misslyckas föreslår den geometriska vyn var du ska titta. Är klasserna inte separerbara? Titta på gränsen. Är träning stuck? Undersök förlustlandskapet. Är inbäddningar dåliga? Kontrollera om liknade poster är geometriskt nära. Är uppmärksamhet diffus? Inspektera delrumprojektionerna.
Geometrin är densamma oavsett om du arbetar med 3 dimensioner eller 3 miljarder. Matematiken skalas. Intuitionen överförs. Det här är vad som gör geometri till det universella språket för maskinlärning.
Geometrisk felsökning
Vi har täckt vektorer, avstånd, gränser, träning, inbäddningar, utvärdering & uppmärksamhet — allt genom geometrilinserna.