Método de PageRank Para Realizar Búsquedas de Información en Google

download Método de PageRank Para Realizar Búsquedas de Información en Google

of 16

description

Como se realiza la búsqueda del de páginas en internet con el método PageRank

Transcript of Método de PageRank Para Realizar Búsquedas de Información en Google

Mtodo de PageRank para realizar bsquedas de informacin en GoogleYahira Yesenia Gallardo Texas*Divisin de Ciencias e Ingenieras Universidad De Guanajuato PROYECTO LGEBRA LINEAL

Dr. Teodoro Cordova Fraga7

RESUMENObjetivo. Explicar el mtodo matricial que utiliza un buscador de internet (Google) para encontrar resultados de acuerdo al referenciamiento que existe entre pginas de internet basado en su importancia. Este mtodo, llamado Page Rank, utiliza la teora de grafos que indica cmo las pginas se relacionan entre s y forman vnculos unas con otras. La importancia de las pginas radica en cuntas veces son linkeadas (llamadas) desde otra pgina. Para la seccin de resultados, se le asign un nmero arbitrario a cada una de las siguientes pginas:1. YouTube2. Wikipedia3. Facebook4. Wikimatematika5. Rincn del Vago

Fig. 1: Grafo, representacin esquemtica de la vinculacin existente entre un determinado grupo de pginas.INTRODUCCIN Y MARCO TERICOAntecedes del Mtodo PageRankPageRankTM es una marca registrada y patentada el 9 de Enero de 1998 bajo el ttulo original de Method for node ranking in a linked database" siendo un valor numrico entre uno y diez, que representa la importancia que Google da a una pgina web en Internet. El PageRank es uno de los factores ms importantes que usa el software de Google a la hora de posicionar una web en los primeros lugares de los resultados de una bsqueda. El objetivo inicial era que al menos una de las diez primeras pginas que muestra el buscador contenga informacin til para la persona que la consulta.Los fundadores de Google se dieron cuenta que muchos documentos acadmicos hacan referencia a otros, de tal manera que si un documento tiene un gran nmero de referencias se puede llegar a la conclusin de que ste es importante o relevante en esa materia. De esta misma manera funcionaba Internet en sus inicios y lo sigue haciendo en la actualidad. Partiendo de esta hiptesis se puede llegar a determinar qu pginas son ms relevantes para los usuarios en virtud del nmero de enlaces que nos conducen a ella y Google las tendr en mayor consideracin a la hora de posicionarlas en los resultados de sus bsquedas.El modelo PageRank. Vectores y valores propiosEl trabajo del buscador es asignarle una importancia a cada pgina web de las que tenemos censadas. Para ello, la teora de grafos nos ayudar a mostrar nuestra situacin.En el modelo PageRank, el universo de las pginas web indexadas es un gran grafo dirigido, donde cada pgina web censada es un nodo, y habr una "flecha" (arista orientada) desde la pgina pi hacia la pgina pj si hay un enlace desde la primera pgina hacia la segunda. En este gran grafo dirigido, uno tiene que asignar una "importancia" a cada pgina. Una manera razonable de asignar importancias podra ser que cuantos ms enlaces recibe una pgina, ms importante ser.El problema que tiene este modelo es que uno podra "inflar" rpidamente la importancia de una pgina web determinada simplemente creando varias pginas que tengan enlaces con la misma, y este procedimiento es muy fcil de implementar en pocos minutos, lo cual hara que todo el sistema fuera muy fcil de influir. Dicho en palabras, el "postulado" del modelo PageRank dice lo siguiente:La importancia xi de la pgina pi es directamente proporcional a la suma de las importancias de las pginas que enlazan con ella.El dibujo de un grafo (dirigido o no) es ilustrativo e interesante si se trata de pocos nodos, pero el grafo de internet tiene ms de un billn de pginas. En lugar de ello, se considera la matriz de incidencia del grafo, que se define como la matriz cuadrada de tamao igual a la cantidad de nodos del grafo.En esta matriz, se coloca un 1 en el lugar (i, j) si hay un enlace desde pi hasta pj. Si no lo hay, se pone un cero. Por ejemplo la matriz de incidencia la definimos a partir del grafo y es aqu donde entra el lgebra lineal con los vectores y valores propios.Los siguientes teoremas, proposiciones y definiciones son las utilizadas para el desarrollo experimental mostrado posteriormente.Teorema 1.1. Si MI es la matriz de incidencia del grafo de internet, y x = (x1,...,xN) R0n el vector de importancias, entonces se cumpleMTI xT = xTDonde R>0 es la constante de proporcionalidad.Y aqu viene bien recordar algunas definiciones clsicas del lgebra lineal.Definicin 1.1. Dados una matriz cuadrada M de tamao n n, un vector no nulo x Rn (o Cn) y un nmero R (o C), el vector x se dice vector propio de M con valor propio asociado si y solo si se verificaMxT = xTCorolario 1.3. El vector de importancias de las pginas web es un vector propio (positivo) de la matriz MTI, y la constante de proporcionalidad es el valor propio asociado a este vector.Cuando se encuentra la solucin al problema planteado, se realiza la siguiente pregunta existe unicidad?, la respuesta al problema de la unicidad viene de la mano de otra rama de la matemtica que es el Anlisis Funcional.Teorema 1.2 (Teorema de Oskar Perron) Sea M una matriz cuadrada con todos sus coeficientes positivos. Entonces: Existe un valor propio simple > 0 tal que MvT = vT, donde v es el vector correspondiente, y tiene todas sus coordenadas positivas. Este valor propio es mayor, en mdulo, que todos los dems valores propios de M Cualquier otro vector propio positivo de M es un mltiplo de vTeorema 1.3 (Teorema de Georg Frobenius) Sea M una matriz cuadrada con entradas no negativas. Si M se dice irreducible, entonces Existe un valor propio simple > 0 tal que MvT = vT, donde v es el vector correspondiente, y tiene todas sus coordenadas positivas Este valor propio es mayor o igual, en mdulo, que todos los dems valores propios de M Cualquier otro vector propio con entradas no negativas de M es un mltiplo de v.Definicin 1.2 Una matriz M se dice irreducible si no existe ninguna permutacin de sus filas y columnas que la transforme en otra matriz del tipo

Donde M11 y M12 son matrices cuadradas.Proposicin 1.1. Si M es la matriz de incidencia de un grafo dirigido, entonces M irreducible es equivalente a que el grafo sea "fuertemente conexo", es decir que dados dos nodos cualesquiera del mismo, es posible encontrar una sucesin de aristas que lleven de uno a otro. En smbolos, dado > 0, muy pequeo, definimos

La matriz MI, E cumple con las hiptesis del Teorema de Perron, y entonces "declaramos que "la" solucin al problema es la que se obtiene segn ese enunciado para un prefijado (en el desarrollo experimental, Google utiliza = 0,15)DESARROLLO EXPERIMENTAL Se plantea hipotticamente el caso mostrado en el grafo de la figura 1, dnde se realiza el siguiente rankeo entre pginas y pginas:

PginaCuntas veces de rankeaCon quin

1) YouTube23), 5)

2)Wikipedia11)

3)Facebook31), 2), 4)

4)Wikimatematika31), 2), 5)

5)Rincn del Vago31), 2), 3)

TABLA 1.Muestra los links entre pginas planteadas por el grafo

De este direccionamiento entre pginas podemos proponer una matriz de la siguiente manera:

Observando que YouTube es nuestro primer vector rengln, ste mismo solo se direcciona con Facebook y Rincn del Vago, lugares en donde el vector rengln coloca un 1. As mismo para los siguientes vectores rengln de la matriz M.De acuerdo al postulado de PageRank y a la Definicin 1.1 se propone un autovalor, o constante de proporcionalidad . Se tiene la siguiente operacin matricial:

Expresndolo como ecuaciones, se obtiene:

1) 1x2+ 1x3 + 1x4 + 1x5 = x12) 1x3 + 1x4 + 1x5 = x23) 1x1 + 1x4 + 1x5 = x34) 1x3 = x45) 1x1 + 1x4 = x5

La razn por la cual se transpone la matriz es debido a que si en los renglones de la matriz de incidencia del grafo se puede leer cuntos enlaces estn relacionados en una pgina dada, justamente en las columnas aprecern tantos unos como enlaces haya hacia la pgina indexeada.Planteado ya el problema para el grafo propuesto y utilizando un programa de ayuda para calcular matrices, en este caso Matematika, podemos obtener:

Posibles valores (aproximados) para (valores propios de la matriz M T):1 = 2.272 = -0.5 0.866 i3 = -0.5 + 0.866 i4 = -0-635 + 0.0692 i5 = -0-635 0.692 i

Posibles valores (aproximados) para los vectores propios x (ordenados con respecto a los valores ya obtenidos):

1.74; 1.21; 1.21; 0.532; 1

0; -0.5 0.866 i; -0.5+ 0.866 i; 1

0; -0.5 + 0.866 i; -0.5 0.866 i; 1

-0.469 + 0.101 i; -0.303 0.49 i; -0.303 0.49 i; -0.166 + 0.591 i; 1

-0.469 0.101 i; -0.303 + 0.49 i; -0.303 + 0.49 i; -0.166 0.591 i; 1

Dado a que la constante de proporcionalidad tiene que ser real y positiva ( = 2.27), existe nicamente una solucin al problema, y es la siguiente:

x1 = 1.74 x2 = 1.21x3 = 1.21x4 = 0.532x5 = 1

Siendo una respuesta razonable ya que la primera pgina (YouTube) es votada por todas las otras, y es la nica que presenta sta situacin. YouTube merece ganar la contienda de linkeos.Se podra suponer que sta manera de resolver el problema se puede generalizar, que de cualquier matriz cuadrada con ceros y unos habr un nico valor propio positivo y asociado a ste un vector propio positivo. Sin embargo esto no sucede, ya que por ejemplo de una matriz

Se obtiene un eigenvalor nico = 0; pudindose construir matrices ms grandes con ms de un eigenvalor (valor propio) positivo. Todo el procedimiento desarrollado anteriormente, fue el realizado en los primeros aos en qu se desarroll Google, hasta que se encontr la siguiente falla: si una pgina tiene un solo enlace, ste enlace vale lo mismo que cualquier otro enlace de otra pgina que produzca un milln de enlaces, es decir, se van disminuyendo las importancias de las pginas de acuerdo al rankeo que realizan.Para evitar esto, el modelo se modific de tal manera que si hubiera un enlace desde pi a pj, en lugar de (i, j) de la matriz de incidencia se coloca el nmero

Con esto, cada pgina tiene poder de voto igual a 1, y sta unidad se va distribuyendo de acuerdo a los enlaces.Utilizando dicha modificacin para los valores del grafo, se obtiene la matriz

En cada fila hay una distribucin de nmeros no negativos que suman 1, como si fuera una distribucin de probabilidades sobre los nodos del grafo de internet. Este tipo de matrices se conoce como estocstica por filas.Calculando ahora los valores y vectores propios con la matriz ME:

Posibles valores (aproximados) para (valores propios de la matriz M TE):1 = 12 = -0.333 + 0.471 i3 = -0.333 0.471 i4 = -0.167 + 0.289 i5 = -0.167 0.289 i

Posibles valores (aproximados) para los vectores propios x (ordenados con respecto a los valores ya obtenidos):1.73; 0.867; 1.2; 0.4; 1

0.333 + 0.943 i; 0.667 0.236 i; 0.5 0.707 i; 0.5; 1

-0.333 - 0.943 i; -0.667 + 0.236 i; 0.5 + 0.707 i; -0.5; 1

0; 0; -0.5 - 0.866 i; -0.5 + 0.866 i; 1

0; 0; -0.5 + 0.866 i; -0.5 0.866 i; 1 Como en el caso anterior, se tiene un valor de real solo para 1 = 1, cuya nica solucin ser:

x1 = 1.73x2 = 0.867x3 = 1.2x4 = 0.4x5 = 1

Observando que en la solucin del primer modelo descrito, la pgina 2 y 3 reciban la misma importancia, en esta segunda solucin la 3er pgina le gana a la 2da.El motivo de la diferencia se puede explicar debido a que la pgina 3 no solo es votada por la 1ra pgina que es la ms importante, sino que adems la 1ra pgina solo emite dos votos, mientras que todas las que votan a la pgina 3 emiten 3 votos; estos votos cuentan por menos que los de la 1ra pgina.De acuerdo con los teoremas 1.2 y 1.3 la unicidad consiste en quedarnos con el nico vector propio positivo de la matriz, el asociado al valor propio ms grande que todos los otros, es decir, el mdulo. Sin embargo nuestras matrices M estn asociadas a los grafos de pginas de internet, y tienen muchos ceros, por lo que estn muy lejos de ser positivas. Para que fueran positivas, todas las pginas deberan de enlazarse con todas, incluso consigo mismas. Debido al interminable nmero de nodos que se pueden encontrar en un grafo de internet, los teoremas 1.2 y 1.3, as como la definicin 1.2 y la proposicin 1.1 no nos ayudan a resolver el problema; entonces cmo lo resuelve Google?Fig.2: Componentes conexas del grafo de internet modelado en 1999

Siendo la perturbacin algo muy comn dentro del lgebra lineal, se trabajan con datos aproximados; entonces lo que se realiza es reemplazar a la matriz estocstica ME por una matriz a la cual todos sus coeficientes sern positivos al sumar una matriz a conveniencia.El principio subyacente a esta idea es que la funcin importancia es continua, y si se pudiera calcular cerca de la situacin en dnde se encuentra, se obtiene un valor para ordenar importancias y no realmente calcularlas.De acuerdo con la proposicin 1.1, Google utiliza un valor de = 0.15Calculando la matriz perturbada del grafo que planteamos en un inicio:

Con ayuda de un programa, en este caso Mathematica, calculamos:

El vector propio positivo de esta matriz (asociado al valor propio = 1) se obtiene:

x1 = 0.672559x2 = 0.363478x3 = 0.463318x4 = 0.194141x5 = 0.403921

Este es nuestro vector de importancias que induce el mismo orden que el que produce la matriz sin perturbar, es decir, que antes y despus de la perturbacin tenamos el siguiente orden entre las pginas:

x1 > x3 > x5 > x2 > x4

YouTube > Facebook > Rincon Del Vago > Wikipedia >Wikimatematika

DISCUSINEste mtodo parece muy factible y til para encontrar una pgina con 5 entradas distintas que generan una matriz 5x5, pero si se quisiera calcular una verdadera matriz con un billn de entradas, sera un verdadero problema incluso para un ordenador eficiente. Google ofrece una solucin a este problema. Utiliza el mtodo de las potencias que es muy efectivo computacionalmente. Este mtodo permite simplificar el clculo de las matrices involucradas en cada bsqueda. Cabe aclarar que este mtodo es eficiente por el hecho de conocer cmo funciona el PageRank y saber cmo aplicarlo.CONCLUSINEsta es una manera bastante til de aplicar lgebra lineal en situaciones de la vida diaria. El mtodo de rankeo utilizado por Google es la forma ms eficiente para relacionar pginas de internet referenciadas entre s. No por nada es el buscador ms usado en el mundo entero. Es mejor que nos enlacen pginas con mayor PageRank. No es lo mismo que te citen en un peridico regional que salir en un programa de televisin de mxima audiencia. Es mejor que nos enlacen webs con pocos enlaces salientes. No es lo mismo repartir un pastel entre 100 que hacerlo entre 10. Hay que controlar el flujo de PageRank, poniendo solo enlaces en tu web a quien realmente se lo merece.

REFERENCIAS[1] Pedroche. Mtodos de clculo del vector PageRank. Institut de Matemtica Multidisciplinar Universitat Politcnica de Valencia.http://personales.upv.es/~pedroche/inv/_docs/fpedrochev4%28sema%29.pdf[2] Lucas Corrales. PageRank: lgebra lineal aplicada. UNCPBA, Facultad de Ciencias exactas. 2006. http://depto8.files.wordpress.com/2007/10/pagerank-algebra-lineal-aplicada.pdf[3] Carlos DAndrea. El lgebra lineal detrs de los buscadores de internet. http://atlas.mat.ub.es/personals/dandrea/2012_09_25_escrito_google.pdf[4] Editor de ecuaciones en lnea: http://www.alciro.org/tools/matematicas/editor-ecuaciones.jsp[5] P. Fernndez. El secreto de Google y el lgebra Lineal. Departamento de matemticas, universidad Autnoma de Madrid (2004). http://www.sema.org.es/documentos/fernandez_google.pdf[6] Serge Land, Introduccin al lgebra Lineal, Segunda Edicin, Ed. Springer, cap VIII, pg. 233.