pagerank algoritmo de google y los metodos numericos

10
FACULTAD: INGENIERÍA PRODUCCION Y SERVICIOS ESCUELA PROFESIONAL: INGENIERÍA DE SISTEMAS ASIGNATURA: METODOS NUMERICOS TEMA: PAGERANK: ALGORITMO DE GOOGLE ALUMNA: CHOQUE CONDORI, YULIANA MADELEINE

Upload: yuliana-madeleine

Post on 05-Sep-2015

223 views

Category:

Documents


0 download

DESCRIPTION

Metodos numericos incluidos en el algoritmo de Google

TRANSCRIPT

AO DE LAS CUMBRES EN EL PER

FACULTAD:

INGENIERA PRODUCCION Y SERVICIOSESCUELA PROFESIONAL:

INGENIERA DE SISTEMASASIGNATURA:

METODOS NUMERICOSTEMA:

PAGERANK: ALGORITMO DE GOOGLEALUMNA:CHOQUE CONDORI, YULIANA MADELEINE

ACEPTA LA RESPONSABILIDAD DE EDIFICARTE A TI MISMO Y EL VALOR DE ACUSARTE EN EL FRACASO PARA VOLVER A EMPEZAR, CORRIGINDOTE.

AREQUIPA - PER

2015PageRank: Algoritmo de Google

El xito que ha tenido Google desde sus inicios hasta el da de hoy es que actualmente es el buscador de internet ms utilizado en todo el mundo, con elevados records de popularidad impensables. Por ejemplo, en mayo de 2011 supero los mil millones de visitantes al mes por primera vez en la historia. Adems que ningn otro buscador de internet se ha siquiera acercado a esta cifra. Este suceso tambin se traduce obviamente en las finanzas, ya que cuando sali a cotizar en el mercado de valores en el ao2004, la compaa estaba valorada en aproximadamente $ 25.000.000.000, cifra que ha ido creciendo a lo largo del tiempo, alcanzando los $ 37.905.000.000 en el ltimo reporte de 2011. Y todo por diagonalizar unas matrices. Para intentar explicar brevemente el algoritmo PageRank y ver cmo aparecen naturalmente los vectores y valores propios en este tema, primero veremos cmo se modela matemticamente un buscador de internet, ya que este algoritmo forma parte fundamental de la arquitectura del mismo, para esto revisaremos los inicios matemticos de este fabuloso algoritmo y que convierte a Google un "Dios" informtico.

Acerca de sus creadores

En el ao 1996, dos jvenes alumnos de doctorado de la Universidad de Stanford (EEUU), Sergei Brin y Lawrence Page comenzaron a trabajar en el diseo de un buscador de internet. Ambos tenan 23 aos. Sergei Brin se haba graduado en matemticas y Lawrence Page, en informtica lo que confirma como es que la matemtica e informtica en general van de la mano y para gran muestra Google .

Modelamiento e inicio del algoritmo

El algoritmo que iba a utilizar este buscador de internet fue denominado "PageRank", dado que Lawrence Page haba comenzado inicialmente con el proyecto al que luego se incorpor Sergei Brin y acab siendo implementado por Google . En 1998 el algoritmo es patentado, y al mismo tiempo aparece en internet el buscador Google que fue tambin realizado por Sergei Brin y Lawrence Page. Desde sus inicios, Google va a utilizar este algoritmo exitosamente para posicionarse desde muy temprano (y hasta nuestros das) como lder en el mercado de los buscadores de internet.

La palabra "Google " es una variacin fontica del trmino googol con el que se denomina (en ingls) al nmero 10100. Sus fundadores pretendan ofrecer un buscador que fuera rpido y eficiente. De hecho, el objetivo inicial de Sergei Brin y Lawrence Page era que al menos una de las diez primeras pginas que mostrara el buscador contenga informacin til para la persona que la consulta.

Para intentar explicar brevemente el algoritmo PageRank y ver cmo aparecen naturalmente los vectores y valores propios en este tema, primero se ver cmo se modela matemticamente un buscador de internet, ya que este algoritmo forma parte fundamental de la arquitectura del mismo.

Para ello se hizo un contraste de un buscador que es como el de un bibliotecario y una biblioteca donde uno quiere consultar un tema en especifico en algun libro, adems considrese que habitualmente una biblioteca tiene un catalogo donde se podra de alguna manera consultar lo que se desea buscar, sin embargo pensemos en el caso en que el catalogo no bastara y no se encontrase referencia alguna respecto a lo que buscamos, en ese caso consultamos con el bibliotecario, y este nos podra dar referencia de lo que deseamos buscar. Si suponemos ahora que la biblioteca contiene ms de mil millones de libros, y que bajo algn tema que desee hay cuatro millones de textos que tienen algo que decir al respecto, y que para enumerarme uno por uno todos estos textos a razn de un texto cada 10 segundos, el bibliotecario demorara casi 463 das y queda calro que no necesito leer los cuatro millones de libros para informarme del tema que busco, quizs con 10 de ellos sea suficiente. Ahi es cuando surge la pregunta cules 10? El algoritmo PageRank es justamente quien va a ayudarnos (o ms bien, ayudar al bibliotecario) a decidir sobre cmo ordenar la lista de salida, cules son los libros que tiene que recomendarme. Un buscador de internet esencialmente es una especie de catlogo de biblioteca junto con un bibliotecario que te recomienda qu libros leer respecto al tema de tu inters. El xito de este buscador depende justamente de tener una buena base de datos, ordenada de acuerdo a palabras clave de una manera razonable, y tambin un buen recomendador, ya que uno quiere acceder a la informacin de manera rpida y eficiente.

El trabajo de "catalogar", es decir indexar los datos censados en funcin de ciertas palabras clave tambin es hecho por programas informticos, que estudian distribuciones estadsticas de palabras, frecuencias de aparicin y enlaces a esa pgina, para hacer este trabajo. O sea que todo buscador de internet tiene que tener tanto un buen catlogo de pginas indexadas, as como un buen ndice en lo que respecta a las palabras clave a buscar, ahora Cmo se hace el trabajo de bibliotecario? Es decir, cmo decido qu pginas mostrar primero? cuando alguien pone en el buscador la palabra. Ah es donde entra a tallar el algoritmo de Page Rank.El algoritmo PageRank

Teniendo como base la idea analgica una biblioteca y su bibliotecario con una base de datos y un buscador respectivamente, para completar el funcionamiento del buscador faltara asignarle una "importancia" a cada una de las paginas que se ha de visitar para ubicar el tema de mi inters. Para ello es que se hace uso de Teora de Grafos, Mtodos numricos y algebra lineal.

Partamos de la idea; cada pgina web es un nodo, adems se tendr una flecha(arista orientada ),que denominaremos enlace, de una pgina p1 a una pgina p2 entonces haciendo uso del nuevo trmino "importancia", tendramos que P2 tiene ms importancia que P1 ya que hay un enlace que va desde P1 hacia P2, entonces se resume la caracterstica de importancia como: Mientras ms enlaces recibe una pgina ms importante ser. Aqu surge un nuevo trmino a tener en cuenta que es el "ndice de citas" de una pgina, lo que resulta en un nuevo problema y este es que se podra inflar de importancia una pgina creando varias pginas que apunten a esta. Para evitar esto se cambia la funcin "numero de citas" por "importancia de las citas" lo que significa no darle solo importancia al nmero de citas sino tambin si es que esta pgina recibe citas de paginas importantes. Por ejemplo si se recibieran citas desde Microsoft, Amazon.com, la importancia debera ser mayor. en este punto el postulado de PageRank dice: "La importancia i de la pgina P1 es directamente proporcional a la suma de las importancias de las paginas enlazadas con ella".

A continuacin una explicacin matemtica, por ejemplo la matriz de incidencia del grafo siguiente.

Y su matriz:

Teorema 1: Si Mi es la matriz de incidencia del grafo y x= (x1, ...,xn) perteneciente R>0n el vector de importancias, entonces se cumple

Mt i xt = xt

donde pertenece a R>0 es la constante de proporcionalidad.Corolario: El vector de importancias de las paginas web es un vector propio (positivo) de la matriz Mt i , y la constante de proporcionalidad es el valor propio asociado a este vector.

Verificando con un ejemplo, digamos que es la constante de proporcionalidad de la que habla el postulado. entonces se acuerdo con tal afirmacin se tendra las siguientes ecuaciones:

y su notacin matricial:

Ntese que en el ejemplo se verifica el teorema y corolario, ya que si en las filas de la matriz de incidencia del grafo uno puede leer cuantos enlaces salen de una pgina dada, justamente en las columnas aparecern tantos unos como enlaces haya hacia la pgina indexada por esa columna, por ese motivo se transpone la matriz para usarla en el problema del PageRank.

Para solucionar el problema se tiene:

en este caso, dado que al constante de proporcionalidad tiene que ser real y positiva, aparentemente hay una nica solucin que sera el siguiente:

Lo que resultara razonable de acuerdo a la figura 2, dado que la primera agina es votada por todas las otras y es nica con esa situacin, es decir que merece ser listada entre las 10 primeras.

Modificaciones al algoritmo pageRank

Dados los tiempos en que la web puede responder en absoluto la un gran porcentaje de cuestiones, donde la informacin est en todo y proviene de todos lados y es que en la actualidad estamos viviendo el auge de las redes sociales (muy propensas a producir hechos en cadena, en varios lugares y al mismo tiempo) se encontr una falla en el modelo previsible desde un primer momento: si una pgina tiene un solo enlace, este enlace vale lo mismo que cualquier otro enlace de otra pgina que produzca un milln de enlaces. Es como si bien producir enlaces desde mi propia pgina no aumenta mi importancia cuantos ms enlaces produce mi pgina, ms afecta a toda la red. Para evitar esto se hizo una modificacin que dice, si hubiera un enlace entre P1 hacia P2 en el lugar (1,2) de la matriz de incidencia tendra el poder de voto igual a 1 y esta se ira disminuyendo de acuerdo a los enlaces. Por ejemplo aplicando esto a la matriz del grafo ejemplo:

Ahora en cada fila hay una distribucin de nmeros no negativos que suman 1, esta matriz se conoce como estocstica por filas.

calculando ahora los valores y vectores propios de la matriz estocstica

As tambin hay una nica solucin en = 1 y

Notemos la diferencia en el resultado de las dos distribuciones de importancia. Mientras que en el primer modelo inicial las pginas 2 y 3 reciben la misma importancia en este segundo modelo la tercer pgina le gana a la segunda, siendo que la tercera recibe solo 2 votos y la segunda 3. Este motivo se debe al hecho de que la pagina 3 no solo recibe votos de la primera pgina que es la ms importante, sino que adems la pagina 1 solo emite dos votos mientras que todas ms que votan a la pagina 3 emiten 3 votos es decir que cuentan menos que por los de la primera pagina.

Hasta este punto no solo es un anlisis de ecuaciones lineales sino que tambin hace uso de otros estudios matemticos no mencionados por el momento. Adems de calcular la importancia de cada uno de sus pginas Google utiliza un mtodo de potencias para ordenar sus pginas de internet y mostrar los 10 resultados razonables.

Se basa en el siguiente hecho, si una matriz M cuadrada es diagonalizable y tiene todos sus vectores propios {v1,...,vn} numerados de manera que los auto valores correspondientes cumplan la siguiente condicin:

partiendo de v0 0 tal que

con 1 0, entonces se tendr

luego

un mltiplo no trivial del vector buscado, en este punto se puede analizar la velocidad de convergencia y otros aspectos relacionados.

Como se sabe, esto no quedara en esto sino que Google hara pruebas de otros algoritmos de bsqueda, uno de ellos y con el cual Google hace pruebas es Google Panda este algoritmo tendra la capacidad de de modificar la importancia de secciones enteras de la lista y no solo paginas individuales, lo que resulto que Google Panda reemplaz en definitiva al algoritmo PageRank en el ao 2011.PageRank en otros campos

El algoritmo que acabamos de analizar a grandes rasgos y siguiendo una idea sencilla como la de una biblioteca y bibliotecario, el algoritmo PageRank es una marca registrada por Google. En la actualidad se realizan modificacin al algoritmo PageRank como para predecir concentraciones humanas en calles o plazas, como modelo evolutivo de ecosistemas , otros tipos de bsquedas por la web como bsquedas especializadas entre compaas, donde limita la informacin a solamente aspectos concernientes a estas, mejorando el cmo las compaas puedan estar entrelazados de alguna manera o caracterstica comn entre ellas, e inclusive en la creacin de redes de protenas.Conclusiones

Se reviso el algoritmo de PageRank desde un punto de vista matemtico bsico como son las ecuaciones lineales, resultado de operaciones matriciales que representaban un grafo, esto como parte del Modelamiento del problema PageRank. Pudimos apreciar que en los algoritmos intervienen varias ramas de la matemtica como Teora de grafos, anlisis funcional, calculo numrico, mtodos de aproximacin, matemtica computacional etc. Debido a esto es que se concluye que cada una de las reas de la matemtica y de la informtica tienen que ser para un ingeniero una herramienta y mientras ms herramientas se tenga ms problemas se han de poder solucionar.

Referencias

http://es.wikipedia.org/wiki/PageRank http://www-2.dc.uba.ar/materias/metnum/dnload/2014_C1/pagerank.pdf http://www.tufuncion.com/algoritmo_pagerank_google http://personales.upv.es/~pedroche/inv/_docs/fpedrochev4%28sema%29.pdf http://www.alegsa.com.ar/Dic/pagerank.php http://es.slideshare.net/anibal_gomez/the-linear-algebra-behind-googles-pagerank-spanishgoogles-page-rank http://seo.pe/guia-seo-para-principiantes/como-funcionan-los-buscadores/ http://cmup.fc.up.pt/cmup/mecs/googlePR.pdf http://atlas.mat.ub.es/personals/dandrea/2012_09_25_escrito_google.pdf http://www.sema.org.es/documentos/fernandez_google.pdf