Técnicas Supervisadas no paramétricas

Anuncio
Técnicas Supervisadas
Aproximación no paramétrica
2013
• Notas basadas en el curso Reconocimiento de Formas de F.Cortijo, Univ. de Granada y en el libro
Pattern Clasification de Duda, Hart y Storck
• Parte del material se extrajo de las notas:Técnicas Supervisadas II: Aproximación no paramétrica
de F.Cortijo, Univ. de Granada
Contenido

Estimación de la función de densidad

Estimadores de Parzen

Estimación mediante los k-vecinos más
próximos

Método de clasificación del vecino más
próximo
Edición del conjunto de entrenamiento
Condensado
Métodos de aprendizaje adaptivo



Estimación de densidades no paramétricas


Las formas paramétricas raramente ajustan las
densidades encontradas en la práctica (en general
multimodales)
Métodos no paramétricos:



Procedimientos que estiman funciones densidades p(x/wj) a
partir de las muestras.
Procedimientos que estiman directamente las probabilidades
a posteriori P(wj/x). Regla del vecino más cercano.
Nos vamos a centrar en métodos frecuentistas.
Métodos Bayesianos están ganando interés.
Histograma



Estimador de densidades más sencillo y antigüo
Realiza partición del espacio en bins.
Estimo la densidad por el número de prototipos
que caen en un “intervalo”.
pi 
ni
 i : tamaño del intervalo
n i
fig: Cañette
Histograma

Estimación depende del tamaño del intervalo.





Fig: Bishop
∆ : pequeño aproximación ruidosa
∆ : aproximación promediada, ej: falla en capturar bimodal.
Mejores resultados ∆ intermedio.
Depende de la localización de los bins.
Limitaciones:


Discontinuidades
Escalado con la dimensionalidad: En un espacio de alta dimensionalidad
la cantidad de datos necesaria para aproximación local significativa es
prohibitiva.
Clasificación con Histograma
Suponemos que Z es el conjunto de n muestras de entrenamiento.
En el bin B tengo k muestras del conjunto Z. Sean ki de la clase wi
Clasificador de mínimo error.
k /n
p( x) 
VB
ki / ni
p( x / wi ) 
VB
ki ni
p(x / wi ) P( wi ) niVB n
P( wi / x) 

k
p ( x)
nVB
ni
P( wi ) 
n
ki
P( wi / x) 
k
Método del Histograma


Al bin B se le asocia la etiqueta de la clase más
frecuente. Es la clase que se le asigna a los x distintos
a los prototipos en B.
El clasificador toma la forma de una look-up table
cuyo tamaño depende de la cantidad de celdas y del
tamaño de Z.
Método del Histograma





p(x) depende de vecindad.
Vecindad en histograma: Bins
Parámetro de suavizado: ancho del bin.
Escalabilidad: El número de celdas crece en forma
exponencial con la cantidad de características Md .
Veremos métodos que tienen mejor propiedades de
escalabilidad que el histograma.
Estimación de densidades por Kernel
x1 x 2 ...x n : iid tomadas de una densidad p(x).
P probabilidad de x  R : P   p ( x' )dx'
R
Pk  Ckn P k (1  P) n  k prob. que k de las n  R
E ( k / n)  P
P1  P 
var(k / n) 
n
Estimación de densidades
Duda
Estimación de densidades
Si p(x) continua en R y R tan pequeña que p(x)  cte
P   p(x' )dx'  p (x)V con V volumen envuelve a R
R
k/n
p ( x) 
V
(consideraciones contradict orias sobre R)
si fijo V y n  
P

V
 p(x' )dx'
R
versión promediada de p(x)
 dx '
R
Estimación de densidades



Si queremos obtener p(x) y no una versión promediada
V→0.
Si fijamos n puede que p(x) ≈0 o ∞ (cuando no cae
ninguna o alguna muestra).
V no puede ser arbitrariamente pequeño tenemos que
admitir varianza en k/n y un cierto promediado en p(x).
Estimación de densidades




Existen 2 formas de analizar la estimación:
Ventanas de Parzen: Fijar V y determinar k de los
datos.
Estimación de los k-vecinos más cercanos. Fijar k y
determinar V de los datos.
Ambos métodos convergen al valor verdadero de p(x)
aunque es difícil hacer aseveraciones del
comportamiento para n finito.
Ventanas de Parzen vs k- vecinos
Duda
Estimación de densidades

Consideremos R1 R2 ….. Rn : secuencia de regiones
Ri región con i muestras,
Vn volumen de Rn , kn número de muestras en Rn
pn(x) estimación n-esima de p(x)
Si pn(x) va a converger a p(x) se necesita :
lim Vn  0
n 
asegura P/V converga a p(x).
lim k n   si p(x)  0 asegura k/n converga en prob. a P
n 
kn
lim  0 solo una pequeña fracción de las muestras  R
n  n
Estimación de densidades


Sea ki numero de muestras de la clase wi en un
volumen V centrado en x.
ni numero total de muestras de la clase wi
ki / ni
p (x / wi ) 
V

P(wi) la estimo como ni / n o supongo que son
equiprobables
Estimación por ventanas de Parzen

Considero una ventana centrada en x y veo cuantas
muestras de la clase wi caen en un hipercubo de
volumen V=ρd
ki
1
p (x / wi ) 

niV ni
ni
m
K
(
x
,
Z

i )
1
1
m
si  (x, Z i )  

m
K (x, Z i )  V
 0 si  (x, Z im )  
x
Estimadores de Parzen



Estimación por ventanas ó núcleos. La fórmula
anterior sugiere una forma más general de
aproximación en la que cada muestra contribuya en
función de su distancia a x (influencia), interpolación.
¿qué información proporciona cada muestra
individualmente de p(x/wi)?
Zim m-esima muestra de la clase wi
 p(Zim/wi)>0
 Suponiendo continuidad p(x/wi)0 en la vecindad
de Zim .Cuando me alejo la influencia se hace
menor.
Estimación mediante núcleos (funciones radiales)

K(x, Zim ) función centrada en Zim que alcanza un máximo
en Zim y que decrece en forma monótona cuando aumenta
la distancia. La estimación hereda la regularidad de K.
Rango de influencia del núcleo






La contribución de una muestra depende del ancho del núcleo
y la forma del núcleo.
Reconstrucción a partir de muestras con muestreo aleatorio.
El estimador es muy dependiente de los datos disponibles.
Si las muestras están muy dispersas  tiene que ser grande,
para que p(x)≠0. Vamos a tener poca resolución, promediado.
Si las muestras están muy agrupadas  tiene que ser menor.
Hay un compromiso entre el sesgo y la varianza. Cuando  es
muy pequeño el sesgo disminuye pero aumenta la varianza.
Comparación de distintas ventanas
Cañette
Forma general de la función núcleo
m



(
x
,
Z
m
i )
K (x, Z i )  d h 
   
1
lim  d (ni )  0
ni 
ni    
(x,Zim) métrica determinada por el núcleo
máx(h)=h(0), h monótona decreciente con (x,Zim)
Forma general de la función núcleo
Si h>0
 K (x, Z
m
i
)dx  1
1
pˆ (x / wi ) 
ni
ni
 K (x, Z
j 1
j
i
)
  (x, Z ) 
K (x, Z )  d h 

   
m
i
1
m
i
Elección de  : parámetro de suavizado


 =cte
 dinámico
1
pˆ (x / wi ) 
ni
K (x,  (x), Z )
m
i
ni
 K (x,  , Z
j
j 1
 j  media (Z , Z )
2
m
i
j
i
j
i
)
Propiedades del estimador
pn (x) secuencia de variables aleatorias ,
tiene una media pn (x) y varianza  n2 .
pn (x) converge a p (x) si :
lim pn (x)  p (x) y lim  n2 (x)  0.
n 
n 
Esto está asegurado si :
d
sup (h(u))  , lim h(u) u i  0
u
u 
lim Vn  0 y lim nVn  
n 
n 
i 1
Duda -
Núcleo Gaussiano
1
h( x) 
e
2
K (x, Z ) 
m
i
1 2
 x
2
1
d
2
(2 ) 


e
1
 ( x  Z im )T
2

1
( x  Z im )
1
2
Distancia de Mahalanobis,  distinto en cada dimensión y se
contempla correlación entre variables. Si matriz es diagonal, la
correlación es 0 y la distancia es euclídea.
Estimador suave, computacionalmente muy costoso
Núcleo hiperesférico
1

m
K (x, Z i )  V

0



d (x, Z
si d (x, Z )  
si
m
i
m
i
)


Ventaja: eficiencia computacional (cálculo de
distancia y suma). Útil cuando tengo muchas
muestras.
Desventaja: estimación constante por tramos
Núcleo hipercúbico
d



2

K (x, Z im )  
si
0

 (x, Z
 (x, Z
si
T
T
m
i
m
i
)
)



 T (x, Z im )  máx x j  Z im Distancia de Chevyshev
j 1..d


Ventaja: eficiencia computacional .Cálculo de la
distancia más eficiente.
Desventaja: estimación constante por tramos
Ejemplo
Hipercubo =5
Ejemplo
Gaussiano =3
Ejemplo
Comparación
Ejemplo
Comparación para un mismo núcleo y distintos anchos
Verdadera
Estimada: hipercubo =20
Estimación mediante los k vecinos
más próximos

Heurística: El volumen que encierra un número fijo k de
prototipos es menor en regiones densamente pobladas que
en regiones donde se encuentran más dispersos.

p(x/wi)=ki/niV(x)
Elección de k


ki depende de ni
El estimador es consistente e insesgado si se
verifica:
lim ki (ni )  
ni 
ki (ni )
lim
0
ni 
ni
Se puede elegir:
ki (ni )  c ni
Hipercubo =5
k-vecinos k=3
k-vecinos k=3
k-vecinos k=5
k-vecinos k=7
Estimación directa de las probabilidades
a posteriori
ki ni
ki
pn (x, wi )  pn (x / wi ) P( wi ) 

niV n nV
Pn ( wi / x) 
pn (x, wi )
c
 p (x, w )
j 1
n
j
ki

k
Regla de clasificación de los k-vecinos
más cercanos k-NN


La regla de decisión que minimiza el error :
elegimos para x la clase más frecuente de la celda.
Selecciono wj si
k j  máxki (x)
i 1..c

ki(x) : número de muestras de la clase wi entre los
k vecinos más cercanos a x.
Regla del vecino más cercano 1-NN

Selecciono wj si:
d ( x, xNN )  min  ( x, xi )
i 1..n
xNN  w j

Interpretación: Divide al espacio en n regiones
de Voronoi
Cotas de Error de 1-NN


Procedimiento subóptimo, tasa de error mayor que la
de Bayes.
Con un número ilimitado de prototipos el error nunca
es mayor que 2 veces Bayes
c

*
E  E1  E  2 
E 
c 1 

*
*
Error asociado a k-NN
E  ....E2k 1  E2 k ...  E1  2E
*
Si
n
lim Ek  E
k 
*
y
k n
*
Regla (k,t)-NN


Extensión: clase de rechazo.
Selecciono la clase wj si tiene una mayoría
cualificada por lo menos tj son de la clase wj.
wj
d ( x)  
w0
k j  máxki (x)  t j
i 1..c
en otro caso
Vecino más cercano

Ventajas: poderoso, fácil de implementar y pronto
para trabajar una vez que se cargan los vectores de
referencia. Puede paralelizarse.

Desventajas: Puede establecer incontables pequeñas
regiones en zonas de alta penetración con clases
competitivas. La ambigüedad queda escondida por
una decisión arbitraria que acarrea un gran esfuerzo
computacional.
Regla del vecino más
cercano restringida (clase de rechazo).
Regla 1-NN(t)
 wj
d ( x)  
w0
 x, xNN   min  ( x, xi )   t
i 1..n
en otro caso
.

t se elige luego de examinar la distribución de las distancias
de los patrones.

Regla del vecino más cercano confía en la métrica o distancia
utilizada.
1/ k

k 
Métrica de Minkowski L k (a, b)    ai  bi 
 i 1

Norm L k
L1 : Manhatan,
L 2 : Euclidea
d
Re-escalado
Fig. Duda
Costo Computacional k-NN




Requiere explorar todo el conjunto de referencia
O(n).
Calculo de la distancia euclídea lineal con d O(nd)
Espacio de almacenamiento de todos los prototipos
O(nd)
Inaplicable si tengo un conjunto de referencia grande
y alta dimensionalidad


Cálculo de distancias parciales (r características).
Árboles de búsqueda donde los prototipos están
unidos en forma selectiva. Calculamos la distancia a
un conjunto de entradas o prototipos raíz.
Estrategia:


Selección de características: para bajar d
Disminuir el conjunto de referencia :



EDICIÓN, CONDENSADO, APRENDIZAJE
ADAPTIVO
Mejorar la eficiencia del cálculo del vecino más
cercano: métodos jerárquicos.
Edición del conjunto de entrenamiento
Objetivo:




Reducir el conjunto de referencia
Mejorar la “calidad” del mismo
Eliminar outliers
Para aumentar tasa de acierto de 1-NN
Edicion de Wilson



Reduce prototipos problemáticos.
Genera dependencia estadística entre los
prototipos retenidos (validación cruzada)
Edicion con la regla k-NN
Edición por particiones



Realizo una partición del conjunto de
entrenamiento.
Aplico la regla k-NN a cada prototipo pero
considerando los vecinos de una partición
particular distinta a la del prototipo.
Desempeño depende:
 Paso de difusión
 Partición inicial
 Regla k-NN
Edición por particiones




Difusión: Ti generado por la partición de S
Clasificación: prototipo usando como referencia otro
conjunto diferente
Edición: elimina el prototipo incorrectamente
clasificado al terminar el proceso de clasificación
Confusión: El conjunto de prototipos resultante
contiene todos los que han sido correctamente
clasificados
Multiedición

Para evitar la dependencia respecto a la partición
inicial se aplica en forma iterativa el método de
edición por particiones. En cada iteración se genera
una nueva partición del conjunto de prototipos que se
mantienen sin editar.

Edición con la regla 1-NN
Conjunto | S| iteraciones | SM|
6884
18
6653
A1
A2
1027
8
734
Figura 33: Número de prototipos
descartados por iteración.
Paro cuando en I iteraciones no hay descartes.
Reducción del coste computacional para
los métodos del vecino más cercano


Objetivo:
 Incrementar eficacia computacional mediante la
selección de un conjunto reducido y representativo
del conjunto de prototipos
Contrapartida:
 Genera ligera pérdida de bondad.
Métodos
Condensado de Hart




Idea:
Un conjunto SC se dice consistente respecto a
otro conjunto S, donde SC S, si S puede
clasificarse correctamente usando los elementos
de SC como referencia.
Selección de prototipos que determinen las
fronteras de decisión
Incremental sin vuelta atrás
Clase
S
SM
SMC
1
3806
458
6
2
7542
267
4
3
5463
492
11
4
2796
34
2
5
8834
490
16
Total
28441
1741
39
Reducción del conjunto de referencia
Clase S
SM
SMC
1
3806 458
6
2
7542
4
3
5463 492
11
4
2796
2
5
8834 490
267
34
Total 28441 1741
16
39
Bondades de las clasificaciones 1-NN
Clase
S
SM
SMC
SC
1
100.00%
100.00%
100.00%
100.00%
2
99.29%
99.29%
98.58%
99.29%
3
30.10%
97.45%
96.43%
29.59%
Bondad71.63%
98.57%
97.96%
71.43%
Condensado de Hart




Requiere un conjunto previamente editado para
asegurar la consistencia del conjunto condensado
No proporciona un conjunto mininal, sólo un
conjunto reducido
Las fronteras de decisión no son tan buenas
Conjunto condensado no es único depende de las
condiciones iniciales.
Métodos de aprendizaje adaptativo


LVQ (Learning Vector Quantization) o
aprendizaje por cuantificación vectorial,
propuestos por Kohonen [E.3]
DSM (Decision Surface Mapping) o construcción
de superficies de decisión, propuesto por Geva y
Sitte [E.2].
Métodos de aprendizaje adaptativo





Fija a priori la cantidad de prototipos del conjunto
de aprendizaje resultante np
El conjunto resultante no tiene porque estar
incluido en el conjunto Inicial.
Heurística sencilla
Rapidez de cálculo
Dificultad para establecer valores adecuados de
los parámetros.
Aprendizaje competitivo y
cuantificación vectorial

Sistema aprende de una secuencia de patrones:
X = X(t) P, t = 1, 2,... 2.
{mi(t) : mi(t) P, i = 1, 2,..., np}

Un conjunto fijo de vectores de referencia o
prototipos modifican durante el aprendizaje.
1.
{mi(0), i = 1, 2,..., np} ha sido inicializado de alguna
forma.
Actualizo mc(t) que mejor empareje con X(t)
2.
Cuantificación Vectorial
mc(t + 1)
mi(t + 1)

mc(t) + (t) [X(t) - mc(t)]
mi(t) para i  c
(t) secuencia monótona decreciente de
coeficientes escalares : 0 < (t) < 1
Función de Ganancia o Razón de
Aprendizaje
Aprendizaje por cuantificación
vectorial (LVQ)
Inicialización :
Determinación de npi :
1. Proporcional a ni.
2. npi sea el mismo para todas las clases.
Seleccionan los prototipos de SLVQ(0):
1. Para cada clase, se procesan secuencialmente sus
prototipos.
2. Se añaden a SLVQ(0) si la clasificación k-NN es
correcta.
Aprendizaje
SLVQ (0), SLVQ (1), ..., SLVQ(r - 1) = SLVQ
Método LVQ-1
mc(t + 1)
mc(t) + (t)[X(t) - mc(t)]
{Premio a mc(t)}
mc(t + 1)
mc(t) -  (t)[X(t) - mc(t)]
{Castigo a mc(t)}
Premio: Si la clase de mc(t), coincide con la X(t),
Castigo: En otro caso, mc(t) se aleja de X(t).
LQV-1



Tiende a mover los prototipos hacia prototipos de
aprendizaje de su misma clase y a alejarlos de los de
otra clase
Recomendable fijar un valor pequeño para (0),
bastante menor que 0.1 (0.02 ó 0.03).
Número de pasos de aprendizaje es suficiente con
presentar un número de prototipos
50 x np < r < 200 x np.

No es tan importante el valor de r si el conjunto inicial
es de buena calidad (previamente editado).
Método LVQ-1 Optimizado (OLVQ-1)
 c (t  1)
 c (t ) 
1   c (t  1)
Positivo si Clase (mc(t) )= Clase (X(t)).
Negativo si Clase (mc(t)) ≠ Clase (X(t)).
cmáx =0.3
30np < r < 50np (usualmente, r = 40np).
Se desestabiliza para valores altos de r
LVQ-2.1
Patrón modifica dos prototipos ( el más cercano de la misma
clase y el más cercano de distinta clase)
mj(t + 1)
mj(t) +  (t)[X(t) - m j(t)]
mi(t + 1)
mi(t) - (t)[X(t) - mi(t)]
{Premio a mj(t)}
{Castigo a mi(t)}
valores bajos para (0)= 0.02
30np < r < 200np
Deben pertenecer a una ventana con ancho entre 0.2 y 03
LVQ-3
Modifica los dos patrones más cercanos:
1.
Si mi y mj son de la distinta clase LVQ2.1
2.
Si mi y mj son de misma clase:
mi(t + 1)
mi(t) +(t)[X(t) - mi(t)]
mj(t + 1)
mj(t) +  (t)[X(t) - mj(t)]
=[0.1, 0.5]
El desempeño es similar, idea: usar métodos con
menos parámetros
Aprendizaje de Superficies de Decisión
•Se castiga al prototipo más cercano (el inductor del error).
•Se premia al prototipo más cercano de la misma clase que Z(t).
mc(t + 1)
mc(t) + α(t)[X(t) - mc(t)]
{Premio}
mw(t + 1)
mw(t) - α(t)[X(t) - mw(t)]
{Castigo}
Tabla 11: Error de clasificación 1NN para diferentes valores de np
np
DSM
LVQ-1
6
7.14
19.00
8
3.82
19.55
9
1.86
14.64
10
0.43
12.34
20
0.43
4.44
24
0.41
3.06
50
0.49
2.51
250
0.79
1.84
Descargar