33
El Álgebra Lineal detrás de Google Carlos D’Andrea I Congreso Nacional de Estudiantes de Matemática Corrientes, Julio 2012 Carlos D’Andrea El Álgebra Lineal detrás de Google

El Álgebra Lineal detrás de Google - ub.edu · El Álgebra Lineal detrás de Google ... Algebra behind Google”,KurtBryan&TanyaLeise,Siam Review48(3),569–581,2006 “Les Matemàtiques

Embed Size (px)

Citation preview

El Álgebra Lineal detrás de Google

Carlos D’Andrea

I Congreso Nacional de Estudiantes de MatemáticaCorrientes, Julio 2012

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Facultad de MatemáticasUniversidad de Barcelona

Licenciatura en MatemáticaMaster en Matemática AvanzadaDoctorado en MatemáticaOtros masters y doctoradosIngenieria Informática

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Programa de Álgebra Lineal(Ingeniería Informática)

PolinomiosNúmeros complejosSistemas lineales de ecuacionesMatricesEspacios vectorialesSubespacios, transformaciones lineales, etc, etc, etc.Valores y vectores propios – Diagonalización

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¿Para qué nos hacen estudiar todo esto???

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Álgebra Lineal en la Informática

Programación gráficaTeoría de grafos (redes sociales,...)Elaboración eficiente de filtrosInteligencia artificialVisión por ordenador. . .

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¡Todo esto lo verán después!

Carlos D’Andrea

El Álgebra Lineal detrás de Google

El álgebra lineal detrás de

Google es una variación de la palabra “googol”, que es elnúmero 10100

Es un buscador de internetFue diseñado en 1998 por dos alumnos de doctorado eninformática en Stanford: Sergei Brin y Lawrence PageAtiende alrededor de 200.000.000 de consultas diarias, tienemás de 54.000 empleados en todo el mundo

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Una gran familia

El “campus” de Google (Googleplex) se encuentra en MenloPark, Sillicon Valley, CaliforniaOcupa casi 50.000 metros cuadradosReclutamento constante de jóvenes talentos en todo el mundo

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Google’s got Talent

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¿Cómo se diseña un buscador de internet?

Es un problema de ingeniería matemática:

1 un buen conocimiento del contexto2 un modelo matemático que lo explique3 una cuidadosa y eficiente implementación

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Trabajo básico de un buscador de internet

“Censar” las páginas de internet de acceso públicoIndexar los datos censados de acuerdo a su importancia conrespecto a las palabras clavesOrdenar estos datos de acuerdo a su importancia conrespecto a las palabras claves

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¡También se requiere resistencia a lamanipulación!

Carlos D’Andrea

El Álgebra Lineal detrás de Google

El algoritmo “PageRank”

Califica páginas indexadas de acuerdo a su “importancia”dentro de la redMarca registrada de GoogleLleva su nombre debido a su inventor Larry Page

Carlos D’Andrea

El Álgebra Lineal detrás de Google

El modelo “PageRank”

El universo de páginas de internet públicas es un gran grafodirigido donde

cada página web es un nodohay una arista orientada entre páginas que citan a otraspáginas

Carlos D’Andrea

El Álgebra Lineal detrás de Google

La “importancia” de una página web

Es alta sila citan muchas páginasLa citan páginas “importantes”

Carlos D’Andrea

El Álgebra Lineal detrás de Google

“Postulado” PageRank

La importancia xj de la página Pj es proporcional a la sumade las importancias de las páginas que enlazan con Pj

Carlos D’Andrea

El Álgebra Lineal detrás de Google

El álgebra lineal entra en acción

M es la matriz de adyacencia del grafo de las páginas deinternet

El postulado Pagerank implica

Mt · x = λ · x

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¡Vectores y valores propios!

Mt · x = λ · x

λ es la constante de proporcionalidad ↔ un valor propio deMt

x = (x1, x2, . . . , xN) es el vector de “importancias” de laspáginas censadas ↔ un vector propio de Mt (asociado a λ)

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Todo muy bonito, pero...

¿Por qué debería tener valores propios reales Mt?¿Cual de ellos elijo?¿Por qué habría de haber vectores propios todos positivos?¿Algún tipo de unicidad???

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Teorema 1 (Perron, 1907)

Si M tiene todas sus coeficientes positivos, entoncesexiste un valor propio simple λ > 0 tal que Mt · x = λ · x, conx > 0;este valor propio es mayor, en módulo, que todos los demásvalores propios de la matriz;cualquier otro vector propio positivo de Mt es un múltiploescalar de x

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Pero...

Nuestra matriz M está MUY lejos de ser positiva

¿Qué hacemos?

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Teorema 2 (Frobenius, 1908–192)

Supongamos que M tiene entradas no negativas y además esirreducible. Entonces

existe un valor propio simple λ > 0 tal que Mt · x = λ · x, conx > 0;este valor propio es mayor o igual, en módulo, que todos losdemás valores propios de la matriz;cualquier otro vector propio positivo de Mt es un múltiploescalar de x

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Matrices irreducibles

Una matriz cuadrada se dice irreducible si no existe ningunapermutación de sus filas y columnas que la transforme en(

M11 A12

0 M22

),

con M11 y M22 matrices cuadradas

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Matrices irreducibles = grafos “fuertemente”conexos

Si se trata de la matriz de incidencia de un grafo dirigido, serirreducible significa que puedo ir desde cualquier nodo a otro por uncamino (dirigido)

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¿Es el grafo de internet fuertemente conexo?

¡Ni siquiera es conexo!Carlos D’Andrea

El Álgebra Lineal detrás de Google

Solución “a la Google” → ¡Matemática aplicada!

“Perturbamos” la matriz M

c M + (1− c)U 7→Mdonde

c es un parámetro entre 0 y 1 (cgoogle ≈ 0, 85)

U =

1N

1N . . . 1

N...

......

...1N

1N . . . 1

N

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Del existencialismo al Cálculo

No se necesitanPolinomios característicosCálculos de raícesDescomposición en subespacios invariantes

¡Álgebra Lineal Numérica!

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Método de las potencias (usado por Google)

Si hay un único valor propio λ de módulo máximo entonces,consideremos la siguiente sucesión

x0= cualquier vector de RN

xn+1 = Mt·xn‖Mt·xn‖

Entonceslimn→∞xn = xlimn→∞

‖Mt·xn‖‖xn‖ = λ

con probabilidad 1

Carlos D’Andrea

El Álgebra Lineal detrás de Google

La misma idea para otros problemas

Clasificación para las eliminatorias de la NBAModelos de evolución probabilísticaDinámica de poblacionesModelos económicos

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Googleπlogo

El objetivo de Brin y Page era que al menos una de las diezprimeras páginas que se muestren contenga información útilpara el que consulta · · · ¿Tuvieron exito?En 2004 el valor de Google en el mercado era de alrededor de25.000.000.000 U$DEl algoritmo PageRank fue patentado por la Universidad deStanford, y Google tiene derechos exclusivos sobre esa patente.Stanford recibió acciones por esa patente que fueron vendidosen 2005 por 336.000.000 U$DDesde febrero de 2011 Google utiliza combinadamente losalgoritmos PageRank y Google Panda

Carlos D’Andrea

El Álgebra Lineal detrás de Google

¿Qué hemos aprendido hoy?

Grafos y sus propiedades → Teoría de GrafosMatrices con entradas positivas → Matrices estocásticasCálculo computacional de vectores y valores propios →Álgebra Lineal NuméricaTeoremas de Perron y Frobenius → Análisis funcionalPageRank y Panda → Algoritmos de búsqueda

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Para saber más

“El secreto de Google y el Álgebra Lineal”, P.Fernández, Bol. Soc. Esp. Mat. Apl. 30 (2004), 115–141“The $25, 000, 000, 000 Eigenvector: The LinearAlgebra behind Google”, Kurt Bryan & Tanya Leise, SiamReview 48 (3), 569–581, 2006“Les Matemàtiques de Google: l’algorismePageRank”, Joan Gimbert, Butlletí de la Societat Catalana deMatemàtiques, Vol 26, 1, 211, 29–55

Carlos D’Andrea

El Álgebra Lineal detrás de Google

Muchas graciashttp://atlas.mat.ub.es/personals/dandrea

Carlos D’Andrea

El Álgebra Lineal detrás de Google