Vous êtes sur la page 1sur 6

Lalgorithme PageRank

Lionel Fourquaux 4 mai 2009


Lalgorithme PageRank (nomm daprs son inventeur Larry Page) est utilis pour classer par importance des documents daprs les liens de ces documents entre eux. Il peut sagir aussi bien de liens hypertextes entre pages web, de citations darticles scientifiques, ou toute autre forme de graphe. Cest lun des principaux moyens de classement utilis par le moteur de recherche Google, fond par Larry Page et Sergey Brin. Le mot PageRank lui-mme est une marque dpose par Google. Le procd est brevet par luniversit Stanford, qui en a accord une licence exclusive Google.

Dplacements sur un graphe, probabilits et matrices

Considrons un graphe fini, orient ou non, et un point qui se dplace alatoirement sur ce graphe, la probabilit demprunter chacune des artes partant du nud tant fixe. On obtient ainsi une chane de Markov homogne (particulirement simple puisque lespace de valeurs est fini), dont le comportement se lit sur les puissances de la matrice des probabilits de transition dun nud lautre. Numrotons les nuds de 1 , et notons , (pour 1 , ) la probabilit de passer du nud au nud . Cette probabilit est en particulier nulle sil ny a pas darte allant de vers . Si = ( )1 donne la probabilit dtre au nud linstant 0, alors la mme probabilit aprs dplacements est donne par le vecteur . Notons que pour tout , on a
=1

, = 1,

donc la transpose de la matrice = (, ) a 1 pour valeur propre, et la matrice a aussi 1 pour valeur propre. Considrons la norme dfinie par 1 = | |. On a 1 1 , et lon ne peut =1 avoir galit que si toutes les composantes de on le mme signe, except ventuellement si 1 est une valeur propre multiple. On en dduit donc lexistence dune distribution de probabilit stationnaire sur le graphe, cest--dire des rels 0 1 tels que
=1

, =

et 1

1 + + = 1.

Concernant les autres valeurs propres, notons quelles sont toutes de module au plus 1, et plus prcisment quelles se trouvent dans le disque ferm de centre min , ayant 1 sur son bord. Une telle matrice est appele matrice stochastique gauche, et ces proprits sont prcises par le thorme de Perron-Frobenius : Thorme 1. Soit = (, ) est une matrice cfficients rels positifs, irrductible, cest--dire telle que le graphe dont les nuds numrots par les entiers 1, ..., et dont les artes sont donnes par les couples (, ) tels que , = 0 est connexe. Alors o a les proprits suivantes. (i) Le rayon spectral de la matrice , cest--dire le maximum des modules de ses valeurs propres complexes, est une valeur propre de . (ii) Si est cfficients strictement positifs, cest une valeur propre simple. (iii) Il y a un vecteur propre de associ la valeur propre dont les composantes sont des rels positifs. (iv) Si a exactement valeurs propres complexes de module , alors lensemble des valeurs propres complexes de est stable par rotation dangle 2 autour de lorigine.

Quelques exemples de graphes


Considrons le graphe des sommets et artes dun ttradre : D

C A B

En donnant chaque arte la mme probabilit dtre emprunte, on trouve la matrice de transition suivante : 1 0 1 3 1 3 3 1 0 1 1 ttradre = 3 1 3 3 1 3 0 1 3 3 1 1 1 0 3 3 3 et un calcul des puissances de cette matrice donne que si lon est au nud A au temps 0, 1 alors la probabilit dtre en A au temps est 1(3) et celle dtre en B (ou C, ou D) 4 est 1(3) . Quand tend vers linfini, elle converge vers la distribution de probabilit 4 stationnaire, i.e. 1 pour chacun des quatre sommets, la vitesse de convergence tant 4 contrle par la valeur propre de plus grand module aprs 1. 2

Il ny a cependant pas troujours convergence. Par exemple, dans le cas du graphe dun cube, avec une mme probabilit pour chaque arte : D H E A G F B C

il est assez facile de montrer quil ny a en gnral pas convergence vers la distribution stationnaire ( 1 partout). En particulier, si lon est au nud A au temps 0, un argument 8 de parit montre que lon ne peut pas tre sur B, D, E ou G au temps 2. Au niveau de la matrice de transition, elle a des valeurs propres de module 1 autres que 1 (en loccurence, 1). (Le cube est le seul polydre rgulier pour lequel ce phnomne se produit). En revanche, si les cfficients diagonaux de la matrice de transition sont non nuls, alors 1 est la seule valeur propre de module 1, et lon est assur de la convergence vers une distribution de probabilit stationnaire.

Lalgorithme PageRank

Lide cl du PageRank est de mesurer l importance dun nud dun graphe partir des artes qui mnent ce nud et de limportance des nuds sources de ces artes. Pour cela, on peut considrer une marche alatoire sur le graphe, les artes partant dun nud donn ayant la mme probabilit dtre empruntes. (Dans le cas dun nud nayant aucune arte sortante, on peut faire comme sil avait des artes pointant vers tous les autres nuds, ou supprimer ces nuds du graphe). La probabilit attribue chaque nud dans la distribution stationnaire mesure alors limportance du nud. Prenons par exemple les cinq villes ayant la plus grande population en France, et le nombre de trains directs relevs sur une journe : vers : Paris Marseille Lyon Toulouse Nice Paris 0 16 20 6 4 Marseille 15 0 18 5 12 Lyon 23 18 0 3 4 6/17 5/17 3/17 0 3/17 Toulouse 3 5 2 0 2 2/11 6/11 2/11 1/11 0

Nice 5 16 4 3 0

On trouve la matrice de transition suivante : 0 16/55 5/11 15/46 0 9/22 18/55 0 1/2 3/46 1/11 1/22 5/46 16/55 1/11 3

et la distribution stationnaire ( PageRank ) obtenue est : Paris 0.249 Marseille 0.284 Lyon 0.255 Toulouse 0.067 Nice 0.145

ce qui correspond (assez grossirement : Paris et Toulouse se retrouvent plus bas quon aurait pu lattendre) au classement par population. Notons quil ne sagit pas simplement dune manire de comptabiliser le nombre dartes pointant vers un nud donn : le PageRank des nuds sources est aussi pris en compte, comme on le voit sur lexemple suivant. A B C

PageRank : A 16/54 B 9/54 C 3/54 D 12/54 E 1/54 F 12/54 G 1/54

On peut constater que le nud F a un plus grand PageRank que le nud G, alors que tous les deux ont une arte entrante et une sortante. Sous cette forme, lalgorithme prsente cependant un certain nombre dinconvnients : si le graphe nest pas connexe, la distribution de probabilit initiale influe sur le rsultat, en particulier en dterminant quelles composantes sont explores ; dans le cas dartes orients, si lon peut schapper dune partie du graphe mais pas y revenir, alors tous les nuds de cette partie auront une probabilit nulle dans la distribution stationnaire ; dautre part, se pose le problme du calcul du PageRank dans des situations relles, sur des graphes ayant potentiellement des millions de nuds : dterminer les vecteurs propres dune matrice (creuse) de plusieurs millions de cases de ct serait une lourde tche pour les algorithmes usuels de rsolution de systmes linaires. Ces problmes se trouvent simultanment rsolus par lintroduction dun facteur damortissement. Au lieu de considrer la matrice de transition prcdente, on utilise la matrice 1 + , o est la matrice carre de taille dont tous les cfficients valent 1, avec un facteur damortissement 0 < < 1. Cela correspond modifier le processus de dplacement 4

sur un graphe en introduisant une probabilit 1 de sauter vers un nud pris au hasard (quiprobablement) plutt que demprunter les artes. En particulier, tous les nuds peuvent alors tre atteints. Dautre part, la seule valeur propre de module 1 de la matrice est 1, et cest une valeur propre simple, ce qui montre la convergence vers une unique distribution de probabilit stationnaire. Enfin, on peut exploiter cette convergence (maintenant garantie) pour calculer cette distribution de probabilit : on part dune distribution de probabilit arbitraire, (0) , et lon considre la suite () = (0) , 0 de ses images par les puissances successives de la matrice de transition (modifie laide du facteur damortissement, comme cidessus). Pour assez grand, () fournit une bonne approximation de la distribution de probabilit stationnaire. (Cette mthode est appele mthode des puissances). Le facteur damortissement permet de contrler la vitesse de convergence du processus (les autres valeurs propres tendent vers 0 quand tend vers 0), au prix dune dgradation de la pertinence des rsultats. Typiquement, = 0.85 est la valeur utilise. Reprenons par exemple le graphe des trains. Voici les valeurs de PageRank obtenues par calcul exact sans facteur damortissement, par calcul exact avec = 0.85, et en partant dune distribution de probabilit concentre sur Paris et en appliquant cinq fois la matrice de transition avec = 0.85. Exact, sans amortissement : Exact, = 0.85 : 5 itrations, = 0.85 : Paris 0.249 0.242 0.237 Marseille 0.284 0.274 0.272 Lyon 0.255 0.246 0.252 Toulouse 0.067 0.086 0.086 Nice 0.145 0.152 0.153

laide de quelques multiplications dun vecteur par une matrice (au lieu dune rsolution de systme linaire), on obtient le bon classement.

Suggestions

1. Les proprits des matrices stochastiques donnes dans le texte mriteraient une dmonstration plus soigne (sans aller jusquau thorme de Perron-Frobenius luimme). 2. Le thorme de Perron-Frobenius pourra tre illustr par des exemples. 3. On pourra essayer dappliquer des mthodes gnrales de localisation des valeurs propres au cas des matrices stochastiques. 4. On pourra donner des exemples sur dautres graphes intressants que ceux donns par lnonc. 5. Comparer les nombre doprations requises entre la mthode des puissances et le calcul exact de la distribution stationnaire. On pourra aussi sintresser la tailles des donnes conserves en mmoire. 6. Montrer que le facteur damortissement permet bien dliminer les inconvnients signals dans le texte. 5

7. On pourra tudier graphiquement leffet des changements du facteur damortissement sur le PageRank, ainsi que le sensibilit au choix de la distribution initiale dans la mthode des puissance. 8. On pourra montrer que les valeurs propres de + 1 autres que 1 sont de module au plus .