ANALISIS DE PROXIMIDADES

Anuncio
-1-
ANALISIS DE PROXIMIDADES
(MULTIDIMENSIONAL SCALING (MDS))
José Luis Vicente Villardón
Departamento de Estadística
Universidad de Salamanca
-2-
MODELOS DE MDS
INTRODUCCION
El Multidimensional Scaling (MDS) o Análisis de Proximidades es
un método que trata de representar medidas de proximidad
(similaridades o disimilaridades) entre pares de objetos como
distancias (euclídeas) en un espacio multidimensional de baja
dimensión. La representación en baja dimensión permite la
inspección visual de la estructura de los datos.
USOS DEL MDS
- Técnica Exploratoria
- Contraste de hipótesis estructurales
- Exploración de estructuras psicológicas.
- Modelos de juicio de similaridad
CONCEPTOS INICIALES
- Medida de la proximidad δij
(distancia observada)
(similaridad observada)
(disimilaridad)
- El MDS trata de representar proximidades mediante distancias
entre puntos de una configuración m-dimensional X , que
denominaremos el espacio MDS.
- En el espacio MDS definimos un sistema de coordenadas. Cada
uno de los ejes del sistema de coordenadas se denomina
dimensión.
-3-
- La distancia entre dos puntos i, j en el espacio MDS la denotamos
con dij(X) o simplemente con dij, y es
dij =
m
∑ (xik − x jk )2
k=1
y es la distancia euclídea fundamental o distancia pitagórica.
- El MDS convierte proximidades δij definidas en un espacio
abstracto no determinado, en distancias dij en el espacio MDS,
f : δ ij → dij
donde la función f especifica el modelo de MDS.
f (δ ij ) = dij
Es decir, el MDS trata de aproximar un conjunto de proximidades, o
una función de las mismas, mediante una configuración euclídea.
f (δ ij ) = δˆij
ó
dˆij se conocen normalmente como disparidades.
-4-
MDS METRICO
La función f es de forma conocida pero de parámetros desconocidos.
- MDS absoluto, clásico o Coordenadas principales
δˆij = δ ij
- MDS para escala de razón
δˆij = bδ ij
- MDS para escala de intervalo
δˆij = a + bδ ij
- Otros tipos no lineales
- Logarítmico
δˆij = b log(δ ij )
δˆij = a + b log(δ ij )
- Exponencial
δ
δˆij = a + be ij
- Cuadrático
δˆij = a + bδ ij + cδ ij2
- Inverso
b
δˆij = a +
δ ij
- Recíproco
δˆij = b(1− δ ij )
Las disparidades se estiman mediante regresión
-5-
MDS NO METRICO
La función f no se especifica completamente, se restringe para que
sea monótona
- MDS ordinal
Si δ ij < δ kl entonces δˆij ≤ δˆkl y sin orden particular cuando δ ij = δ kl
- MDS nominal
Si δ ij = δ kl entonces δˆij = δˆkl
Las disparidades se estiman mediante regresión monótona.
EMPATES EN MDS NO METRICO
Se dice que hay un empate cuando dos proximidades tienen el
mismo rango de orden.
- Aproximación Primaria: Los empates no imponen restricciones
sobre las distancias
- Aproximación secundaria: Las distancias en la solución son
iguales.
-6-
ERRORES, FUNCIONES DE PERDIDA Y STRESS
Aunque el modelo exige que f (δ ij ) = dij , en la práctica f (δ ij ) ≅ dij tan
cerca como sea posible.
Se define el error de la representación como
e ij2 = [ f (δ ij ) − dij ] 2
y sumando para todos los pares
σ 2r = σ r2 (X) = ∑ [f(δ ij ) − dij ]2
(i,j)
se obtiene lo que se denomina stress bruto, que depende de la
calibración de las proximidades.
Para evitar la dependencia de las escala podemos escribir
∑ [ f (δ ij ) − dij ]2
σ r2 (X) (i, j)
2
2
σ 1 = σ 1 (X) =
=
∑ dij2
∑ dij2
(i, j)
(i,j)
Tomando la raíz cuadrada se obtiene el Stress-1 de Kruskal.
∑ [f(δ ij ) − dij ]2
Stres − 1 = σ 1 =
(i,j)
∑ dij2
(i, j)
-7-
Si la matriz es simétrica, basta tomar la suma para i < j.
Minimizar el Stress-1, requiere encontrar un X óptimo en dimensión
m y una función f adecuada.
-8-
INTERPRETACION DEL STRESS
El stress es una medida de la falta de ajuste que depende de varios
factores.
- n, el número de puntos. A mayor número de puntos mayor
stress.
- -
m,
la
dimensionalidad
del
espacio
MDS.
A
mayor
dimensionalidad mayor stress.
- El error en los datos: A mayor error mayor stress
- El número de empates: En general, mayor número de empates
permiten menor stress.
- El número de datos perdidos: En general un mayor número de
datos perdidos produce un menor stress.
- El modelo de MDS: El MDS para datos de intervalo produce un
mayor stress que el modelo ordinal, particularmente si f es
marcadamente no lineal.
STRESS PARA DATOS PERDIDOS
Es posible incluir datos perdidos añadiendo ponderaciones, de
forma que el stress podría escribirse como.
∑ wij [f (δ ij ) − dij ]2
σ1 =
(i,j)
∑ wij dij2
(i, j)
donde la ponderación es 1 si el dato es válido y 0 si se trata de un
dato perdido.
-9-
DIAGRAMAS DE SHEPARD
El diagrama de Shepard complementa a la nedida del Stress. Se trata
de un diagrama de dispersión que representa a las proximidades
frente a las disparidades o a las distancias.
disparidades
ó
distancias
proximidades
El stress puede interpretarse como un coeficiente de correlación que
mide la falta de ajuste.
El diagrama de Shepard permite detectar “outliers” y formas de la
función.
El diagrama de Shepard es particularmente útil en MDS ordinal
para detectar la forma aproximada de la función monótona
desconocida.
DIAGRAMAS DE RESIDUALES
Representan las diferencias entre las disparidades y las distancias
frente a las proximidades. Su interpretación es similar a la que se
utiliza en regresión.
-10-
ALGORITMO GENERAL PARA LA OBTENCION DEL MDS
Comenzar
Solución inicial X (0)
k=0
Calcular las disparidades óptimas
para las distancias en X (k)
Actualizar X (k)
(2)
Estandarizar las disparidades
k=k+1
Calcular σ r(k)
NO
K≠0 ?
SI
NO
σ r(k-1) - σ r(k) < ε
ó
k=nº max de iteraciones
(2): Busqueda del stress mínimo
SI
Parar
-11-
PRINCIPIOS DE LA MAYORIZACION
La característica fundamental de la mayorización iterativa es que
genera secuencias no crecientes de valores de la función que termina
generalmente en un mínimo local.
La idea general consiste en reemplazar la función a minimizar f(x)
por una función auxiliar g(x, z) donde z es un valor fijo. La función
g(x,z) debe cumplir las siguientes propiedades para que sea una
función mayorizante:
- La función g(x,z) debeser más simple de minimizar que f(x). Por
ejemplo, una función cuadrática.
- La función original debe ser siempre menor, o al menos igual que
la función auxiliar, f(x) ≤ g(x,z).
-
La función auxiliar ha de tocar a la superficie (curva) en el punto soporte z, f(z) = g
(z,z).
-12-
ALGORITMO ITERATIVO DE MAYORIZACION
1.- Tomar z = z0, (z0 es un valor inicial).
2.- Buscar una actualización de xu para la que g(xu,z) ≤ g(z,z).
3.- Si f(z) – f(xu) < e, parar
4.- Tomar z = xu, e ir a 2.
g(x,x0)
f(x)
g(x,x1)
f(x0)=g(x 0,x 0)
g(x1,x0)
f(x1)=g(x 1,x 1)
g(x2,x1)
f(x 2)
x2 x1
x0
MAYORIZACION CUADRATICA
Si
f(x) tiene la segunda derivada acotada, existe una función
cuadrática que tiene, comparada con f(x), una segunda derivada
mayor en cualquier punto x.
Para este tipo de funciones, f(x) puede mayorizarse con
g(x, z) = a(z)x 2 − b(z)x + c(z)
con a(z) > 0 y a(z), b(z) y c(z) funciones de z pero no de x.
-13-
MAYORIZACION DEL STRESS (SMACOF) (Para la función
identidad)
El Stress bruto puede escribirse como
σ 2r (X) = ∑ wij [δ ij − dij (X)] 2
i<j
= ∑ wijδ ij2 + ∑ wij dij2 (X) − 2 ∑ wijδ ij dij (X)
i< j
i< j
i< j
= ηδ2 + η 2 (X) − 2ρ(X)
los elementos (sumandos) de η 2 (X) pueden escribirse como
w ijdij2 (X) = wij tr( X ′A ij X) = tr(X ′w ijA ij X)
con aii = a jj = 1, aij = a ji = −1 y el resto 0.
( A ij está centrada por filas y por columnas, A ij 1 = 1′A ij = 0)
Sumando para i y j
η 2 (X) = ∑ w ijdij2 (X) = tr(X ′( ∑ wij Aij )X) = tr(X ′ VX)
i<j
i<j
con V = ∑ w ij A ij .
i<j
Ó, en general vij = wij si i ≠ j y vii = ∑nj=1 wij .
-14-
η 2 (X) es una función cuadrática de X fácil de manejar. V está
centrada por filas y por columnas. Es de rango n-1 y el valor propio
nulo corresponde al vector propio n
− 12
1.
ρ(X) es una suma ponderada de distancias
ρ(X) = ∑ (wij δ ij )dij (X)
i<j
para obtener una mayorización para de
dij (X)
usamos la
desigualdad de Cauchy-Schwarz
m
m
m
a=1
a=1
a=1
∑ p a qa ≤ ( ∑ p a2 )1/2 ( ∑ q a2 )1/2
la igualdad se verifica cuando q a = cpa . Si sustituimos p a por
(xia − x ja ) y q a por (zia − z ja ) obtenemos
 m
 1/2  m
 1/2
2
2
 ∑ (zia − z ja ) 
=
∑ (x ia − x ja )(z ia − z ja ) ≤  ∑ (xia − x ja ) 




a=1
a=1
a=1
= dij (X)dij (Z)
m
con igualdad si Z =X. Dividiendo ambos sumandos por dij (Z) y
multiplicando por –1, nos da
m
∑ (x ia − x ja )(zia − z ja )
−dij (X) ≤ − a=1
dij (Z)
-15-
Procediendo como antes
m
∑ (x ia − x ja )(z ia − z ja ) = tr(X ′A ijZ)
a=1
y
wij δ ij
−ρ(X) = − ∑ (wijδ ij )dij (X) ≤ −tr( X ′( d (Z) Aij )Z) = −tr( X ′ B(Z)Z)
ij
i<j
donde B(Z) tiene elementos
 w ij δ ij

−
bij =  dij (Z)

0
bii = -
n
∑
j=1, j≠i
para i ≠ j y dij (Z) ≠ 0
para i ≠ j y dij (Z) = 0
bij
Como la igualdad se produce si Z=X, hemos obtenido la
desigualdad de mayorización
−ρ(X) = −tr( X ′ B(X)X) ≤ −tr(X ′ B(Z)Z)
Combinando los resultados anteriores
σ 2r (X) = ηδ2 + tr(X ′ VX) − 2tr( X ′ B(X)X)
≤ ηδ2 + tr( X ′ VX) − 2tr(X ′ B(Z)Z) = τ(X, Z)
τ (X,Z) es una función mayorizante del stress que es cuadrática en X.
El mínimo puede obtenerse analíticamente igualando la derivada a
cero
-16-
∂τ(X,Z)
= 2VX − 2B(Z)Z = 0
∂X
de forma que
VX = B(Z)Z
V es singular por lo que, para resolver el sistema tenemos que
utilizar una inversa generalizada
V + = (V + 11 ′)−1 − n−2 11'
el último término ( n −2 11') es irrelevante ya que V + se multiplica
por una matriz ortogonal a 1, ya que B(Z)Z tiene un vector propio 1
con valor propio 0.
La fórmula de actualización es entonces:
X u = V + B(Z)Z
Si todos los pesos w ij = 1, entonces V + = n −1 J con J = I − n −1 11 ′ , la
matriz de centrado, y la fórmula de actualización es
X u = n −1B(Z)Z
(Transformación de Guttman).
-17-
ALGORITMO
1.- Tomar Z = X (0) , k=0.
2.- Calcular σ r (X (0) )
3.- k = k + 1.
4.- Actualizar las coordenadas X (k) = V +B(Z)Z .
5.- Calcular σ r (X (k ) )
6.- Si σ r (X (k −1) ) − σ r (X (k) ) < ε ó k = número máximo de iteraciones,
entonces parar
7.- Tomar Z = X (k) e ir a 3.
-18-
STRESS CON DISPARIDADES
Las disparidades se incorporan a la función de stress como
σ 2r (δˆ ,X) = ∑ w ij [δˆij − dij (X)]2
i<j
= ∑ w ijδˆ ij2 + ∑ w ij dij2 (X) − 2 ∑ w ijδˆ ijdij (X)
i<j
i< j
i< j
= η 2ˆ + η 2 (X) − 2ρ(δˆ, X)
δ
donde δˆ es un vector de sx1disparidades con s=n(n-1)/2.
Optimizando sobre δˆ y X, una solución trivial es δˆ = 0 y X=0. Para
evitar esta solución degenerada, tomamos δˆ con longitud fija
η 2ˆ = n(n − 1)/2
δ
En el algoritmo se ajustan las disparidades por regresión.
Para la fórmula de actualización se utilizan las disparidades
ajustadas.
-19-
ALGORITMO
1.- Tomar Z = X (0) , e iniciar el contador de iteraciones k=0.
2.- Encontrar las disparidades óptimas δˆ para distancias fijadas
dij (X(0) ). El procedimiento para el ajuste suele ser una regresión de
las distancias sobre las proximidades observadas de acuerdo con la
función f.
3.- Estandarizar δˆ de forma que η 2ˆ = n(n − 1)/2 .
δ
4.- Calcular σ r (X (0) )
5.- Incrementar el contador de iteraciones, k = k + 1.
6.- Actualizar las coordenadas X (k) = V +B(Z)Z , reemplazando δ ij
por δˆij .
7.- Encontrar las disparidades óptimas δˆ para distancias fijadas
dij (X(2) ) con el mismo procedimiento que en 2.
8.- Estandarizar δˆ de forma que η 2ˆ = n(n − 1)/2 .
δ
9.- Calcular σ r (δˆ ,X (k) )
10.- Si σ r (δˆ ,X (k−1) ) − σ r (δˆ, X(k) ) < ε ó k = número máximo de
iteraciones, entonces parar
11.- Tomar Z = X (k) e ir a 5.
Descargar