You are on page 1of 19

CVG-UPM

COMPUTER VISION

ndice
Tcnicas clsicas de Reconocimiento de Patrones - Planteamiento del problema - Preprocesamiento de caractersticas - Reconocedores

1
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Aprendizaje: Planteamiento
Encontrar un modelo que predice la salida correcta a partir de salidas anteriores
x1 y

?
x2

x2

2
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Esquema de funcionamiento: aprendizaje supervisado


Concepto aprendizaje supervisado
longitud

Estructura de funcionamiento supervisado x1 . . xn y1 . . ym

?
rea Espacio de caractersticas

yd1 . . ydm

Generalizacin de funciones de Rn Rm
3
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Esquema de funcionamiento: aprendizaje no supervisado


Concepto aprendizaje no supervisado
longitud

Estructura de funcionamiento no supervisada x1 . . xn y1 . . ym

?
rea Espacio de caractersticas

Agrupamiento en clases (clustering)


4
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Dificultades en el aprendizaje
escasez de muestras presencia de ruido

x1

x1

?
x2 x2

5
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Limitaciones del aprendizaje


Aprendizaje basado en la f.d.d. de las muestras posible incorrelacin entre la cantidad de muestras y su importancia en la salida

p(x)

h(x)

6
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

ndice
Tcnicas clsicas de Reconocimiento de Patrones - Planteamiento del problema - Preprocesamiento de caractersticas - Reconocedores

7
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas
Objetivos: Mejorar los resultados del reconocimiento: disminuir las probabilidades de clasificacin errnea o del riesgo. Simplificar el reconocedor, tanto en la fase de aprendizaje como en la de ejecucin Formulacin: Dado un conjunto de caractersticas de entrada al clasificador x (dim n), encontrar una funcin y=F(x) de RnRm, tal que optimice un criterio de calidad Q(y) definido sobre y

8
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Reduccin de dimensionalidad: Seleccin de caractersticas


Supresin de las caractersticas menos relevantes Clculo de nuevas caractersticas mediante combinacin lineal Clculo de nuevas entradas mediante procesamiento no lineal
x2

x1 x2 u2 u1

x2

x1

x1
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Criterios de calidad (1/4)


Directos: minimizacin de la probabilidad de clasificacin errnea o riesgo esperador
- ptimo: tiene en cuenta que un mayor nmero de caractersticas no necesariamente mejora la clasificacin - dependientes del clasificador o suposicin de un clasificador ptimo - resolucin muy compleja

Indirectos: aumento de la separabilidad entre las muestras pertenecientes a cada clase


- ligado al concepto de distancia - la reduccin de la dimensin de las caractersticas siempre empeora el criterio - resolucin ms sencilla
10
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Criterios de calidad (2/4)


x2 x2

Normalizacin de las entradas - Cada componente por separado


xni= (xni-xi )/i

x1

x1

consigue media 0 y =1 Conjuntamente


x = -1/2UT (xn -x)

siendo =diag{1...D}; U=[u1...uD] donde i ui son los valores propios y UT los vectores propios de la matriz de C de covarianzas consigue media 0 y C=I
11
Neural Networks and Pattern Recognition

P. Campoy

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Criterios de calidad (3/4)


Distancias en el espacio de entradas
- Distancia de Manhatan
d = i |xi-mi|

- Distancia euclidea
d = sqrt (i (xi-mi)2) = sqrt ((x-m)T (x-m))

- Distancia de Mahalanovich
d = sqrt ((x-m)T C -1 (x-m))
siendo C = i (xi-m) (xi-m)T la matriz de covarianzas

12
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Criterios de calidad (4/4)


Separabilidad de caractersticas
- Matriz de dispersin de un grupo

Si = j (xj-mi) (xj-mi)T
- Matriz de dispersin intra-grupos

SW = i Si
- Matriz de dispersin inter-grupos

SB = i ni (mi-m) (mi-m)T
- Matriz de dispersin total

ST = j (xj-m) (xj-m)T = SW + SB
13
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Supresin de caractersticas (1/2)


Bsqueda exhaustiva: O(2n) O(n!/(n-m)!m!) Brach and bound: Algoritmos de Dijstra, Floyd, A*

ptimo ahorro computacional basado en el clculo del criterio para conjuntos mayores, teniendo en cuenta el decrecimiento montono de dicho criterio de calidad ejemplo: 2 mejores caractersticas de 5 B
2 3 4 1 3 2 4 3 4

Q(B)<Q(A) A

5 5

4 5

5
14

P. Campoy

Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Supresin de caractersticas (1/2)


Bsqueda por tcnicas heursticas subptimas:
adicin de caractersticas
(1) (2) (3) (4)

eliminacin de caractersticas
(1 2 3 4)

(13)

(23)

(34) (234) (134) (24) (124) (14) (123) (12)

(123)

(234)

15
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Combinacin lineal no supervisada

Anlisis de componentes principales: - Dado un conjunto de N vectores n-dimensionales xi, donde xi= j=1n aij uj = j=1m aij uj + j=m+1n aij uj hallar una base ortonormal uj tal que al seleccionar M vectores de base xi= j=1m aij uj+j=m+1n bj uj minimice E= i=1N (xi-xi)2 Solucin: uj son los vectores propios correspondientes a los mayores valores propios de la matriz de covarianzas y E= i=m+1n i x2
u2 u1 x1
16
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejemplo PCA

original

PCA 25

PCA 5
P. Campoy Neural Networks and Pattern Recognition

PCA 1
17

CVG-UPM

COMPUTER VISION

Ejemplo PCA
Imgenes sintticas creadas sobre el subespacio de dimensin 1

18
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Combinacin lineal no supervisada


Limitaciones del Anlisis de Componentes Principales No supervisin de los datos
x2 u2 x2 u1

No linealidad de la dimensionalidad intrnseca


u

u
x1

x1

19
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejemplo 1
>> load datos_D2_C2.mat >> plot(p.valor(1,1:100),p.valor(2,1:100),'+'); hold all; >> plot(p.valor(1,101:300),p.valor(2,101:300),'+');

p.valor

t.valor

20
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejemplo 1: normalizacin
[D,N]=size(p.valor); [D,Nt]=size(t.valor); clear pn; clear meanp; clear stdp; meanp=mean(p.valor')'; stdp=std(p.valor')'; for i=1:N pn(:,i)=(p.valor(:,i)-meanp)./stdp; end for i=1:Nt tn(:,i)=(t.valor(:,i)-meanp)./stdp; end [pn,meanp,stdp,tn,meant,stdt]=prestd(p.valor,t.valor); [pn,meanp,stdp]=zscore(p.valor); pn=pn;meanp=meanp;
std=std
21
P. Campoy Neural Networks and Pattern Recognition

alternativas:

CVG-UPM

COMPUTER VISION

Ejemplo 1: PCA
[transMatc,Diag]=eig(cov(pn')); ncompca=1; for i=1:ncompca transMat(i,:)=transMatc(:,D+1-i)'; end error=Diag(1,1)/2;

alternativas:
[ptrans,transMat]=prepca(pn,0.2); [transMatc, ptransc] = princomp(pn); transMatc=transMatc;
ptrans=ptransc;

[residual,preconstructed]=pcares(pn,ncompca);
22
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejercicio 1.1
>> load datos_D2_C2 1. Calcular los vectores de coordenadas reducidas de los puntos de test sobre el subespacio definido por el PCA (3 puntos) 2. Calcular los vectores de dimensin completa del apartado anterior y dibujarlos junto con los puntos de test. (4 puntos) 3. Calcular el ECM cometido mediante la aproximacin PCA (3 puntos)

23
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Combinacin lineal supervisada


- y = wT x - idea inicial: maximizar m2-m1= = wT(m2-m1) w (m2-m1)
x2
m1

(1/2)

Discriminante bidimensional
m2

no valida para distribuciones no isotrpicas


x2 m1 m2

x1

discriminante de Fisher: J (w) = (m2-m1)2 / (s12 + s22 ) = = (wTSBw)/(wTSWw) maximizacin: w SW-1 (m2-m1) isotrpico: SW = I
-1
P. Campoy

x1
25

Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Seleccin de caractersticas: Combinacin lineal supervisada (2/2)


Discriminante de Fisher multidimensional: - transformacin: y = WT x - discriminante: J(w) = Traza{sW-1sB} = Traza{(WTSWW)-1(WTSBW)} maximizacin: W vectores propios de SW-1SB W tiene una dimensin mxima de c-1, siendo c el numero de clases isotrpico: SW-1 = I

26
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

ndice
Tcnicas clsicas de Reconocimiento de Patrones - Planteamiento del problema - Preprocesamiento de caractersticas - Reconocedores

27
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Objetivo del Reconocedor:

c1

c2 c3

Divisin el espacio de entrada en regiones asociadas a los patrones


28
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Clasificadores no neuronales
Supervisados:
- Vecino ms cercano - Bayesianos (ajuste de f.d.d.)
x2

x1

c3 c1 c2
2 3

No supervisados
- Agrupamiento basado en distancias
29
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Reconocedores supervisados clsicos: Reconocedores no paramtricos


Clasificador vecino ms cercano

caracterstica 1

caracterstica 2
30
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Reconocedores supervisados clsicos: Reconocedores paramtricos


Minimizacin del error o riesgo funciones discriminantes

1 c3 c1 c2

2
31

P. Campoy

Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

funciones discriminantes de mayor probabilidad

Reconocedor Bayesiano

32
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Reconocedor Bayesiano
funciones discriminantes de menor costo

C (c1 / x ) = 1.1P (c1 / x ) + 1.1P (c 2 / x ) C (c 2 / x ) = 8 P (c1 / x ) + 0.1P (c 2 / x ) ! !


P. Campoy Neural Networks and Pattern Recognition

33

CVG-UPM

COMPUTER VISION

Comandos Matlab de clasificacin


>> nnclass=knnclassify(t.valor', p.valor', p.clase,k); >> [bayclass, err, posterior] = classify(t.valor', p.valor', p.clase, linear,prior); >> no_erroneas_nn=size(find(nnclase~=t.clase),2) >> no_erroneas_bay=size(find(bayclase~=t.clase),2)

34
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejercicio 2.2
Dados los puntos del ejemplo anterior >> load datos_D1_C2.mat a) Calcular la clase del dato t.valor=1 de menor error en la clasificacin, suponiendo las iguales las probabilidades a priori P(clase==1)=P(clase==2) (2 puntos) b) Idem, suponiendo que las probabilidades a priori son proporcionales al numero de muestras de cada clase en los datos de entrenamiento (4 puntos) c) Calcular la clase del dato t.valor=1 de menor coste, suponiendo que la matriz de costes es: (4 puntos) C (c1/ c1) = 1.1 C (c1/ c 2) = 1.1

C (c 2 / c1) = 8
P. Campoy

C (c 2 / c 2) = 0.1
35

Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Ejercicio 2.3
a) Dados los datos del ejemplo 2.1 >> load datos_D2_C2.mat Calcular y analizar los errores de clasificacin de p.valor y tambin de t.valor, cuando se usan los datos de p.valor como datos de entrenamiento y el clasificador ms cercano (2,5 puntos) idem usando el clasificador bayesiano (2,5 puntos) Calcular y analizar los errores de clasificacin de t.valor usando los dos tipos de clasificadores mencionados (2,5 puntos) Calcular y analizar los errores de clasificacin de t.valor cuando se usa el clasificador bayesiano con los siguientes valores de probabiliades a priori: [1 0.1],[1 2] y[1 10] (2,5 puntos)

b) c) d)

37
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Clasificadores no neuronales
Supervisados:
- Vecino ms cercano - Bayesianos (ajuste de f.d.d.)
x2

x1

c3 c1 c2
2 3

No supervisados
- Agrupamiento basado en distancias
40
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Reconocedores no supervisados: Algoritmos de agrupamiento


Objetivo: minimizar SW y maximizar SB
Agrupamiento dinmico (ISODATA o k-means)
- Asignar cada vector de muestra al grupo de media ms cercana, hasta que las nuevas medias recalculadas no varen > class=kmeans(p,n_classes)

Agrupamiento jerrquico
-Asignar un grupo para cada muestra y unir los dos grupos ms cercanos hasta que se obtenga el nmero de grupos deseados
41
P. Campoy Neural Networks and Pattern Recognition

CVG-UPM

COMPUTER VISION

Clasificadores no supervisados
Grupos redondeados en el espacio de caractersticas

42
P. Campoy Neural Networks and Pattern Recognition

You might also like