You are on page 1of 7

RED NEURONAL DE ARQUITECTURA

PARAMTRICA EN
RECONOCIMIENTO DE ROSTROS,
POR MEDIO DE MATLAB
Abstract: Biometrics is the science dedicated to the identification of individuals from an anatomical
characteristic or feature of their behavior. Seeks to obtain, classify and use information from these features
(anatomical or behavioral) to recognize and identify people, restrict access to sites not allowed, control
schedules in companies, authentication information, and many other applications. For this it uses electronic
equipment to develop biometric measurements, and algorithms to scan, sort and store the information to use
later.

An anatomical feature has the quality to be relatively stable over time, such as a fingerprint, hand silhouette,
patterns of the retina or iris.

A behavioral trait is less stable, it depends on the psychological disposition of the person, for example the
firm.

Not every anatomical feature can be used successfully by a biometric system. For this to happen must meet
the following characteristics: universality, uniqueness, permanence and Quantification.
AUTORES:

ASESOR:
Dino Enriquez Fuentes, ice_nirvana@hotmail.com

UNI VERSI DAD NACI ONAL DEL ALTI PLANO.

Introduccion:

La biometra es la ciencia que se dedica a la identificacin de individuos a partir de una caracterstica
anatmica o un rasgo de su comportamiento. Busca obtener, clasificar y utilizar la informacin de estas
caractersticas (anatmicas o de comportamiento) para reconocer e identificar a las personas, restringir el
acceso a sitios no permitidos, controlar horarios en empresas, autenticar informacin, y muchas otras
aplicaciones. Para esto utiliza equipos electrnicos que desarrollan las mediciones biomtricas, y algoritmos
que permiten digitalizar, clasificar y almacenar la informacin para poder utilizarla despus.

Una caracterstica anatmica tiene la cualidad de ser relativamente estable en el tiempo, tal como una huella
dactilar, la silueta de la mano, patrones de la retina o el iris.

Un rasgo del comportamiento es menos estable, pues depende de la disposicin psicolgica de la persona, por
ejemplo la firma.

Para realizar un algoritmo que clasifique las caractrisiticas biometricas anteriormente descritas se necesitaria
un procedimiento conmunmente mas engorrosoengorroso por lo que el siguiente proyecto plantea hacer uso
directo de redes neuronales de retropropagacin,(esto es sin preproceso de extraccin de caractersticas). Este
enfoque es poco usual, hay razones tericas acerca de la desproporcin entre informacin muestral y nmero
de ejemplares que indican que en un espacio de tan poca densidad es imposible obtener resultados
satisfactorios. Sin embargo, un razonamiento esencialmente intuitivo lleva a plantear un diseo novedoso de
arquitectura de red que logra excelentes resultados. En efecto, la red implementada en Matlab en un PC
Pentium D, es entrenada con 5 tomas distintas pertenecientes a 40 individuos en aproximadamente 1.30
minutos. La prueba, con otro set de 5 fotos de los mismos 40 individuos, entrega una precisin de 100% para
la identificacin.







Marco Teorico:
Planteamiento del Problema.
Se plantea implementar una red neuronal de retropropagacin para reconocer rostros. En retrospectiva, se
pretendi desarrollar un trabajo emprico para exponer las debilidades de este tipo de red neuronal y mejorar
progresivamente su desempeo mediante tcnicas especializadas de preproceso y compactacin.
Los datos estn dados por un set de 400 fotos, 10 fotos de cada uno de 40 individuos, que aparecen con
archivos individuales 1.pgm, 2.pgm, ,,,10.pgm situados en 40 directorios de nombre s1, s2, ,,,s40. Cada
archivo .pgm (portable grey format) est formado por un encabezado de 14 bytes y la imagen en 256 niveles
de gris como una matriz de 92x112 bytes. Como se ver ms adelante, se utiliz la nomenclatura sistemtica
que presentan los archivos para codificar en forma sencilla las instrucciones para leerlos.
La base de datos se obtuvo de la empresa (ORL Face Database) fue elaborada en Olivetti Research Lab,
Cambridge con imgenes tomadas sobre un fondo homogneo obscuro como se observa en la figura 1. La
rotacin mxima es de 20 y la variacin mxima de escala es de 10%. La diversidad tambin involucra tomas
con y sin anteojos y cambios en el peinado.

Figura 1 se ven las fotos que se toman del individuo # 1
Como datos de entrenamiento se utilizaron las primeras 5 fotos de cada uno de los individuos, la mitad de las
imgenes. La prueba consisti en presentar a la red para identificacin la otra mitad, las 5 fotos restantes de
cada uno de los individuos.

Esta tarea, eventualmente ejecutada con nuestra maquinaria biolgica, no es trivial. En efecto, corresponde
aproximadamente a observar la audiencia de un curso numeroso durante un tiempo equivalente al necesario
para tener 5 tomas y luego reconocer a cada uno de los integrantes, incorporando algunas variaciones.
Desde el punto de vista del espacio de datos, cada muestra (o grupo de 5 fotos de un individuo) corresponde a
un cdigo con un nmero desproporcionadamente grande de posibilidades (5x92x112x256=13189120). En
consecuencia, las expectativas para plantear una red de retropropagacin para asociar unvocamente a la
muestra con un individuo no son promisorias; es difcil que la red sobreviva a la etapa de entrenamiento.
Alternativamente, se puede dotar a la red de un nmero suficientemente grande de pesos de modo que
memorice el espacio muestral y logre as completar el entrenamiento. En este caso se llega a una situacin
conocida como sobre-entrenamiento; la red entrenada carece de capacidad de generalizacin, al procesar el
espacio de prueba proporciona respuestas errneas.
El modelo.
El conocer un rostro, actividad imprescindible para re-conocer, equivale a asignar una identidad nica a un
nmero relativamente pequeo de imgenes prototpicas de una persona. La identidad misma es
probablemente un agregado complejo de vivencias y evocaciones; en este trabajo se le asignar slo la
caracterstica de ser nica. A su vez, el set de prototipos se almacena de forma tal que sea claramente
separable. Parece ser que los recursos utilizados para almacenamiento son considerables; la capacidad de
reconocer rostros es limitada en cuanto a nmero. En consecuencia, reconocer un rostro puede asimilarse a un
proceso de bsqueda en el espacio de almacenamiento que, de ser exitoso, rescata con mayor o menor
seguridad la identidad (y atributos vivenciales) asociada durante el conocer.



Para modelar el proceso hipottico antes enunciado, se postula una caracterstica cuantitativa que tiene dos
parmetros:
k correspondiente al nmero de individuos, y,
m correspondiente al nmero de fotos de cada uno de ellos.
Llevando estas consideraciones al mbito de redes neuronales y al contexto del trabajo a efectuar, se plantea
una arquitectura con dos capas ocultas. La capa de input tiene 10304 nodos, la primera capa oculta tiene:
2*(k+2).(1)
neuronas, la segunda
k+m..(2)
neuronas y la de output k neuronas. El razonamiento de soporte para esta eleccin (salvo la condicin de que
la capa de output debe ser de dimensin k) es esencialmente intuitivo y se expone a continuacin.
Para reconocer una imagen que representa un rostro ser necesario mapearla en el espacio de rostros, llevar
a cada uno de sus elementos a un espacio instrumental para el reconocimiento de rostros. En efecto, el
contexto perceptual de esta actividad se siente distinto al que se utiliza para reconocer objetos en general,
una hiptesis derivada de la relevancia evolutiva del reconocimiento de rostros en la estructura gregaria de
nuestra especie. Ahora bien, en este espacio debe haber lugar para ms de una versin del rostro para poder
reconocer expresiones y variaciones; esto explica k+2 que entrega un mnimo de tres prototipos.
Adicionalmente, el nmero de ejemplares almacenable debe ser superior a k; en realidad una funcin
montamente creciente con k, la ms sencilla, en concordancia con la navaja de Occam. La segunda capa
oculta debe ser capaz de transmitir una sntesis del espacio de rostros con una fidelidad suficiente para una
actividad de asociacin binaria (en realidad, bastante fuzzy) de identificacin ejecutada por la capa de
output. En consecuencia, se necesita al menos una neurona por individuo y una por variante; un total de k+m.

Las funciones de activacin de las capas ocultas es tanh, concordante con la naturaleza positiva o negativa de
la seal sinptica (reforzamiento o inhibicin); la de la capa de output debe llevar a un conjunto de
alternativas s/no representables en forma compacta por una sigmoide en el intervalo [0,1]. En efecto, la
instrospeccin de nuestra actividad de identificar rostros la hace aparecer como difusa, existe un continuo de
la fidelidad de la identificacin que se manifiesta en expresiones en este contexto tales como se parece...,
no estoy seguro, pero ..., lo he visto en alguna parte ..., podra jurar que es ..., etc.
En consecuencia con los principios expuestos, se especific una red con dos capas ocultas para trabajar con
datos que se presentan como un set de k vectores de 10304 componentes que deben asociarse con una ficha
binaria de identidad de k bits construida de modo que el AND sea nulo para dos individuos diferentes. Esta
forma de asociacin permite un interesante anlisis de resultados. En efecto, proporciona una medida del nivel
de confusin entre los ejemplares, circunstancia anloga a la que se presenta en el proceso de
reconocimiento de rostros para los seres humanos, dado que todos los rostros presentan caractersticas
comunes tales como una boca, dos ojos, dos orejas, etc.
Para la aplicacin misma se procesan ejemplares, tanto para el input como para probar la red entrenada. Los
datos fueron normalizados, esto es, fueron llevados a una media nula y varianza unitaria, transformacin
esencialmente reversible que entrega un mapa biyectivo ms compacto aprovechando la circunstancia de que
cada componente de input puede tener slo 256 valores distintos. En efecto, se construye una representacin
analgica en un intervalo continuo [-4,+4] para estos valores, acercndose as al rango de la funcin tanh
utilizada para transmitir la seal de input. A continuacin se transcribe el script de Matlab con el cual se hizo
el trabajo.





k=40;
m=5; % k individuos, m fotos de cada uno de ellos
for n=1:m;
for i =1:k;
the_file=['D:\face\face_files\s' int2str(i) '\' int2str(n) '.pgm'];
foto=fopen(the_file,'r');
[B,header]=fread(foto,14,'char=>char');
% el encabezado no interesa, hay que saltarlo
[p(:,k*(n-1)+i),pix]=fread(foto,10304,'int8=>double');
% la imagen se guarda como vector columna de la matriz de datos p
j=fclose(foto);
end
end
% listo los datos, m*k fotos como vectores columna de la matriz de datos p
% los normalizamos
[pn,meanp,stdp]=prestd(p);
% ahora el output
t=eye(k);
for n=1:m-1;
t=[t,eye(k)];
end
% el output 't' se compone de 'm' matrices eye(k)
% lista la ficha binaria de identidad, el AND es nulo
net=newff(minmax(pn),[2*(k+2),k+m,k],{'tansig','tansig','logsig'},'trainrp');
net.trainParam.show=10;
net.trainParam.goal=0.001;
% ahora a entrenar...
[net,tr]=train(net,pn,t);
% ahora se ve como quedamos, probamos el input
for i=1:m*k
a(:,i)=sim(net,pn(:,i));
end
% si esta matriz se parece a [eye(k),eye(k)...] estamos bien
% ahora vamos a probar otro set de 'm' fotos de los mismos individuos...
for n=m+1:m+m;
for i=1:k;
the_file=['D:\face\face_files\s' int2str(i) '\' int2str(n) '.pgm'];
foto=fopen(the_file,'r');
[B,header]=fread(foto,14,'char=>char');
[p(:,k*(n-1)+i),pix]=fread(foto,10304,'int8=>double');
j=fclose(foto);
end
end
[pn,meanp,stdp]=prestd(p);
% listos los datos de prueba
for i=1:m*k
b(:,i)=sim(net,pn(:,i));
end
b-a
% los vectores columna no nulos de esta matriz 'miden' la fidelidad de la identificacion
Los resultados.
Entrenamiento.
Puede observarse que el entrenamiento tom 70 pocas, logrndose la meta prefijada de error. El
entrenamiento utiliz la variante resilient backpropagation en modo batch. Esta variante observa los
cambios de signo en el gradiente, intensificando el descenso en forma monotnica en la misma direccin si es
que el signo no cambi. Si hay cambio, se vuelve a una tasa de aprendizaje pequea. El mtodo tiene muy
buena convergencia; BP tradicional, BP con momentum, BP con tasa de aprendizaje variable y BP con tasa y
momentum variables no lograron la meta en 100 pocas, en realidad con evolucin plana del error a partir de
la poca 40.
Los del proceso de entrenamiento

TRAINRP, Epoch 0/100, MSE 0.371922/0.001, Gradient 0.389574/1e-006
TRAINRP, Epoch 10/100, MSE 0.0183699/0.001, Gradient 0.0120647/1e-006
TRAINRP, Epoch 20/100, MSE 0.00686645/0.001, Gradient 0.00241339/1e-006
TRAINRP, Epoch 30/100, MSE 0.00319294/0.001, Gradient 0.00116063/1e-006
TRAINRP, Epoch 40/100, MSE 0.00210703/0.001, Gradient 0.00165312/1e-006
TRAINRP, Epoch 50/100, MSE 0.00152078/0.001, Gradient 6.16599e-005/1e-006
TRAINRP, Epoch 60/100, MSE 0.0012267/0.001, Gradient 0.000784313/1e-006
TRAINRP, Epoch 70/100, MSE 0.000993673/0.001, Gradient 0.000253889/1e-006
TRAINRP, Performance goal met.

El proceso, hasta la etapa de fin de entrenamiento, tom algo de 1:30. Incluido en este tiempo, adicionalmente
al entrenamiento mismo, est el abrir, leer y cerrar 200 archivos y el preproceso de normalizacin.
Prueba.
Se simul la red con los datos de entrenamiento, el resultado se almacen en la matriz a. A continuacin se
ley y normaliz la informacin correspondiente a las fotos 5 a 10 de cada uno de los 40 individuos,
procedindose a entregarla a la red para identificacin. El resultado se almacen en la matriz b. Finalmente se
calcul b-a, matriz que mide el grado de confusin en la identificacin. Esta fase del proceso tom cerca de
dos minutos.
Anlisis de los resultados.
En la Figura 2 puede verse el despliegue grfico de la matriz b-a. Se observa que la identificacin es casi
perfecta. Los escasos spikes que aparecen, con un valor mximo de 0.5, indican algn grado de confusin.
Sin embargo, para todas las fotos el valor de respuesta para el bit asociado a su ficha de identificacin es
cercano a 1.

Figura 2.- Resultados de la prueba, despliegue de la matriz b-a.
Conclusiones.
Los principios de diseo utilizados para especificar la red de retropropagacin dieron excelentes resultados en
reconocimiento de rostros, tanto en tiempo de proceso como en fidelidad de identificacin. En efecto, los
datos presentados estn contenidos en ms de 4 MB y la tarea que se entrega a los ms de 800,000 pesos de la
red es aprender como estn organizados. El sobre-aprendizaje, asimilable a privilegiar la memorizacin de los
valores de los datos, no se produjo; la evidencia est dada por el procedimiento de prueba que involucr
imgenes distintas a las del entrenamiento. En efecto, los resultados muestran que no slo se captur la
configuracin particular de cada rostro sino que con la presentacin de otro ejemplar se asimil caractersticas
generales que permitieron asociar la identidad correcta durante la prueba.
La normalizacin de los datos prob ser un mtodo muy eficiente de compactacin sin el cual la
identificacin no funciona. En efecto, sin este procedimiento la convergencia no se alcanza en menos de 100
pocas
Este resultado muestra que es imprescindible preprocesar los datos a la vez que el tipo de preproceso no
necesita ser muy complicado. En efecto, la extraccin de caractersticas relevantes es efectuada por la red de
retropropagacin en forma satisfactoria sin necesidad de tener que incorporar hiptesis acerca de la
jerarquizacin de las mismas. Se reencuentra as una hiptesis de trabajo referente a un mecanismo plausible
de percepcin conducente al reconocimiento de rostros en una escala de tiempo que sugiere un proceso muy
eficiente de compresin de datos. En efecto, considerando el ancho de banda del hardware biolgico
involucrado, el flujo neto de seales debe ser bastante reducido. Adicionalmente, el algoritmo de compresin
nos es transparente; debe ser relativamente simple, probablemente subordinado al proceso de identificacin de
modo de modular la captura y compresin de acuerdo al avance de la identificacin, en forma similar a la
retropropagacin del error. Se concluye que el canal de comunicacin entre la parte cognoscitiva y la parte
perceptual debe ser bidireccional; la percepcin no puede ser pasiva.

Anexos
Para este punto pondremos las matrices a y be tomadas en el entrenamiento de la red neuronal.
PARTE DE LA MATRIZ A

PARTE DE LA MATRIZ B

You might also like