PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma...

28
PageRank: Álgebra Lineal aplicada UNCPBA Facultad de Ciencias Exactas Cátedra: Álgebra II Profesor: Mg. Sebastián Torcida Alumno: Lucas Corrales 2006

Transcript of PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma...

Page 1: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

PageRank: Álgebra Lineal

aplicadaUNCPBA

Facultad de Ciencias ExactasCátedra: Álgebra II

Profesor: Mg. Sebastián TorcidaAlumno: Lucas Corrales

2006

Page 2: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

El secreto de Google

● Fue creado por Larry Page y Sergey Brin.

● Google nació en un dormitorio en la

Universidad de Stanford.

● Un factor del éxito fue el rankeo de las

páginas...

Antes necesitamos saber algo...

Page 3: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Búsquedas en internet

● ¿Como funciona un motor de búsqueda?

– Localiza todas las paginas web.

– Indexa las paginas.

– Rankea las paginas.

Page 4: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

¿Cómo rankeo?

Por número de backlinks.

12

4

3

Diagrama web.

{X1=2X 2=3X 3=3X 4=1

Page 5: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

¿Cómo rankeo?

Por suma del peso de las páginas que me

linkean.

12

4

3

Diagrama web.

{X1=X3X 4

X 2=X1X3X4

X 3=X1X 2X4

X 4=X2

Page 6: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

¿Cómo rankeo?Proporcional a la cantidad de links

12

4

3

Diagrama web.

{X1=

X 3

2 X4

3

X2=X1

2

X3

2

X 4

3

X3=X1

2 X2

2 X 4

3

X 4=X 2

2

Page 7: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Representación matricial

{X1=

X 3

2 X4

3

X2=X1

2

X3

2

X 4

3

X3=X1

2 X2

2 X 4

3

X 4=X 2

2

A=[0 0 1

213

12

0 12

13

12

12

0 13

0 12 0 0

] X=[X 1

X 2

X 3

X 4]⇒

Ax= x

Page 8: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Solución al problema

Ax= x

¡¡Encontrar el autovector asociado al autovalor 1!!

Page 9: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Resolución del ejemplo

A=[0 0 1

213

12

0 12

13

12

12

0 13

0 12 0 0

] X=[X 1

X 2

X 3

X 4]

Ax= x

⇒ {X1=

109

X 2=43

X3=149

X 4=1

Page 10: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Resolución del ejemplo

● Para una mejor comparación reemplazamos

∀ X i      X iX i

∑j=1

4

X j ⇒ {X 1≃0,22X 2≃0,27X 3≃0,31X 4≃0,2

¡¡¡Tenemos nuestro Ranking de las paginas!!!

Page 11: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

¿Y si 1 no es autovalor?

● Definición:

● Proposición:

Una matriz cuadrada se diceestocástica por columnassies no negativa y lasuma de los elementos de sus columnases 1.

Toda matrizestocástica por columnastiene a1como autovalor.

Page 12: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Dificultades

Paginas “colgadas” Sub Webs

1 24

35

1 24

3

Page 13: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Paginas “colgadas”

1 24

3

A=[0 0 1

212

12 0 1

2 0

12 0 0 1

20 0 0 0

]¡¡¡No es estocástica!!!

Page 14: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Paginas “colgadas”

● Definición:

● Proposición:

Una matriz cuadrada sedice subestocástica porcolumnas si la suma de los elementos de sus columnas

es menor o igual a1.

Toda matriz subestocástica por columnas tiene unautovalor   0≤λ≤1 yun vector asociado con

entradas no negativas

Page 15: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Resolución del ejemplo

χAλ  =   ²λ λ−12λ

12

Sλ=

12

 =   gen   < 1 2 1 0 > {X 1=0,25X2=0,5

X 3=0,25X4=0

A=[0 0 1

212

12

0 12

0

12

0 012

0 0 0 0]1 24

3

Page 16: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Sub Webs

1 24

35

A=[0 1

212

0 0

0 0 12 0 0

1 12

0 0 0

0 0 0 0 10 0 0 1 0

]Sλ=1  =   gen   < 3

21 2 0 0 ,0 0 0 1 1>

¿Cual usamos para rankear?

Page 17: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Sub Webs

A=[A1 0 ⋯ 00 A2 0 00 ⋮ ⋱ 00 0 0 Ar

]

Supongamos que W seauna webcon r subwebs ,W 1, W 2, ... ,W r , entonces la matriz de A es de la forma :

Donde Ai representa la matriz deW i

Dim S λ=1  ≥   r

Page 18: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Modificación de la matriz A

M=1−m AmS

S=[1n

⋯1n

⋮ ⋱ ⋮

1n

⋯1n] m∈[0,1]

Reemplazamos A por M en laecuación x=Ax

Page 19: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Modificación de la matriz A

x=Mx

x=1−m Axms

Como  ∑i

n

x i=1  ⇒   Sx=s   donde   s=1n⋮

1n

Page 20: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Resolución del ejemplo

M=0,15.[0 1

212

0 0

0 0 12 0 0

1 12

0 0 0

0 0 0 0 10 0 0 1 0

]0,85. [15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

15

]

Page 21: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Resolución del ejemplo

{X 1≃0,2

X 2≃0,19X3≃0,21X 4≃0,2X 5≃0,2

M=[0,17 0,245 0,245 0,17 0,170,17 0,17 0,245 0,17 0,170,32 0,245 0,17 0,17 0,170,17 0,17 0,17 0,17 0,320,17 0,17 0,17 0,32 0,17

]Sλ=1  =   gen   <1 0,93 1,07 1 1>

¡¡¡Un solo vector!!!

Page 22: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

La matriz M

M=1−m AmS S=[1n

⋯1n

⋮ ⋱ ⋮

1n

⋯1n] m∈[0,1]

● Es estocástica

● Es positiva

● El subespacio asociado al autovalor 1

tiene dimensión 1.

Page 23: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

¿Tiene dimensión 1?

● Proposición:Si unamatriz es positiva yestocástica por columnas ,

entonces   ∀ v  ∈   Sλ=1  ,v   tiene todas suscomponentesdel mismo signo

Sean v y w vectores L.I.entonces existe unvector x ,combinacion lineal dev yw , que tiene componentes de

ambos signos

Siuna matriz es positiva y estocástica por columnas ,entonces Dim Sλ=1=1

● Proposición:

● Proposición:

Page 24: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

A hacer las cuentitas...

¿Cómo calculamos el autovector?

– Power Method

Tomamos   x 0   apropiado, armamosla sucesiónx k=Mx k−1   y calculamos   lim

k∞

x k

Page 25: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

A hacer las cuentitas...● Definición:

● Proposición:

∥ ∥: Rn R   como  ∥v∥=∑

i=1

n

∣v i∣

SeaM una matriz positiva yestocástica por columnas

y sea   V ⊆S Rn   /   V={v∈V :∑i

n

vi=0}, entonces

∀ v∈V ,   Mv∈V   y  ∥Mv∥≤c∥v∥dondec=max1≤ j≤ n∣1−2 .min1≤i≤n Mij∣1

Page 26: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

A hacer las cuentitas...

● Proposición:

Sea M una matriz positiva yestocástica por columnasentonces ,  ∃!q /   Mq=q   y  ∥q∥=1. Además

q=limk∞

M k x0    ∀ x0   con componentes positivos

y  ∥x0∥=1

Page 27: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Teorema

M definida por M=1−m AmS paraunaWeb sin paginas colgadas

es positiva y estocástica por columnas ,

∃!q posivito   /   Mq=q   y  ∑i=1

n

q i=1.

Además   q=limk∞

x k   con

x k=1−m Axk−1ms   si  ∥x0∥=1

Page 28: PageRank: Álgebra Lineal aplicada · Diagrama web. {X1 =2 X2=3 X3=3 X4=1 ¿Cómo rankeo? Por suma del peso de las páginas que me linkean. 1 2 4 3 Diagrama web. {X1 =X 3

Muchas gracias...

Licencia Creative Commons

Algunos derechos reservados

Sebastián TorcidaManuel AlonsoManuel CorralesGabriel Aníbal CarrizoPablo RavazzoliInés Rosso

...y mas que nada a los cumpas presentes

Corrales [email protected]