ComeçarComece de graça

Mudanças no PageRank

A fórmula do PageRank \(\vec{PR}=\alpha \cdot A \cdot \vec{PR} + (1-\alpha)\cdot \vec{e}\) pode ser resolvida para \(\vec{PR}\) de forma iterativa. Em cada iteração, o valor atual de \(\vec{PR}\) é usado para calcular um novo valor que fica mais próximo do valor verdadeiro. Isso significa que a diferença entre os \(\vec{PR}\) de duas iterações subsequentes vai ficando cada vez menor até que \(\vec{PR}\) converja para o valor verdadeiro e a diferença se torne (quase) zero. Neste exercício, você vai analisar o algoritmo PageRank e como ele converge.

Este exercício faz parte do curso

Análise Preditiva com Dados em Rede em R

Ver curso

Instruções do exercício

  • Calcule uma iteração com o algoritmo PageRank usando page.rank() com network e indicando niter=1. Extraia o atributo do vetor e atribua o resultado a iter1.
  • Repita o passo anterior com niter=2. Atribua o resultado a iter2.
  • Calcule a soma da diferença absoluta entre os vetores iter1 e iter2.
  • Nós já calculamos iter9 e iter10 da mesma forma que iter1 e iter2. A diferença entre essas duas iterações é menor do que entre as iterações 1 e 2?

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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(___(___ - ___))
Editar e executar o código