Download El Álgebra Lineal detrás de los buscadores de internet

Document related concepts

Álgebra lineal numérica wikipedia , lookup

Álgebra de Clifford wikipedia , lookup

Álgebra lineal wikipedia , lookup

Subespacio de Krylov wikipedia , lookup

Matriz (matemáticas) wikipedia , lookup

Transcript
El Álgebra Lineal detrás de los buscadores
de internet
Carlos D’Andrea
26 / 09 / 2012
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Bloques temáticos de Álgebra (EI)
Sistemas lineales de ecuaciones
Matrices & determinantes
Espacios vectoriales
Subespacios, transformaciones lineales, ...
Polinomios
Números complejos
Vectores y valores propios – Diagonalización
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Álgebra Lineal en la Informática
Agrupamiento y clasificación de datos
Programación gráfica
Redes sociales
Sistemas de recomendación
Reconocimiento de formas (música, huellas, fotografías)
Inteligencia artificial
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¡Todo esto lo verán después!
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
El álgebra lineal detrás de
Google es una variación de la palabra “googol”, que es el
número 10100
Es un buscador de internet
Fue diseñado en 1998 por dos alumnos de doctorado en
informática en Stanford: Sergei Brin y Lawrence Page
Atiende alrededor de 200.000.000 de consultas diarias, tiene
más de 54.000 empleados en todo el mundo
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¿Qué es un buscador de internet?
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Trabajo básico de un buscador de internet
1
2
3
“Censar” las páginas de internet de acceso público
Indexar los datos censados de acuerdo a su importancia con
respecto a las palabras claves
Ordenar estos datos de acuerdo a su importancia con
respecto a las palabras claves
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
El algoritmo “PageRank”
Califica páginas indexadas de acuerdo a su “importancia”
dentro de la red
Marca registrada de Google
Lleva su nombre debido a su inventor Larry Page
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
El modelo PageRank
El universo de páginas de internet públicas es un gran grafo
dirigido donde
cada página web es un nodo
hay una arista orientada entre páginas que citan a otras
páginas
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
La “importancia” de una página web
Es alta si
la citan muchas páginas
La citan páginas “importantes”
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Postulado PageRank
La importancia xj de la página Pj es proporcional a la suma
de las importancias de las páginas que enlazan con Pj

0 · x1




 0 · x1
1 · x1


0
· x1



1 · x1
+1 · x2
+0 · x2
+0 · x2
+0 · x2
+0 · x2
+1 · x3
+1 · x3
+0 · x3
+1 · x3
+0 · x3
+1 · x4
+1 · x4
+0 · x4
+0 · x4
+1 · x4
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
+1 · x5
+1 · x5
+1 · x5
+0 · x5
+0 · x5
=
=
=
=
=
λ x1
λ x2
λ x3
λ x4
λ x5
Un poco de Álgebra lineal
Si MI es la matriz de adyacencia del grafo de internet, entonces
MT
I ·x = λ·x



MI = 


Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
0
1
1
1
1
0
0
1
1
1
1
0
0
0
1
0
0
1
0
0
1
0
0
1
0






¡Vectores y valores propios!
MT
I ·x = λ·x
λ es la constante de proporcionalidad ↔ un valor propio de
MT
I
x = (x1 , x2 , . . . , xN ) es el vector de “importancias” de las
páginas censadas ↔ un vector propio de MT
I (asociado a λ)
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
“Democratizando” el modelo
Cada página tiene voto igual a 1 ↔ Matrices estocásticas

MI ,E
0
 1
 1
=
 13

3
1
3
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
0
0
1
3
1
3
1
3
1
2
0
0
0
1
3
0
0
1
2
1
3
0
0
0
0
0
1
3






Una sesión de Mathematica
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¿Es verdad que...
siempre tiene valores propios reales MT
I ,E ?
siempre hay un vector propio con todas sus coordenadas no
negativas?
hay única solución a este problema???
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Eso no es... verdad
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Teorema (Perron– Frobenius (1907–1912))
Supongamos que M tiene entradas no negativas y además es
irreducible. Entonces
existe un valor propio simple λ > 0 tal que M · x = λ · x, con
x>0
este valor propio es mayor o igual, en módulo, que todos los
demás valores propios de M
cualquier otro vector propio positivo de M es un múltiplo
escalar de x
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Matrices irreducibles
Una matriz cuadrada se dice irreducible si no existe ninguna
permutació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 los buscadores de internet
Matriz irreducible ↔ grafo “fuertemente” conexo
Si se trata de la matriz de incidencia de un grafo dirigido, ser
irreducible significa que dos nodos cualesquiera estan conectados
por un camino (dirigido)
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¿Es el grafo de internet fuertemente conexo?
¡Ni siquiera es conexo!
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Solución “a la Google”
“Perturbamos” la matriz MI ,E y la hacemos irreducible:
McI,E := c MI ,E + (1 − c)U
c es un parámetro entre 0 y 1 (cgoogle ≈ 0, 85)
 1 1

1
N
N ... N

..
.. 
U =  ... ...
.
. 
1
N
1
N
...
1
N
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Corolario: todo grafo dirigido tiene su importancia
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet




0, 85 



0
0
0
0
0
0








1
0
0
0
0
0
0
0
1
2
1
2
0
0
0
1
0
0
0
0
0, 025
0, 025
0, 025
0, 025
0, 025
0, 025
0
0
0
1
2
0
0
0, 875
0, 025
0, 025
0, 025
0, 025
0, 025
0
0
0










1  + 0, 15 

2 

1 
0
=
0, 025 0, 025
0, 45 0, 45
0, 025 0, 025
0, 025 0, 025
0, 025 0, 025
0, 875 0, 025
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
0, 025
0, 025
0, 025
0, 45
0, 025
0, 025
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
1
6
0, 025
0, 025
0, 025
0, 45
0, 875
0, 025
1
6
1
6
1
6
1
6
1
6
1
6








1
6
1
6
1
6
1
6
1
6
1
6








Del existencialismo al Cálculo
El grafo de internet tiene más de un billón de nodos.... ¿cómo se
calcula el vector propio de importancias?
Métodos Numéricos
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Teorema 1 (Perron, 1907)
Si M tiene todos sus coeficientes positivos, entonces
existe un valor propio simple λ > 0 tal que M · x = λ · x, con
x>0
este valor propio es mayor, en módulo, que todos los demás
valores propios de M
cualquier otro vector propio positivo de M es un múltiplo
escalar de x
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
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 =
M·xn
kM·xn k
Entonces
limn→∞ xn
= x
nk
limn→∞ kM·x
kxn k
= λ
con probabilidad 1
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Google y PageRank
El objetivo de Brin y Page era que al menos una de las diez
primeras páginas que se muestren contenga información útil
para el que consulta
En mayo de 2011 Google consiguió superar los mil millones de
visitantes por mes
En el último reporte anual (2011) los activos de la compañía
estaban valorados en U$D 37.905.000.000
El algoritmo PageRank fue patentado por la Universidad de
Stanford, y Google tiene derechos exclusivos sobre esa patente.
Desde febrero de 2011 Google utiliza “Google Panda”, la
segunda generación del PageRank
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
Otras aplicaciones del PageRank
Clasificación para las eliminatorias de la NBA
Modelos de evolución de ecosistemas
Análisis de redes de proteínas
Alternativa al ISI impact factor
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
“The $25, 000, 000, 000 Eigenvector: The Linear
Algebra behind Google”, Kurt Bryan & Tanya Leise, Siam
Review 48 (3), 569–581, 2006
“Les Matemàtiques de Google: l’algorisme
PageRank”, Joan Gimbert, Butlletí de la Societat Catalana de
Matemàtiques, Vol 26, 1, 2011, 29–55
“El secreto de Google y el Álgebra Lineal”, P.
Fernández, Bol. Soc. Esp. Mat. Apl. 30 (2004), 115–141
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¿Qué hemos aprendido hoy?
Álgebra lineal
Teoría de grafos
Matrices estocásticas
Cálculo numérico
Análisis funcional
Algoritmos de búsqueda
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
¿Qué es la ingeniería?
... es la actividad
de trasformar el
conocimiento en
algo práctico
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet
http://atlas.mat.ub.es/personals/dandrea
Carlos D’Andrea
El Álgebra Lineal detrás de los buscadores de internet