Link Spam Alliances di Zoltàn Gyöngyi Hector Garcia-Molina Stanford University Computer Science Department Presentazione a cura del gruppo 7: Cristian Caruso Matteo Degli Esposti Claudia Fontan Relatore: Claudia Fontan Sistemi Informativi LS a.a. 2005-06 Outline “Conosci il tuo nemico; Conoscilo e l’avrai per metà vinto.” (Confucio) Introduzione al web spam Formulazione del PageRank Studio delle Spam Farm: Analisi di una singola Farm Alleanze tra due Farm Caso multi-Farm Spam detection Link Spam Alliances - gruppo 7 2 Spam: perché? L’uso di motori di ricerca per rintracciare indirizzi Internet è sempre più diffuso [FMN] Assicurarsi un ranking alto coincide con l’aumentare le proprie entrate Nel periodo aprile-giugno 2005 negli USA le vendite tramite eCommerce hanno rappresentato il 2.2% del totale (941.282 milioni di dollari) [USC] …e se non si è ai primi posti si cerca di “plasmare” i risultati… Link Spam Alliances - gruppo 7 3 Spam: definizione Spamming: ingannare i motori di ricerca per ottenere un ranking più elevato di quanto ci si meriti in realtà Lo spamming è dannoso [NAJ] Per gli utenti Rende più difficile trovare le informazioni desiderate Scoraggia l’utente Per i motori di ricerca Spreca la banda del crawler Inquina la rete con pagine di spam Distorce il ranking reale dei risultati Link Spam Alliances - gruppo 7 4 Link Spam Link Spam: si costruiscono strutture di pagine interconnesse per aumentare il PageRank di uno o più target Link Spam Alliances - gruppo 7 5 PageRank PageRank della pagina p0: link uscenti da pi p0 = cΣipi/|F(i)| + (1-c) Generalizzando: damping factor PageRank di pi che punta a p0 random jump (1 – c) 1N p = cT’p + N matrice di transizione Una pagina è importante se è puntata da tante altre pagine importanti Essendo basato sulla struttura dei collegamenti, l’algoritmo del PageRank può essere vulnerabile al Link Spamming Link Spam Alliances - gruppo 7 6 Spam Farm: pagine p1 p2 pk λ1 λ2 λk λ0 ? p0 Target page Ogni Farm ne ha una sola L’obiettivo dello spammer è aumentare il suo ranking Boosting pages Sono controllate dallo spammer Puntano al target per aumentare il suo PageRank Link Spam Alliances - gruppo 7 7 Spam Farm: link esterni p1 p2 pk λ1 λ2 λ0 ? p0 λk Leakage PageRank aggiunto al target da pagine al di fuori della Farm (forum, blog, …) Lo spammer non ne ha il controllo λ = λ0 + … + λk Link Spam Alliances - gruppo 7 8 Optimal Farm Intuitivo Ottimale Ogni boosting page punta unicamente al target Il target punta alle boosting pages (1 – c)(ck + 1) cλ p0 = + N p1 λ p2 p0 q0 = p0 / (1 – c2) Intuitivamente: q1 target e boosting pages q2 si rinforzanoλ a vicenda q2 q0 qk pk qk Link Spam Alliances - gruppo 7 q1 9 Alleanze tra due Farm Intuitivo Economico Ogni boosting page punta ad entrambi i target p0 p1 q0 p2 pk q1 q2 (k + m) nuovi link qm Si interconnettono unicamente i target p0 p1 q0 p2 pk q1 q2 qm solo 2 nuovi link Redistribuzione del PageRank q0 = p0 = d(k + m)/2 [d = c/N(1 + c)] conveniente per la Farm più piccola Link Spam Alliances - gruppo 7 10 Alleanze tra due Farm Ottimo Ogni target punta all’altro target I target non hanno link alle boosting pages p1 q1 p0 q0 Intuitivamente: p2 q2 questo modello risulta vincente perché concentra tutto il PageRank qm pk sui target minimizzando quello delle boosting pages Incremento del PageRank ck + c2m 1 p0 = + (1 + c)N N conveniente per entrambe le Farm Link Spam Alliances - gruppo 7 11 Alleanze multi-Farm Due strutture fondamentali: Web ring Complete core p1 r1 r2 rn r0 p0 q0 p2 q1 q2 core qm pk Link Spam Alliances - gruppo 7 12 Web ring Modalità di connessione più semplice ed intuitiva 1 ck + c2m + c3n p0 = + (1 + c + c2)N N r1 p1 r2 rn r0 p0 q0 la distanza influenza il contributo di ogni Farm al PageRank delle altre q1 p2 q2 pk qm Link Spam Alliances - gruppo 7 13 Complete core Il core è un sotto-grafo completamente connesso 1 2ck – c2k + c2m + c2n p0 = + (2 + c)N N r1 r2 rn il contributo di ogni Farm al PageRank delle altre è uniforme p1 r0 p0 q0 q1 p2 q2 pk qm Link Spam Alliances - gruppo 7 14 Riassumendo Web ring: Il PageRank del target della Farm 10 diminuisce rispetto al caso di non connessione 6000 Scaled Target Page Rank 5000 4000 Complete core: 3000 aumentano tutti i PageRank, soprattutto quelli dei target delle Farm di minori dimensioni Single Farm Web Ring Complete Core 2000 Farm non connesse: il PageRank del target è lineare nella dimensione della Farm (numero di boosting pages) 1000 0 1 2 3 4 5 6 7 8 9 10 Farm Number Link Spam Alliances - gruppo 7 15 Riassumendo Contributo della Farm 1 agli altri target 200 Page Rank Contribution 180 160 140 120 100 Complete core: si conserva la maggiorparte del PageRank, agli altri target viene dato un identico contributo molto minore Complete Core Web Ring 80 60 40 20 Web ring: i valori 0dei contributi sono vicini tra loro 1 e 2 diminuiscono 3 4 5 6 all’aumentare della distanza 7 8 9 10 Farm Number Link Spam Alliances - gruppo 7 16 Entrare in un’alleanza Web ring Perchè p0 accetti r0 in un’alleanza con q0 organizzata secondo la struttura del Web ring è necessario rispettare le seguenti condizioni: PR(alleanza p, q, r) > PR(alleanza p, q) ck + c2m ck + c2m + c3n > (1 + c)N (1 + c + c2)N n> k + cm (1 + c) Le dimensioni delle Farm già presenti determinano la dimensione minima che deve avere una Farm per essere accettata La media pesata delle dimensioni delle Farm già presenti costituisce un lower bound sulla dimensione della nuova Farm Es: k = 20; m = 10: Con FL a q n = 16 Il punto di inserimento della Farm entrante ne influenza la dimensione minima Link Spam Alliances - gruppo 7 17 Entrare in un’alleanza Complete core Perchè p0 accetti r0 in un’alleanza con q0 organizzata secondo la struttura del Complete core è necessario rispettare le seguenti condizioni: PR(alleanza p, q, r) > PR(alleanza p, q) La dimensione minima che deve avere una Farm per essere accettata è determinata considerando la Farm più piccola già presente nell’alleanza: n> k + m – (1 – c)min{k, m} (1 + c) n> arithmetic mean La media aritmetica delle dimensioni delle Farm già presenti costituisce un lower bound sulla dimensione della nuova Farm Es: k = 20; m = 10 n = 16 per m; n = 15 per k media aritmetica = 15 La terza Farm deve avere almeno 16 boosting pages Link Spam Alliances - gruppo 7 18 Lasciare un’alleanza Prima abbiamo osservato che: PR(10, non connessa) > PR(10, ring) Intuizione: la Farm 10 contribuisce troppo al PageRank dei suoi alleati e riceve troppo poco in cambio Web ring La Farm p0 decide di lasciare l’alleanza se: PR(non connessa) > PR(ring) ck + 1 1 ck + c2m + c3n (1 + c)N > (1 + c + c2)N + N 2) - cn(1 - c2) c m(1 c k > (1 - c) Nell’alleanza tra 10 Farm, risulta che il limite per la Farm 10 è 9091 avendo 10000 boosting pages, le conviene uscire dall’alleanza Link Spam Alliances - gruppo 7 19 Lasciare un’alleanza Complete core La Farm p0 decide di lasciare l’alleanza se: PR(non connessa) > PR(complete core) ck + 1 1 2ck – c2k + c2m + c2n + (1 + c)N > (2 + c)N N k > 2 + c + (1 + 2c)(k + m + n) 7c Contributi distribuiti in modo più uniforme rispetto al Web ring Piccole differenze tra i limiti di dimensione per le diverse Farm Nell’alleanza tra 10 Farm, risulta che nessuna raggiunge la dimensione limite a tutte conviene restare nell’alleanza Link Spam Alliances - gruppo 7 20 Spam detection Idea di base: identificare strutture come quelle descritte in precedenza Obiettivo: determinate potenziali candidati per il link spamming Zipfian distribution Amplification factor Spam mass Link Spam Alliances - gruppo 7 21 Zipfian distribution Fetterly et al., 2004 Le Farm sono spesso generate automaticamente ed hanno strutture molto regolari Si analizzano i gradi di entrata ed uscita delle pagine Molte pagine seguono la distribuzione di Zipfian p1 λ p2 pk p0 Agglomerati di pagine i cui gradi di ingresso ed uscita seguono questa distribuzione in modo esatto risultano spesso essere parte di una Farm ZD(p) = |F(1)| = |F(2)| = … = |F(k)| ZD(p) = |B(1)| = |B(2)| = … = |B(k)| Link Spam Alliances - gruppo 7 22 Amplification factor Zhang et al., 2004 Una caratteristica comune delle Farm è la capacità dei target di catturare il PageRank proveniente dalle boosting pages I target amplificano il contributo delle boosting pages p1 p0 q0 p2 pk q1 q2 colluding pages qm Amplification factor Amp(H): in un gruppo di H pagine, è il rapporto tra il PageRank delle pagine nel gruppo ed il contributo di quelle esterne Se Amp(H) è dell’ordine di 1/(1–c), le pagine del gruppo possono essere target di Farm connesse in un’alleanza p0 + q0 1 =O 1-c Σi pi + Σj qj Link Spam Alliances - gruppo 7 23 Spam mass Zyöngyi et Garcia-Molina, 2005 I target aumentano il proprio PageRank soprattutto grazie alle boosting pages Il PageRank delle boosting pages è dovuto al random jump Relative spam mass Mass(i): relativo alla λ pagina i, è il rapporto tra PageRank totale e PageRank con apporto del random jump p0 posto a 0: 1-c p1 1-c p2 1-c pk p0 – p’0 p0 0 p1 0 p2 0 pk p0 = PageRank totale p’0 = PageRank parziale λ Per pagine che non hanno grandi p’0 benefici da boosting pages, Mass(i) tende a 0 Se Mass(i) è elevato, la pagina i è probabilmente un target all’interno di una Farm Link Spam Alliances - gruppo 7 24 Conclusioni Le tecniche di Spam Detection presentate sono ancora sperimentali Riescono spesso ad identificare solo il core di un’alleanza Possono risultare utili, ma presentano ancora problemi La tecnica riguardante la distribuzione di Zipfian non identifica strutture non regolari La tecnica dell’Amplification factor identifica come alleanze di Farm anche gruppi di pagine che non lo sono La tecnica basata sulla Spam Mass non identifica target che aumentano il proprio PageRank soprattutto grazie al leakage Il primo passo per combattere realmente il Link Spam è conoscere a fondo le strutture proprie di questa tecnica Il percorso che porta ad individuare tecniche realmente efficaci per combattere il Link Spamming è comunque ancora molto lungo… Link Spam Alliances - gruppo 7 25 Riferimenti [FMN] “Spam, Damn Spam, and Statistics”, Dennis Fetterly, Mark Manasse, Mark Najork, 2004. research.microsoft.com/research/sv/PageTurner/webdb2004.pdf [GGM] “Link spam alliances” Technical Report, Stanford University, 2005. infolab.stanford.edu/~zoltan/publications.html [NAJ] “Heuristics for Detecting Spam Web Pages”, Mark Najork – Microsoft Research, Silicon Valley, 2005. www.cise.ufl.edu/~adobra/DaMn/talks/2005-10-26-Bertinoro.ppt [USC] U.S. Census Bureau, E-Stats www.census.gov/eos/www/ebusiness614.htm Link Spam Alliances - gruppo 7 26 Demo …and now… WE WANT YOU see our Link Spam Alliances - gruppo 7 27