Estudio matemático del PageRank©Introducción al PageRankEl PageRank (PR en forma abreviada) es un número que asigna el motor de búsqueda Google a cada página que tiene indexada en su base de datos. La fórmula orignal se puede ver en un paper, publicado hace ya varios años, por los estudiantes de la Universidad de Stanford Larry Page y Sergei Brin. En el punto 2.1.1 del paper "The Anatomy of a Large-Scale Hypertextual Web Search Engine" (circa 1997) Page y Brin muestran la fórmula de cálculo del PageRank: PR(A) = (1-d) + d (PR(T1)/C(T1) + ... + PR(Tn)/C(Tn)) donde:
El PageRank o PR(A) puede ser calculado usando un simple algoritmo iterativo y corresponde al autovector principal de la matriz normalizada de vínculos (enlaces) en la web. Los autores basan esta fórmula en una justificación intuitiva: el PageRank puede pensarse como un modelo del comportamiento de los usuarios. Si se asumen un "navegante al azar", a quien se le muestra una página web al azar y clickea en los links, nunca volviendo hacia atrás, pero pudiendo aburrirse y comenzar al azar en otra página al azar. La probabilidad de que el usuario visite una página es su PageRank. Y el factor 'd' es la probabilidad de que en cada página el "navegante al azar" se aburra y solicite otra página al azar. Una variación importante es sólo agregar el factor 'd' a sólo una página o a un grupo de páginas. Esto permite la personalización y puede tornar casi imposible que alguien deliberadamente engañe al sistema para obtener un ranking mayor. Otra justificación intuitiva es que una página puede tener un PageRank alto si hay varias páginas que apuntan a ella o si algunas páginas que apuntan a ella tienen un PageRank alto. Intuitivamente, las páginas que están citadas varias veces en la web son dignas de visitar. También, las páginas con sólo una cita pero que provienen de la homepage Yahoo! también valen la pena visitar. Si una página no es de calidad, o tiene un vínculo roto, es muy probable que la homepage de Yahoo! no linkee a ella. El PageRank puede manejar estos dos escenarios y cualquiera intermedio al propagar recursivamente ponderadores a travñes de la estructura de la web. ¿Hay varios PageRank?En realidad hay sólo uno. El PageRank real de cada página es un número que sólo lo sabe Google. Existe una confusión habitual en llamar PageRank al número entre 0 y 10 que se muestra en la barra de herramientas de Google. En realidad este número es una "representación" del PageRank y se estima que tiene una base logarítmica. Para diferenciar, tenemos estos tres términos:
Todos los cálculos que hace Google para ordenar las SERP (Search Engine Result Pages = páginas de resultados de un motor de búsqueda) están basados en el PR, el PageRank real. ¿Para qué sirve el PageRank?Es una teoría bastante aceptada que Google usa básicamente dos criterios generales para ordenar sus SERP. 1) In-Page Elements: características propiamente dicha de una página. Posiciones de las frases clave, cantidad de veces que se repiten, los tags que rodean a las palabras clave, etc. Estos son elementos que dependen únicamente de la propia página. Son controlables por el webmaster. 2) Out-of-Page Elements: es la estructura de vínculos o enlaces que apuntan a la página en cuestión. Para esto se usa el PageRank. Es muy importante el "anchor text" o texto del enlace, porque es un factor que usa Google para saber de qué trata la página. Si una página tiene muchas otras que enlazan a ella con el texto "zapallo" como texto del enlace, muy probablemente la página trate sobre el zapallo. Para ordenar las SERP, Google usa una combinación de los dos criterios generales anteriores. No sirve de nada tener un PageRank alto, si las palabras clave que se buscan no están en la página; y tampoco sirve tener una página optimizada para ciertas palabras clave, si su PR es bajo. Esta teoría no explica sin embargo los Google Bombings. Si uno busca en Google "miserable failure" el primer resultado que aparece es la biografía del George Bush (http://www.whitehouse.gov/president/gwbbio.html), y es notable que no figuren en esta página ni la palabra "miserable" ni "failure". Cuando se realiza una búsqueda en Google, es muy común que Google muestre la cantidad de resultados que existen para esa búsqueda. Sin embargo, Google sólo muestra las SERP para los primeros 1000 resultados que encuentra. ¿Y cómo hace para ordenar esos 1000 primeros resultados? Google arma una lista de las páginas que tienen las palabras o la frase que se está buscando y las cuenta. Luego, tomando el PageRank de cada página y las características de cada página (cantidad de veces que se repiten las palabras que se buscan, posición en la página, etc), Google ordena los la lista y muestra sólo los primeros 1000 resultados. Análisis del PageRankSi bien Google calcula el PageRank usando un algoritmo iterativo, para pequeñas porciones de la red, o para modelar, es posible resolver el PageRank simbólicamente (usando el Mathematica, por ejemplo). Esto nos da una ventaja, porque es posible ver la influencia de cada factor en el PageRank de una página. Primero hay que notar lo siguiente: en la expresión del cálculo del PageRank, el valor del PR de una página depende del valor del PR de las otras... pero si por ejemplo con una página se tiene un intercambio de enlaces, entonces el PR de la página A depende del PR de la página B, que a su vez depende del PR de la página A, y así. En matemática esto esto forma un sistema de ecuaciones simultáneas, y afortunadamente es lineal, lo que simplifica el cálculo enormemente, y prácticamente garantiza una única solución. Comencemos con un ejemplo simple: una página A, la cual recibe un PR X de otras páginas, y una página B, que tiene un enlace proveniente de A. El sistema de ecuaciones sería: PRA = 1-d+d.X
A heredó de todas las páginas que apuntan a ella, un d% del PR/C de esas páginas, más 1-d.
Para poner valores, supongamos d = 0.85 y X = 2. Por lo tanto: PRA = 1.85 y PRB = 1.7225 Si ahora suponemos d = 0.85 y X = 100 ==> PRA = 85.15 y PRB = 72.5275 Es un resultado notable, ya que se ve a simple vista que para PR >> 1-d, el PR que se pasa una página a otra se ve disminuido (1-d)%. Fijarse la sucesión: 100, 85.15, 72.5275... y la que corresponde a multiplicar 100 sucesivamente por 0.85: 100, 85, 72.25, ... Son sucesiones prácticamente iguales. ¿Qué pasa ahora si entre A y B se hace un intercambio de enlaces? PRA = 1-d+d.(X+PRB)
Resolviendo simbólicamente el sistema: PRA = 1 + d.X / (1-d^2)
Usando los valores d = 0.85 y X = 2 tenemos: PRA = 7.1261
Es notable cómo aumenta el PageRank de una página al hacer intercambio de links. En el fondo es algo relativamente lógico, ya que A le da a B un 85% de su PageRank, que su vez le da a A un 85% de su PageRank. Qué pasa ahora si tenemos, por ejemplo, una página A, a la cual le dan de otros sitios externos PR X y además, tiene esa página A 'n' subpáginas que a su vez enlazan a A? Planteando el sistema de ecuaciones: PRA = 1-d + d.(X+n.PRB)
Al resolver, nos encontramos con esto: PRA = (d.X+d.n-n.d^2-d+1) / (1-d^2)
Es un resultado muy interesante. En teoría, esto nos dice que PRA es proporcional a 'n' !!! Sólo tenemos que seguir agregando subpáginas y subpáginas que apunten a A!! Pero todo tiene un límite: Google recomienda no pasar de 100 links por página, no se sabe fehacientemente por qué. Es posible que sea porque no puede indexar más que eso (igualmente la implementación de un contador no es para nada complicada). Volviendo a los números, y supondiendo d = 0.85, X = 2 y variando 'n' entre 1 y 100 tenemos:
Cuando n->oo, entonces PRB -> 1/(1+d) y PRA crece sin límite. Para enviar comentarios: info@23329369.com.ar |