Cómo mejorar el PageRank de un árbol

Anuncio
Cómo mejorar el PageRank de un árbol
Arratia Quesada, A. (a) * ; Marijuán, C.(a)**
(a) Departamento
de Matemática Aplicada
Universidad de Valladolid
Valladolid 47005, España
[email protected],
[email protected]
Resumen. Probamos que el PageRank de la raı́z de un árbol (PR) sólo depende de la
partición de sus nodos en niveles (y no de las conexiones entre niveles). Probamos que
la supresión del último nivel o de todos los nodos posibles (conservando la altura) en la
mitad superior del árbol aumenta su PR. Introducimos el concepto de árbol cola como
el subárbol de igual altura y menor número de nodos con PR mayor que en el original.
Damos fórmulas para calcular el PR de varias clases de árboles, los jerarquizamos en
función de su altura y de su tamaño y damos reglas para mejorar su PR.
1. Introducción
La red WWW puede verse como un grafo dirigido W = (V, E), donde V es
el conjunto de nodos (páginas) de la red y cada arco (b, a) ∈ E representa la existencia de un vı́nculo en la página b con la página a. Con este punto de vista, Brin
y Page proponen en [1] valorar cada página a de la red con el número positivo
P(a) (el PageRank de la página a) dado por la fórmula (en la versión refinada de
[2]):
P(a) =
P(b)
(1 − α )
+α ∑
N
C(b)
(b,a)∈E
(1)
donde C(b) es el número de vı́nculos en la página b (el exgrado de b), α ∈ (0, 1) es
una constante (para la que Brin y Page toman el valor 0,85), N es el número total
de páginas en la red. y el sumatorio se extiende a todas las páginas b que tienen
un vı́nculo con la página a. Según sus autores, la fórmula (1) modela el comportamiento de un surfista aleatorio que estando en una página b o bien se conecta,
con probabilidad α , con alguna de las páginas vinculadas en b o bien salta, con
* Parcialmente
financiado por los proyectos MOISES (TIN2005-08832-C03-02) y SINGACOM
(MTM2004-00958).
** Financiado por el proyecto SINGACOM (MTM2004-00958).
53
54
Arratia,A.; Marijuán, C.
probabilidad 1 − α , a cualquier página de la red, independientemente de los contenidos de las páginas (ver [5]). De modo que P(b)/C(b) es la aportación de b al
PageRank de a amortizado por α . El PageRank de a es, entonces, la probabilidad
de que un usuario alcance la página a directamente o a través de una sucesión de
vı́nculos. Los PageRanks de todas las páginas suman 1, de modo que constituyen
una distribución de probabilidad sobre la red.
Se ha observado que el PageRank de una página depende implı́citamente de la
topologı́a conectiva local y global de la Web y que frecuentemente las web locales
presentan estructuras regulares como árboles dirigidos (o bidireccionales) hacia la
raı́z (su página principal). Nos proponemos estudiar cómo modificar la estructura
conectiva de estas web locales con el objetivo de optimizar el PageRank de su
página principal.
2. El PageRank de un árbol
Por un árbol entenderemos un grafo dirigido acı́clico conexo con raı́z y con
exgrados igual a 1 (i.e. arcos dirigidos hacia la raı́z). La profundidad de un nodo
es el número de arcos del camino que lo conecta con la raı́z. El nivel N k de un
árbol es el conjunto de nodos con profundidad k > 0 y N0 solo consta de la raı́z.
La altura de un árbol es la longitud del camino más largo.
Teorema 1. Si un árbol tiene N nodos y altura h, entonces el PageRank P(r) de
su raı́z r viene dado por la fórmula
P(r) =
1−α
N
h
∑ α k nk
(2)
k=0
donde nk es el número de nodos del nivel Nk , k = 0, 1, . . . , h.
Demostración. Usaremos la notación b ∈ Nk : b → a para referirnos a los nodos
b del nivel Nk que están conectados al nodo a (del nivel Nk−1 ). Sean N0 = {r}
y N1 = {a1 , . . . , an1 }. Utilizando (1), teniendo en cuenta que el exgrado de cada
nodo es 1, que los conjuntos de ı́ndices {b ∈ N2 : b → ai }, para cada i = 1, . . . , n1 ,
son disjuntos dos a dos y procediendo recursivamente
se tiene
!
"
1−α
1−α
1−α
+ α ∑ P(a) =
+α
+α
∑ P(b) +
N
N
N
a∈N1
b∈N2 :b→a1

#
"
1
−
1
−
α
α
α
1
−
... + 
+α
n1 + α ∑ P(b)
∑ P(b) = N + α
N
N
b∈N2 :b→an
b∈N2
1
h−1
1−α
1−α
=
(1 + α n1 ) + α 2 ∑ P(b) =
∑ α k nk + α h ∑ P(b)
N
N
k=0
b∈N
b∈N
P(r) =

2
h
Cómo mejorar el PageRank de un árbol
=
1−α
N
55
h
∑ α k nk
k=0
Nota 1. Este teorema prueba que el PageRank de la raı́z de un árbol sólo depende
del número de nodos de cada nivel y no de las conexiones entre los nodos de
niveles consecutivos.
Estudiamos ahora el PageRank de algunas clases particulares de árboles.
2.1. Árboles m-arios
Si Tmh es un árbol m–ario completo de altura h y P m (r) es el PageRank de su
raı́z r se tiene
P1 (r) =
1 − α h+1
y para m > 1
h+1
m−1
h
α k mk = (1 − α )
Pm (r) = (1 − α ) mh+1
−1 ∑k=0
m−1
mh+1 −1
(α m)h+1 −1
α m−1
2.2. Árboles binomiales
Si Tbh es un árbol binomial completo de altura h (definición en [3, S9.1], [4])
y Pb (r) es el PageRank de su raı́z r se tiene
Pb (r) =
1−α
2h
h
∑ αk
k=0
h
(1 − α )
(1 + α )h .
=
2h
k
Nota 2. En hipertextos es frecuente la estructura arb órea bidireccional. El PageRank P 0 m (r) de la raı́z r de un árbol m–ario no dirigido se obtiene de forma
análoga a la del teorema 1
0
P m (r) =
1−α
N
h
∑
k=0
α
m+1
k
nk
(3)
Por tanto, varios de los resultados que siguen pueden aplicarse a esta clase de
árboles.
3. Supresión de nodos y árboles cola
Después del teorema 1, podemos describir un árbol T con niveles N 0 , N1 , . . . ,
Nh de cardinales respectivos 1, n1 , . . . , nh por la sucesión T = 1n1 . . . nh .
56
Arratia,A.; Marijuán, C.
Teorema 2. Si en un árbol T = 1n1 . . . nh de altura h ≥ 1, se suprime el último
nivel Nh , entonces el PageRank PT (r) de la raı́z r aumenta.
Demostración. Al pasar del árbol T = 1n1 . . . nh con N = 1 + n1 + . . . + nh nodos
al árbol T 0 = 1n1 . . . nh−1 se tiene
PT 0 (r) − PT (r) =
=
=
nh
(1 + n1α + . . . + nh−1α h−1 − (N − nh )α h )
(N − nh)N
nh
(1 + n1α + . . . + nh−1α h−1 − (1 + n1 + . . . + nh−1)α h )
(N − nh)N
nh
((1 − α h ) + n1(α − α h ) + . . . + nh−1(α h−1 − α h )) > 0
(N − nh)N
ya que α ∈ (0,1) y h ≥ 1.
Nota 3. Si se quiere mejorar el PageRank de la raı́z de un árbol se deben suprimir,
de abajo hacia arriba, tantos niveles como permita el contexto (en el que el árbol
tenga su significado).
Definición 1. El árbol cola del árbol T = 1n1 . . . nh es el árbol
. . 1} .
Tq = 1n1 . . . nb h−1 c |1 .{z
2
b h2 c+1
Teorema 3. El PageRank de la raı́z de un árbol es menor que el PageRank de la
raı́z de su árbol cola.
Demostración. El PageRank de la raı́z r de T = 1n1 . . . nh−1 nh es menor que el
PageRank de la raı́z r de T 0 = 1n1 . . . nh−1 1 ya que, si N = 1 + n1 + . . . + nh ,
entonces
PT 0 (r) − PT (r) =
=
(nh − 1)(1 − α )
(1 + n1 α + . . . + nh−1 α h−1 − (N − nh )α h )
(N − (nh − 1))N
(nh − 1)(1 − α )
((1 − α h ) + n1 (α − α h ) + . . . + nh−1 (α h−1 − α h )) > 0.
(N − (nh − 1))N
Se repite el proceso para T = 1n1 . . . nh−2 nh−1 1 y T 0 = 1n1 . . . nh−2 11, y se procede recursivamente hasta bh/2c. En la última etapa se tiene
T = 1n1 . . . nb h−1 c nb h+1 c |1 .{z
. . 1}
2
2
b h2 c
y se prueba que su PageRank es menor que el del árbol cola
. . 1} .
T 0 = 1n1 . . . nb h−1 c |1 .{z
2
b 2h c+1
Cómo mejorar el PageRank de un árbol
57
Basta distinguir los casos par e impar.
Si h = 2p − 1 entonces T = 1n1 . . . n p−1 n p |1 .{z
. . 1}, T 0 = 1n1 . . . n p−1 |1 .{z
. . 1} y N =
n1 + . . . + n p + p. Sea M =
(n p −1)(1−α )
(N−(n p −1))N .
p
p−1
Entonces
PT 0 (r) − PT (r) =
= M(1 + n1 α + . . . + n p−1 α p−1 − (N − n p )α p + α p+1 + . . . + α 2p−1 )
= M((1 − α p ) + (n1 − α p−1 )(α − α p ) + . . . + (n p−1 − α )(α p−1 − α p )) > 0.
Si h = 2p entonces
T = 1n1 . . . n p−1 n p |1 .{z
. . 1},
p
T 0 = 1n1 . . . n p−1 |1 .{z
. . 1}
p+1
y N = n1 + . . . + n p + p + 1.
Se prueba análogamente que PT 0 (r) − PT (r) > 0.
Nota 4. El teorema 3 no puede mejorarse, en el sentido de que la supresi ón de un
nodo hoja (para conservar la altura) en un árbol cola puede mejorar o empeorar
el PageRank de su raı́z. El árbol cola es el mejor posible para valores peque ños
de h. A partir de un h determinado (dependiendo de la paridad) se puede seguir
suprimiendo nodos mejorando el PageRank de la raı́z hasta un lı́mite, no indefinidamente. Hemos realizado un estudio sistem ático para varias clases de árboles
cola que incluiremos en la versión extendida.
4. Jerarquı́as de árboles por altura y tamaño
En lo que sigue supondremos que α ∈ (1/2, 1). Los siguientes resultados permiten ordenar árboles m–arios y binomiales respecto de los PageRanks de sus
raı́ces que denotaremos abreviadamente por P m and Pb .
Teorema 4. Para valores de la altura h suficientemente grandes se tiene
P1 > P b > P 2 > P 3 > . . . > P m . . .
Demostración. Se reduce a un cálculo de lı́mites:
1.
(k − 1)(mα − 1)
Pk
=
> 1 =⇒ Pk > Pm .
h→∞ Pm
(m − 1)(kα − 1)
Para 1 < k < m, lı́m
58
2.
3.
Arratia,A.; Marijuán, C.
α + 1 (2α )h+1 − 1 2h+1 h→∞
P2
−→ 0.
=
Pb 2(2α − 1) (α + 1)h+1 2h+1 − 1
1+α h
(1 − α )(h + 1)
Pb
2
h→∞
=
−→ 0 .
h+1
P1
1−α
Teorema 5. Para un número de nodos N suficientemente grande y α ≥ 0,58 se
tiene
. . . P m > . . . > P 6 > P5 > Pb > P4 > P3 > P2 > P1
Demostración. Es consecuencia de los siguientes resultados:
(a) Si k < m y N >> 0 entonces Pm > Pk : Un árbol k–ario de altura h tiene el
kh+1 − 1
mismo número de nodos que un árbol m–ario de altura h 0 si, y sólo si,
=
k−1
0
mh +1 − 1
. Entonces
m−1
(kα )h+1
Pk
(mα − 1)
=0
= lı́m
m−1
h→∞ (k α − 1) (mα )logm ( k−1 kh+1 )
h→∞ Pm
lı́m
(b) Si m ≥ 2 y N >> 0 entonces Pm > P1 :
0
P1
=
Pm
1−α h +1
h0 +1
(m−1)(1−α ) (mα )h+1 −1
mα −1
mh+1 −1
mh+1 −1
(mα − 1) 1 − α m−1 h→∞
−→ 0
=
(1 − α ) (mα )h+1 − 1
(c) Si N >> 0 entoces P5 > Pb > P4 : En este caso probamos que
Pm (1 + α )log2 (m−1)
lı́m
=
h→∞ Pb
mα − 1
mα
(1 + α )log2 m
Donde el limite L es 0 o ∞ dependiendo de que
mα
log m
(1+α ) 2
!h+1
= L.
sea menor o mayor que
1, respectivamente. Se prueba que L = 0 si m ≤ 4 o m = 5 y α < α 0 , donde α0 es
la solución de 5α0 = (1 + α0 )log2 5 , i.e. α0 = 0,57016 . . .. Por otro lado, L = ∞ si
m ≥ 6 o m = 5 y α > α0 .
q
Para árboles cola se obtiene el mismo orden. Ahora usaremos P h,m (resp.
q
Ph,b ) para denotar el PageRank de la raı́z de un árbol cola m–ario (resp. binomial).
Estos valores dependen de la paridad de la altura h.
Cómo mejorar el PageRank de un árbol
59
Teorema 6. (i) Para h suficientemente grande se tiene
q
q
q
q
q
Ph,1 > Ph,b > Ph,2 > Ph,3 > . . . > Ph,m . . .
(ii) Para N suficientemente grande se tiene
q
q
q
q
q
q
q
q
. . . Ph,m > . . . > Ph,6 > Ph,5 > Ph,b > Ph,4 > Ph,3 > Ph,2 > Ph,1
La demostración es más complicada y la dejamos para la versión extendida.
5. Conclusiones
Estos resultados son útiles en el diseño de web locales con estructura arbórea
para optimizar o mejorar el PageRank de su página principal. Este objetivo se
traduce (teorema 1) en el siguiente problema de optimización.
Objectivo principal: Maximizar la función
P(h, 1, n1 , . . . , nh ) =
1−α
1 + n1 + . . . + n h
h
∑ α k nk
k=0
con α ∈ (0, 1) fijo y para todos los árboles T = 1n 1 . . . nh con valores h, ni ≥ 1,
1 ≤ i ≤ h, enteros.
Si el número total de nodos N está acotado entonces podemos asegurar que
el máximo existe (P es continua en un dominio compacto). La complejidad del
problema es equivalente a la de encontrar las particiones enteras positivas de N, y
la posibildad de resolverlo depende de la capacidad del ordenador. Si en la práctica
no se puede alcanzar el objetivo principal nos podemos aproximar a él aplicando
la siguiente regla general deducible de los resultados de este artı́culo.
Regla general: Reducir la altura tanto como lo permita el contexto (teorema 2).
Tener en cuenta que se pueden reorganizar como se desee las conexiones entre
niveles consecutivos (teorema 1). Fijada la altura óptima se pueden suprimir nodos
en la mitad superior del árbol (los que permita el contexto) hasta aproximarnos al
árbol cola (teorema 3) y los que no se puedan suprimir se deben conectar al nivel
más bajo posible (teorema 1).
El teorema 6 se ha probado usando técnicas de cálculo continuo y no puede
q
q
aplicarse para valores no suficientemente grandes de h. Cáculando P h,b
y Ph,m
para valores pequeños de m y h se obtienen los siguientes resultados que completan el teorema 6–(i):
1.
q
q
q
Ph,1 > Ph,b > Ph,2 , para h ≥ 17.
60
Arratia,A.; Marijuán, C.
q
q
2.
Ph,b > Ph,1 , para 2 ≤ h ≤ 16.
3.
q
q
Ph,b
> Ph,2
, para todo h > 1.
4.
q
q
Ph,1
> Ph,2
, para h ≥ 15.
5.
Ph,2 > Ph,1 , para 2 ≤ h ≤ 14.
6.
Ph,2 > Ph,3 > Ph,4 > . . . > Ph,m . . ., para h ≥ 9.
7.
Ph,2 < Ph,3 < Ph,4 < . . . < Ph,m . . ., para h = 3, 4.
8.
El teorema 6–(i) es “casi” cierto para h = 5, 6, 7, 8 (es cierto para todo m
salvo para algunos valores comprendidos entre 2 y 6).
q
q
q
q
q
q
q
q
q
q
Observamos que, en general, el árbol binomial modeliza una estructura conectiva regular para webs locales con mayor PageRank de su página principal.
Bibliografı́a
[1] Sergey Brin & Lawrence Page, The anatomy of a large scale hypertextual
web search engine. Computer Networks and ISDN Systems, 33 (1998), 107117.
[2] Sergey Brin, R. Motwami, Lawrence Page & Terry Winograd, The PageRank
citation ranking: Bringing order to the web. Technical Report, Comp. Sci.
Dept., Stanford University, 1998.
[3] Thomas Cormen, Charles Leiserson, Ronald Rivest & Clifford Stein. Introduction to Algorithms, The MIT Press, 2nd. Edition, 2001
[4] Donald E. Knuth, The Art of Computer Programming, Addison-Wesley, volumes 1, 2, and 3, 3rd edition, 1998.
[5] Amy N. Langville and Carl D. Meyer, Deeper Inside PageRank, Internet
Mathematics 1, 3: 335–380, 2004.
Descargar