Internet hitlister En geometrisk præsentation af interesse-afstande Køreplan 01005 Matematik 1 - FORÅR 2006 1 Formål Formålet med denne projekt-opgave er at finde en geometrisk repræsentation (i 2D eller 3D) af de såkaldte interesse-afstande mellem et antal personer ud fra kendskab til deres brug af internettet. Almindeligvis fås ved søgning i databaser en lineær liste (som i Google), der viser en (relevans-) rangordning i forhold til én given adresse eller ét givet søge-ord eller søgestreng. Det er en ikketriviel opgave at vise flere indbyrdes relationer i ét display. Det er det, denne projekt-opgave går ud på - altså dels at opstille en metode til dette og dels at vurdere metodens fejlmarginer. Formålet med denne projekt-opgave er således mere generelt formuleret at konstruere en umiddelbar intuitiv og samtidig bedst mulig visualisering af relaterede data i 3D eller 2D. En aktuel bemærkning i den retning er f.eks. følgende citat fra indkaldelsen til DEFF workshop, Marts 2006 på Danmarks Elektroniske Fag- og Forsknings-bibliotek: "Search engines such as Google and All-the-Web have taught users to expect that simple queries in a single search can result in meaningful answers. Not only are the resulting documents accessible but they are also seen as relevant, the latter based on different methodologies for analyzing the online version of the document. However, the real competitive advantage among the different approaches is in the introduction of phenomena such as ranking, clustering, data mining, and personalization - all based on detailed knowledge of the structure of the records and of the end user." Konkret betragtes 7 personer {A,...,G}, som i et givet tidsrum har besøgt adresser fra en mængde af ialt 2117 forskellige internetadresser. Nogle personer har besøgt samme adresse flere gange i det givne tidsrum. Adresserne er virtuelle og enhver lighed med faktisk eksisterende adresser er helt tilfældig. 2 Afstandsmatricer Definition. En afstandsmatrix D er en symmetrisk n n-matrix som har positive elementer på alle pladser undtagen på diagonalen, hvor alle diagonalelementer er 0, og som desuden tilfredsstiller trekants-uligheden: d i j d ik + d k j (1) for alle valg af tre indices (i, j,k). Mat1 05/06 side 1
Figur 1: Den totale kommunikation på det globale internet på et ganske bestemt tidspunkt i 2004. Se [C]. Figur 2: En Google Scholar søgning med lineært ordnet præsentation. 1. Vælg 7 tilfældige (men forskellige) konkrete punkter (vektorer) i R 5, som antages udstyret med den sædvanlige basis. Det eneste krav til punktsystemet er, at punkternes massemidtpunkt skal ligge i Origo, dvs. summen af (sted)vektorerne er 0. De 7 punkter har så koordinater som følger: p 1 = (x 11,x 21,x 31,x 41,x 51 ), hvor p 2 = (x 12,x 22,x 32,x 42,x 52 ),... p 7 = (x 17,x 27,x 37,x 47,x 57 ), 7 x ik = 0 for i = 1,2,3,4,5. (3) k=1 Sæt nu e i j til at være den sædvanlige Euklidiske afstand i R 5, dvs. følgende værdi for hvert (2) Mat1 05/06 side 2
valg af i og j : e i j = 5 (x ki x k j ) 2 (4) k=1 Argumentér for, at 7 7-matricen med disse elementer e i j er en afstandsmatrix i den ovenfor definerede forstand uanset valget af punkter. 2. I fortsættelse af ovenstående opgave: Vis, at den matrix, der har elementerne ê i j = e i j også er en afstandsmatrix. NB: De opgaver i køreplanen, der som den følgende er markeret med (*) er at betragte som ekstra-opgaver, dvs. opgaver, man evt. kan vende tilbage til og behandle, hvis tiden tillader. 3. (*) Vis helt generelt, at hvis d i j er (elementerne i) en vilkårlig afstandsmatrix, så er d i j også (elementerne i) en afstandsmatrix! 3 Hitliste-afstande 4. Indlæs de datafiler der indeholder de ovenfor omtalte hitlister til en Maple worksheet - dels den totale hitliste og dels de 7 personlige hitlister. De findes i materiale-sektionen hørende til denne projekt-opgave. Benyt eventuelt den indlæsnings-procedure, som er angivet i Maple hjælpe-filen, HitHelp.mw Vi definerer nu en abstrakt interesse -afstand mellem hvert par af de pågældende personer. I modsætning til eksemplerne med de 7 punkter i R 5 stammer denne afstand ikke fra nogen som helst Euklidisk afstand, men konstrueres direkte ud fra hvor stort et overlap der er mellem personernes hitlister: Definition. Lad A og B betegne to mængder (f.eks. hitliste-mængder for de tilsvarende personer). Den symmetriske differens A B mellem A og B er da følgende mængde: A B = (A B) (B A). (5) Dvs. den symmetriske differens mellem A og B indeholder de elementer i foreningsmængden A B, som ikke ligger i fællesmængden A B. For ethvert par af personer med hitlister henholdsvis H i og H j definerer vi nu en abstrakt afstand mellem personerne til at være: s i j = #(H i H j ), (6) hvor #(A) betyder antallet af elementer i mængden A. Figur 3: Det såkaldte Venn diagram for den symmetriske differens mellem mængderne A og B Mat1 05/06 side 3
5. Begrund, at denne abstrakte afstand i den foreliggende konkrete opgave vedrørende hitlisterne med rimelighed kan kaldes en interesse -afstand mellem de involverede personer. 6. Vis, at s i j faktisk er en afstand i den præcise forstand, at den tilhørende 7 7-matrix S = [ si j ] opfylder alle betingelserne for at blive kaldt en afstandsmatrix. I henhold til opgave 3 er d i j = s i j så også elementer i en afstandsmatrix D = [ d i j ]. Og det er disse afstande, vi fra nu af vil kalde interesse -afstandene mellem de 7 personer i forhold til deres hit-mængder. 7. Begrund, at kvadratroden ikke ændrer ved rimeligheden i betegnelsen interesse -afstand. Argumentér for, at s i j faktisk kan være bedre at benytte til visualiseringsformål end s i j. 8. Konstruér interesse-afstandsmatricen for de 7 personer ud fra hitlisterne fra opgave 4. Den egentlige opgave er nu at synliggøre disse interesse-afstande, dvs. repræsentere dem med punkt-afstande i rummet eller i planen, således at de abstrakte afstande realiseres så godt som muligt. 4 Gram-matricen Det skal først bemærkes, at vi kun sjældent kan repræsentere abstrakte afstande helt præcis i 3D eller i 2D. Prøv f.eks. at realisere de 7 punkter fra opgave 1 i rummet (3D) elller i en plan (2D). Til trods for trekantsulighederne i afstandsmatricerne er der ingen garanti for, at afstandene kan realiseres eksakt i rummet eller i en plan. En del af opgaven er således også at vurdere (til sidst), hvor stor en fejl vi begår ved at tvinge afstandene ind i 3D eller 2D. Som et bemærkelsesværdigt hjælpemiddel til at finde en konfiguration af punkter, der approksimerer interesse-afstandene bedst muligt i et passende vektorrum R q, benytter vi den velkendte diagonaliseringsprocedure på en såkaldt Gram-matrix. Definition. For en given n n-afstandsmatrix D er den tilhørende Gram-matrix en symmetrisk n n-matrix A, som er givet ved sine elementer a i j således: a i j = 1 2 ( d 2 i j c i c j + d ), (7) hvor c i = 1 n n di 2 j og j=1 d = 1 n n n 2 di 2 j. i=1 j=1 (8) Hvis de afstande d i j, der benyttes til konstruktionen af Gram-matricen A faktisk er afstandene mellem n punkter i R 5 (eller et andet R 5 ), som i opgave 1, så kan Gram-matricen konstrueres meget simpelt, nemlig som følgende matrix-produkt: A = X T X, (9) hvor X er den matrix, der som søjlevektorer indeholder koordinatvektorerne for punkterne, som det også er antydet med notationen i eksemplet med punkterne i opgave 1. Mat1 05/06 side 4
9. Vis, at ligning (9) er opfyldt for de konkrete punkter som er valgt i opgave 1. 10. (*) Vis helt generelt, at ligning (9) er opfyldt uanset hvordan punkterne bliver valgt i opgave 1 så længde de blot opfylder betingelsen om, at massemidtpunktet ligger i Origo. 11. Konstruér Gram-matricen A for interesse-afstandene, som fundet i opgave 8. 12. (*) Vis, at hvis to afstandsmatricer giver samme Gram-matrix, så er de to afstandsmatricer også ens. (Vink: vis evt. først, at d-værdien er den samme for begge afstandsmatricerne.) 5 Indlægning i 7D Det betyder nu, at hvis vi blot kan finde eller konstruere en matrix X med den egenskab, at der for den givne aktuelle 7 7-Gram-matrix for interesse-afstandsmatricen gælder: A = X T X, (10) så kan vi aflæse koordinaterne til de ønskede punkter i søjlerne i X-matricen! En sådan matrix X findes ved først at diagonalisere A, dvs. udtrykke A således: A = U ΛU T, (11) hvor Λ er en diagonalmatrix indeholdende egenværdierne λ i, i = 1,2,...,7, for A. Næste opgave er derfor følgende velkendte: 13. Diagonalisér interesse-gram-matricen A, således at diagonalmatricen Λ indeholder egenværdierne i størrelsesorden med største egenværdi i øverste venstre hjørne: λ 1 0. 0 Λ = 0 λ 2. 0...., (12) 0 0. λ 7 således at λ 1 λ 2... λ 7. Observér, at alle egenværdier er ikke-negative, således at vi kan tage kvadratroden af dem og betragte matricen 14. Vis, at Λ = λ1 0. 0 0 λ2. 0.... 0 0. λ7 X = (13) ( U Λ) T (14) er en matrix med den søgte egenskab, altså at X opfylder ligning (10). Mat1 05/06 side 5
15. Observér, at de 7 søjle-koordinatvektorer i X er (sted-)vektorer i R 7 og at de har massemidtpunkt i 0. 16. Vis nu, at de derved konstruerede afstande i 7D netop giver interesse-afstandsmatricen, som vi startede med. I den forstand har vi altså rekonstrueret de givne abstrakte afstande d i j som konkrete afstande imellem 7 punkter i R 7. 6 Indlægning i 3D og i 2D De færreste kan dog intuitivt se afstande i R 7. Derfor er den resterende del af projekt-opgaven at trunkere den givne A (til de bedste rang 3 og rang 2 approksimationer) således at søjlevektorerne i de resulterende X-matricer har nuller på de sidste 4 hhv. 5 koordinater. Det gøres ved at sætte de 4 (hhv. 5) mindste egenværdier lig med 0 i diagonalmatricen i diagonaliseringen af A i ligning (11) ovenfor. Der gælder nemlig følgende sætning: Den bedste rang r approksimation A r til A fås på den antydede måde: De laveste (7 r) egenværdier sættes til 0 i diagonalmatricen i (12) og A r beregnes med samme U (som hører til A og er fundet ved diagonaliseringen af A) og den trunkerede diagonalmatrix således: A r = U Λ r U T, (15) hvor Λ r = dannet ud fra de første r egenværdier for A. λ 1 0. 0 0 0 0 0 λ 2. 0 0 0 0....... 0 0 0 λ r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17. (*) Overvej hvad ordet bedste præcis betyder i ovenstående formulering., (16) 18. Lad nu r være henholdsvis 6, 5, 4, 3, og 2 og bemærk, at de resulterende X matricer til sidst repræsenterer punkter i henholdsvis 3D og 2D. 19. Plot punkterne i 3D og i 2D og vurdér for hvert tilfælde afvigelsen fra de korrekte afstande. 20. Konkludér: Hvilke grupper af personer blandt de 7 kan med rimelighed siges at have fælles interesser i henhold til deres internet hitlister, sådan som de afspejles i de approksimative 3D og 2D konfigurationer? 21. Ovenfor har vi betragtet hvert hit med vægt 1 selv om en given adresse jo kan være besøgt mange gange i løbet af det aktuelle tidsrum. Overvej, hvordan afstands-definitionen kan modificeres, således at der også tages hensyn til antallet af besøg på en given adresse. Mat1 05/06 side 6
22. (*) En nærmere analyse vil afsløre, at den fælles interesse hos 3 af personerne især har at gøre med undervisningsinstitutioner (i hvilket land?) mens den fælles interesse hos tre andre især handler om virksomheder (i hvilket land?) 23. (*) En endnu mere detaljeret analyse vil endda afsløre, at alle personerne - undtagen een (hvem?) interesserer sig for en ganske bestemt Italiensk hjemmeside, hvis navn ofte associeres med en velkendt Polytekniker (hvem?). Litteratur [BB] M. W. Berry and M. Browne, Understanding Search Engines: Mathematical Modeling and Text Retrieval, SIAM Society for Industrial and Applied Mathematics, 1999. [C] B. Casselman, Communications - Networks Notices of the American Mathematical Society 51 Issue 4 (2004) 392 393. [ND] B. Noble and J. W. Daniel, Applied Linear Algebra, 3.rd. edition, Prentice Hall, 1988. [S] M. Schroeder, Using Singular Value Decomposition to Visualise Relations within Multi- Agent Systems, Proceedings of the third international conference on autonomous agents, (1999) 313 318. Mat1 05/06 side 7