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 P1 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áxki (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áxki (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