Clasificadores Lineales - Universidad de La Laguna

Anuncio
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Introducción
•
Existen dos aproximaciones para resolver el problema de
clasificación:
– Aproximación Generativa (vista en el Tema 3)
Basada en:
› Problema Práctico: Estimar p(x|w)
– Solución: Obtener un conjunto de entrenamiento y utilizar EMV,
MAP, k-vecinos...
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Modelar p(x,w)=p(x| w)P(w)
– p(x| w) es la distribución condicional de las características en las
clase.
– P(w) es la probabilidad a priori de la clase
› Aplicar la regla de clasificación óptima:
– Dado un x, su clase ŵ se calcula a partir de:
ŵ =argmaxw p(x,w) , o de forma equivalente como
ŵ =argmaxw P(w|x) (probabilidad a posteriori)
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Introducción:Aproximación Discriminativa
•
•
Observación:
– Se pueden encontrar problemas de clasificación complejos para los que
aparecen funciones discriminantes simples.
Ejemplo:
– Sabemos que en el caso gausiano con matrices de covarianzas iguales:
p(x| wi)=N(µi ,Σ ), las funciones discriminantes son lineales.
› Si tenemos d características y 2 clases tenemos que calcular 2(d+1) parámetros.
– En realidad, para clasificar nos interesa la diferencia de las dos funciones
discriminantes (para ver cual es la mayor).
› La diferencia vuelve a ser lineal pero depende sólo de (d+1) parámetros.
› Dos vectores de medias:
2d parámetros
› Una matriz de covarianzas: (d2+d)/2 parámetros
› Total:
(d2+5d)/2 parámetros
y después construir la diferencia de las funciones discriminantes.
– Es decir, para resolver el problema de determinar d+1 parámetros tenemos
como paso intermedio otro de determinar (d2+5d)/2 parámetros.
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
– Para resolver el problema con la aproximación generativa hay que estimar
primero:
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Aproximación Discriminativa
•
Idea:
– Construir las funciones discriminantes estimando directamente los
parámetros que las definen.
"Si se posee una cantidad de información limitada para la resolución de un
problema, intenta resolver el problema directamente y nunca intentes
resolver un problema más general como paso intermedio. Es posible que la
información disponible sea suficiente para la solución directa pero
insuficiente para resolver un problema intermedio más general"
V. Vapnik, The nature of statistical learning theory (1995)
Ventajas:
– No se necesita modelar la función de densidad condicional de las
características
› Simplicidad: Algunas funciones de densidad tienen una gran cantidad
de parámetros
› Robustez: Muchas funciones de densidad distintas dan lugar al mismo
clasificador lineal
•
Desventajas:
– No se puede obtener un modelo de como se generaron los datos
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
•
•
•
El caso más simple de construcción de funciones discriminantes ocurre
cuando éstas son lineales
– Este es el caso que estudiaremos en este Tema
Llamaremos:
– Función discriminante lineal (FDL) a toda función discriminante que para
una clase wi es lineal. Por tanto tiene la forma: gi(x)= wiTx+wi0.
Clasificación con dos clases
– En este caso se tienen dos FDL:
g1(x)=w1Tx+w10 para la clase w1
g2(x)=w2Tx+w20 para la clase w2.
– Para clasificar necesitamos saber cual es mayor ( o ver si su diferencia es
positiva o negativa).
– Entonces si definimos su diferencia como:
g(x)= g1(x)- g2(x)= (w1 -w2)Tx+ (w10 - w20 ) =wTx+w0
w= (w1 -w2), w0= w10 - w20
– La regla de decisión es: Elegir w1 si g(x) ≥ 0 ;
Elegir w2 si g(x) ≤0
– Llamaremos vector de pesos al vector w y término independiente al
coeficiente w0
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
El caso lineal
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Interpretación Geométrica de la Regla de
Decisión: 2 Clases
•
Interpretación geométrica de g(x)= wTx+w0
– El vector w es perpendicular a
la frontera de decisión
x2
– La distancia entre el origen y
la frontera de decisión depende
de w0:
| w0 |
dorigen =
w Tw
g(x)=0
w
g(x)>0
x
g(x)<0
dorigen
dgen
x1
dgen =
Interpretación geométrica
| g( x ) |
w Tw
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
– En general, la distancia de un
punto x a la frontera de decisión es:
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Separabilidad Lineal y Clasificación
Separabilidad Lineal
– Dos conjuntos de puntos son linealmente separables si existe una
función lineal que los separa
Conjunto Linealmente Separable
•
Conjunto no Linealmente Separable
Un clasificador lineal no puede clasificar sin errores un conjunto
no linealmente separable (al ser lineal su frontera de decisión).
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
FDL: Varias clases
•
En este caso se tiene:
– Una FDL gi(x)= wiTx+wi0 para cada clase wi .
– Entonces la regla de decisión es:
Elegir wi si gi(x)≥ gj(x) para todo j≠i
Este esquema produce regiones de decisión:
– Convexas y simplemente conexas: dados dos puntos de en la
región el segmento que los une está en la región.
g2(x)
g1(x)
g3(x)
R2
R2
R1
R1
R2
R1
R3
R3
Regiones de decisión para las FDL
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
R5
R4
R3
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Representación Gráfica de las FDL
•
•
Notación
– A la hora de trabajar con la función discriminante gi(x)= wiTx+wi0 es
a veces lioso tener por un lado el vector de pesos wi y el término
independiente wi0.
– Puesto que:
gi(x)= wiTx+wi0 = wi1 x1 + wi2 x2 +...+ wid xd + wi0 1=
(wi1 , wi2 , ... , wid wi0 ) (x1, x2, ,xd ,1)T
introduciremos wi0 en el vector de pesos añadiendo una
característica ficticia que toma siempre el valor 1.
Representación Gráfica
g
g1
gc
w0
w1
wd
w10 w11 wc0
...
x0=1
x1
wc1
w1d
wcd
...
xd
x0=1
FDL: Representación gráfica
x1
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
xd
Fernando Pérez Nava
...
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
•
•
•
•
Clasificación para dos clases
– Se tiene: g(x)=wTx y la regla de decisión es:
Elegir w1 si g(x) ≥ 0
Elegir w2 si g(x) ≤0
Problema:
– ¿Cómo determinar w?
Observación:
– Al menos nos gustaría que g(x) ≥ 0 para los elementos del
conjunto de entrenamiento que pertenecen a w1 (H1) y g(x) ≤0 en
los que pertenecen a w2 (H2):
Idea:
– Intentaremos que g(x) valga +1 para los elementos de H1 y -1
para los de H2 (de esta forma estarán bien clasificados).
– Para ello se penalizan las diferencias entre los valores deseados
(+1 ó –1) para cada elemento xi de conjunto de entrenamiento y
los valores obtenidos con la función discriminante g(xi).
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
Clasificación mediante Regresión Lineal (1)
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Clasificación mediante Regresión Lineal (2)
•
Notación
– Para tener presente la dependencia de la función discriminante del
vector de pesos escribiremos g(x;w)=wTx
Función de Penalización
– Se penaliza la diferencia entre los valores deseados yi y los
obtenidos g(xi;w) mediante:
n
2
EECM (w ) = ∑ (y i − g ( x i ;w )) ,
i =1
•
+ 1 x i ∈ H1
yi = 
− 1 x i ∈ H 2
Este es un problema de regresión lineal
– El vector óptimo de pesos es el que hace mínima la función EECM
– Hay dos métodos para minimizar la función:
› Método Analítico
› Método Iterativo
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Método Analítico
Cálculo del vector óptimo por el método analítico.
∂EECM (w )
– Se basa en resolver el sistema de ecuaciones lineales:
=0
∂w
– Definiendo:
 y1 
 
y 
y =  2 ,
M
 
y 
 n
•
 xi 1 
 
x 
x i =  i 2 ,
M
 
x 
 id 
 x11 x12

x 22
x
X =  21
M
M

x
 n1 xn 2
L x1d 

L x 2d 
L M 

L x nd 
– La solución óptima es: wˆ = ( X T X )−1 X TY = X −Y
donde X – recibe el nombre de pseudoinversa de X
Problemas del método analítico
– La matriz X TX puede no tener inversa.
– Es necesario realizar operaciones con matrices de gran tamaño.
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Optimización iterativa
•
•
Muchos problemas de optimización (cálculo del máximo o mínimo
de una función f(x)) carecen de una solución analítica
Observación:
– El gradiente de una función en un punto x indica la dirección de
máximo crecimiento de la función en ese punto.
Función bidimensional y gradiente
Idea
– Dado un valor inicial x , calcular el gradiente en ese punto ∇f(x) y
avanzar un poco en esa dirección (si busco maximizar) o en la
dirección contraria (si busco minimizar).
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
El Método del Gradiente
•
•
•
Es uno de los métodos de optimización iterativa más simples (y
lentos)
Requiere que la función f(x) a optimizar sea diferenciable.
Procedimiento (Minimización)
– Se define un proceso iterativo que modifica una aproximación
inicial x(0) mediante la regla:
x(r+1)=x(r) - ρr ∇f(x(r)).
– Regla de Parada:
– La elección del parámetro de aprendizaje ρr es crítica. Un valor
muy pequeño hace la convergencia muy lenta y uno muy grande
provoca oscilaciones alrededor del mínimo.
– Cuando el algoritmo converge lo hace a un punto para el que
∇f(x)=0. Este es un mínimo local o un punto de inflexión
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› La distancia entre el nuevo punto y el anterior está por debajo de un
umbral
› Se alcanza el máximo número de iteraciones.
› El módulo del gradiente está por debajo de un umbral.
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Método iterativo para Regresión Lineal
•
•
Se basa en aplicar el método del gradiente a la función EECM(w)
El esquema iterativo basado en el método del gradiente es:
– Paso 0
Elegir un valor inicial w(0)
Hacer r=0
– Paso 1
› Calcular w(r+1)=w(r) +ρr
n
∑ δk xk
δk= (yk-g(xk; w(r)))
k =1
(δk es el error que se comente con la muestra xk)
› Incrementar r
– Paso 2
•
– A este esquema se le llama por Entrenamiento por época.
En cada iteración se utiliza todo el conjunto de entrenamiento H
Entrenamiento por muestra
– En cada paso r se utiliza la muestra xk(r) de H
w(r+1)=w(r) +ρr δk(r) xk(r)
δk(r)= (yk(r)-g(xk(r);w(r))))
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Si se cumple la regla de parada finalizar. En otro caso ir al Paso 1
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Clasificación mediante Regresión Lineal
con más de dos clases
•
•
Cuando hay más de dos clases se tiene que estimar un vector de
pesos por clase
Estimación de los vectores de pesos:
– Se resuelve un problema de regresión lineal por clase.
•
Clasificación:
– Se calcula el máximo de las funciones discriminantes. La clase
para la que se obtiene el máximo es la asignada al patrón que se
quiere clasificar
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Dada una clase wi
– El valor de yk para un elemento del conjunto de entrenamiento xk
que pertenece a wi es +1. Si no pertenece a wi es –1.
– Entonces se aplica el método analítico o el iterativo y se obtiene el
vector de pesos de esa clase
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Clasificación por Regresión Lineal:
Ejemplo
•
Distribuciones verdaderas:
0  1 0

– p(x | w1 ,θ1 )~ N   , 
 0 0 1  

  
 1  1 0  
 
, p(x | w2 ,θ2 )~ N   , 
 1  0 1  
– P(w1)=0.5, P(w2)=0.5
•
Clasificación:
– Conjunto de testeo:
4
3
› 50 muestras por clase
– Conjunto de entrenamiento:
› 50 muestras por clase
– Error de clasificación estimado:
2
1
0
› 0.36
› 0.23
-1
-2
-2
-1
0
1
2
3
Ejemplo de clasificación tras estimación por regresión lineal
Circulos: muestras de la clase 1
Aspas: muestras de la clase 2
Linea negra: Frontera de decisión a partir de la estimación
Linea roja: Frontera de decisión bayesiana
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
–
Fernando Pérez Nava
– Error bayesiano:
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Resultados
•
En general los resultados de la regresión lineal para clasificación
no son muy buenos.
– La fundamentación no es sólida.
+1
+1
0
0
-1
-1
Regresión Lineal: Problemas con la Robustez
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Se intenta predecir una variable discreta (que toma los valores +1 y –1)
mediante una continua (función lineal)
› Los valores +1 y –1 son arbitrarios
› Los resultados son muy sensibles a la aparición de datos “extraños”
(por ejemplo como resultados de errores al recolectar el conjunto de
entrenamiento)
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
La visión Bayesiana
•
El método generativo:
› Se modela p(x,wi) a través de la descomposición p(x,wi)=p(x| wi)P(wi)
– En el caso paramétrico p(x| wi) depende de un vector de
parámetros θi, es decir, tenemos p(x| wi,θi )
– Se obtiene θ^i , que estima θi
^
^
– Se halla la clase óptima: w=argmax
w p(x| wi,θi )
Interpretación bayesiana de la aproximación discriminativa:
› Se modela p(x,w) a través de la descomposición:
– p(x,wi)=p(wi|x)P(x)
– Se asume que P(wi|x)depende de un vector de parámetros θi, es
decir, tenemos P(wi|x ,θi )
^
– Se obtiene θi , que estima θi
– Hallar la clase óptima (para la que no hace falta conocer P(x)):
^
w=argmax
w P(w|x)
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Regresión Logística: 2 clases
•
•
Modelo:
P( w1 | x ) =
1
, g( x ) = w T x
1 + exp(-g ( x ))
(Integrando w 0 en w ), P(ω2|x)=1-P(ω1|x)
La función logística:
– Tras calcular la FDL g(x) el resultado se pasa por la función logística τ(x) :
τ (x) =
1
1 + exp(− x)
-10
0
10
Función logística
Representación gráfica:
w0
w1
wd
...
x0=1
•
x1
xd
Frontera de decisión:
– Sigue siendo g(x)=0 (lineal) debido a que la función logística es monótona
creciente.
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
•
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Regresión Logística: Estimación
•
Estimación EMV
– Tenemos un conjunto de entrenamiento:
H={ (x1,y1), (x2,y2), ... (xn,yn)},
yi = 1 si xi ∈ w1, yi = -1 si xi ∈ w2
– Construimos la función de verosimilitud:
n
L = p(H | w ) = ∏ P( y k | x k ,w )
k =1
y la optimizamos de forma iterativa:
n
w(r+1)=w(r) +ρr
∑δk xk ,
k =1
Fernando Pérez Nava
δk= ( 1 - τ (yi g(xk ; w(r)T) ) yi
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Clasificación mediante Regresión Logística
con más de dos clases
•
Modelo:
P( wi | x ) =
exp(g i ( x ))
c
∑ exp(g i ( x ))
, g i ( x ) = w iT x
j =1
•
Estimación del vector de pesos:
– Se resuelve un problema de regresión logística por clase.
•
– Como resultado obtengo una estimación de la probabilidad a
posteriori de cada clase
Clasificación
– Se calcula el máximo de las estimaciones de las probabilidades a
posteriori. La clase para la que se obtiene el máximo es la
asignada al patrón que se quiere clasificar
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Dada una clase wi
– El valor de yk para un elemento del conjunto de entrenamiento xk
que pertenece a wi es +1. Si no pertenece a wi es –1.
– Entonces se aplica EMV
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
Limitaciones de los Clasificadores Lineales
•
•
Hay problemas de clasificación muy sencillos que no se pueden
resolver con un clasificador lineal
El problema del XOR
– Elementos de la primera clase (clase 1) (0,0) y (1,1)
– Elementos de la segunda clase (clase 0) (0,1) y (1,0)
1
0
1
El Problema del XOR
– No hay ningún clasificador lineal que no cometa errores al clasificar
este conjunto.
– Por tanto, es necesario buscar clasificadores más complejos.
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
0
Reconocimiento de Patrones
Tema 4: Clasificadores Lineales
En Resumen...
•
•
Se ha presentado una nueva aproximación al problema de
clasificación: la aproximación discriminativa
– Se basa en calcular directamente las funciones discriminantes
– Tiene las ventajas de mayor simplicidad y robustez
– La principal desventaja es que no se obtiene un modelo de la
generación de los datos
Se han presentado dos métodos para la aproximación
discriminativa en el caso más simple: el lineal
– Regresión Lineal
› Ventajas: Método Sencillo
› Desventajas: Falta de fundamentación. No muy buenos resultados
– Regresión Logística
•
Hay problemas simples para los que los clasificadores lineales
son inapropiados.
– Es necesario por tanto buscar clasificadores más complejos (no
lineales)
Escuela Técnica Superior de Ingeniería Informática. Universidad de La Laguna
Fernando Pérez Nava
› Ventajas: Se estiman las probabilidades a posteriori de las clases
› Desventajas. Método ligeramente más complejo.
Descargar