Cambios en PageRank
La fórmula de PageRank \(\vec{PR}=\alpha \cdot A \cdot \vec{PR} + (1-\alpha)\cdot \vec{e}\) puede resolverse para \(\vec{PR}\) de forma iterativa. En cada iteración, el valor actual de \(\vec{PR}\) se usa para calcular un nuevo valor que está más cerca del valor verdadero. Esto significa que la diferencia entre los \(\vec{PR}\) de dos iteraciones consecutivas se hace cada vez más pequeña hasta que \(\vec{PR}\) converge al valor verdadero y la diferencia pasa a ser (casi) cero. En este ejercicio, vas a examinar el algoritmo PageRank y cómo converge.
Este ejercicio forma parte del curso
Analítica predictiva con datos conectados en R
Instrucciones del ejercicio
- Calcula una iteración con el algoritmo PageRank usando
page.rank()connetworke indicandoniter=1. Extrae el atributo del vector y asigna el resultado aiter1. - Repite el paso anterior con
niter=2. Asigna el resultado aiter2. - Calcula la suma de la diferencia absoluta entre los vectores
iter1eiter2. - Hemos calculado
iter9eiter10del mismo modo queiter1eiter2. ¿Es la diferencia entre estas dos iteraciones menor que entre las iteraciones 1 y 2?
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Compute one iteration of PageRank
iter1 <- page.rank(___, algo = 'power', options = list(niter = ___))$vector
# Compute two iterations of PageRank
iter2 <- ___(___, algo = 'power', options = list(niter = ___))$vector
# Inspect the change between one and two iterations
sum(abs(___ - ___))
# Inspect the change between nine and ten iterations
sum(___(___ - ___))