Dagens innlegg er et samarbeid med barndomsvennen min Andrés Silva :-) ------- Hvis du slipper et tilfeldig punkt inn i en enhetsrute, er det omtrent 78,5 % sjanse for at det lander inne i den innskrevne sirkelen. Legg en i en enhetskube, og det er 52,4 % sjanse for at den er inne i den innskrevne kulen. Ved dimensjon 10 faller denne sannsynligheten til 0,25 %. Ved dimensjon 100 er det i praksis null. Dette er «dimensjonalitetens forbannelse» – standard i ethvert maskinlæringskurs, og tema for en lang matematisk litteratur. Gjennomsnittlig avstand mellom tilfeldige punkter i en boks ble stilt av Robbins og løst i 1978. Johan Philip utledet hele fordelingen for 3D. Disse problemene er godt utforsket. Det vi ønsker å gjøre her er noe litt annerledes: systematisk sammenligne avstandshistogrammer på tvers av ulike geometrier (euklidsk, sfærisk, hyperbolsk), topologier (hyperkube vs. torus) og dimensjoner – og så spørre hva disse "signaturene" kan avsløre om virkelige innleide rom i nevrale nettverk. Kjerneideen: histogrammet for parvise avstander mellom tilfeldige punkter er et geometrisk fingeravtrykk. Ulike rom etterlater forskjellige spor. Du kan kanskje bruke dette til å diagnostisere hvilken geometri dataene dine hemmelig befinner seg i. Opprinnelseshistorien: To andreser går inn på en bar i Coyoacán... Ideene i dette innlegget oppsto fra en samtale mellom oss to (ja, vi heter begge Andrés – bienvenidos a México). Oppsettet: hvis du og en venn begge blir sluppet på tilfeldige steder i en n-dimensjonal hyperkube, hvor langt fra hverandre er dere i gjennomsnitt? Og enda mer interessant, hvordan ser fordelingen av mulige avstander ut? "Saken er," som en av oss sa under diskusjonen, "hvis du tar to tilfeldige punkter i rommet, hvordan ser avstandsfordelingen ut? Jeg er sikker på at du har tenkt på dette problemet?" - "Ja, og jeg lurte på høyere dimensjoner." Svaret viser seg å være vakkert enkelt for 1D-tilfellet (et linjesegment): fordelingen av avstander mellom to uniforme tilfeldige punkter på [0,1] er trekantet, med topp på 0. De fleste par er nær hverandre, og sannsynligheten for å være nøyaktig 1 fra hverandre (maksimumet) er nøyaktig null – det er et sett med mål null. Men hva skjer når du legger til wraparound? Når du i stedet for et linjesegment er på en sirkel? Torus-trikset: Uten tap av generalisering Her kommer den første vakre innsikten. På et linjesegment [0,1] er avstanden mellom punktene x og y bare |x - y|. Men på en sirkel (en 1-torus) kan du gå begge veier. Den "innpakkede" avstanden er min(|x - y|, 1 - |x - y|). Nøkkelidé: På en torus kan du alltid anta at ett punkt er i origo uten tap av generalitet. Hvorfor? Fordi torusen er homogen – hvert punkt ser ut som hvert annet punkt. Det er ingen kanter, så det finnes ingen hjørner. Hvert sted hvor du plasserer det første punktet er "det samme stedet". Hvis du slipper to tilfeldige punkter på en torus, kan du alltid mentalt oversette rommet slik at ett punkt står på null. Dette betyr at fordelingen av avstander er fullstendig bestemt av fordelingen av avstanden til et enkelt uniformt tilfeldig punkt fra null. På 1D-torusen (sirkelen) er denne innpakkede koordinaten uniform på [0, 0,5]. Hele problemet fungerer på en vakker måte: i en n-dimensjonal flat torus er den totale avstanden: D = sqrt(D_1^2 + D_2^2 + ... + D_n^2) hvor hver D_i er den innpakkede koordinatavstanden i dimensjon i, uavhengig uniform på [0, 0,5]. "Så du ser på fordelingen av den euklidske normen til en vektor hvis komponenter er uniforme på [0, 0,5]," bemerket Andrés S. under samtalen vår. "Du kunne hatt et sett med mål som var halvparten av alle de mulighetene..." ...