Você está na página 1de 11

POLITECNICO GRANCOLOMBIANO

MAESTRIA DE INGENIERIA DE SISTEMAS


FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

INFORMACIN BSICA
NOMBRE DE LA PRCTICA:
Reduccin de dimensionalidad mediante funciones de
MATLAB.
ASIGNATURA:
Reconocimiento de patrones
TEMA DE LA PRCTICA
Extraccin de caractersticas
CONTENIDO DE LA GUA

PRCTICA No: 2

OBJETIVOS.

Entender de manera prctica la utilizacin la reduccin de dimencionalidad como


herramienta til de la seleccin de caractersticas.
Utilizar MatLab como herramienta para realizar reduccin de dimencionalidad.
Comprender el mtodo de extraccin de caractersticas con anlisis de componentes
principales (PCA).

INTRODUCCIN.
Como se ha visto anteriormente en la asignatura, la reduccin de la dimensionalidad es
deseable por dos factores principales, uno es el costo computacional al tener mayor cantidad
de variables, y el otro es el de la exactitud de la clasificacin.
La reduccin de la dimensionalidad se clasifica en dos tpicos: extraccin de caractersticas
y seleccin de caractersticas. El propsito de este taller es ahondar en la extraccin de
caractersticas estudiando el mtodo Anlisis de Componentes Principales PCA (Por sus
siglas en ingles) tambin llamado expansin Karhunen-Loeve.

MARCO TEORICO
El anlisis de componentes principales tiene como finalidad eliminar variables de una matriz
reduciendo su dimensin con la perdida mnima de informacin posible. Bsicamente lo que
se busca es eliminar las variables que presentan una correlacin ms fuerte, dejando
nicamente, las que presentan una varianza mayor
Como consecuencia de la reduccin se obtendr que existan menos coeficientes de
correlacin y las nuevas variables se ordenaran con respecto a su varianza.

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

PCA computa los m vectores propios ms grandes de la matriz de covarianza d x d. Como


PCA usa las caractersticas ms expresivas (los vectores propios con los valores propios
ms grandes), aproxima los datos a un sub-espacio lineal usando el criterio de error medio
cuadrtico.

CONSULTA PREVIA.
Anlisis de Componentes Principales
Reduccin de dimensionalidad
Extraccin de caractersticas

METODOLOGIA.
El taller se realiza dirigidos por Edwin Zapata y Guillermo Vallejo, bajo la supervisin de la
docente Laura Cortes.

MATERIALES, EQUIPOS Y REACTIVOS A UTILIZAR.


MATLAB
PRECAUCIONES Y MANEJO DE MATERIALES Y EQUIPOS. CONSULTA DE EQUIPO
ESPECIALIZADO.
Para el inicio de las actividades de la prctica de laboratorio, recuerde las
siguientes indicaciones:

Revise que los equipos en prstamo funcionen correctamente en el momento de


solicitarlos en el laboratorio.

Usar adecuadamente los computadores.

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

No desconfigurar las herramientas de programacin ni los sistemas operativos.

Observar todas las normas de comportamiento en los laboratorios de sistemas.

Usar el acceso a Internet solamente para consulta de los temas del laboratorio.

PROCEDIMIENTO A UTILIZAR
1. Ejecutar MATLAB (Inicio Todos los programas buscar MATLAB).
2. Descargar el archivo data250.txt en la carpeta: Mis Documentos > MATLAB
3. Una vez cargada la ventana de MATLAB seguimos las indicaciones siguientes en
la ventana de comandos (Command Window):
Se cargarn los datos suministrados:
load data250.txt
Trasladamos los datos a una matriz XY
XY=data250;
Seleccionamos la matriz X con solo las variables independientes. Debe verificar con
anticipacin cuantas columnas corresponden a X.
En este caso son 9 y estn ubicadas entre la columna 2 y 10
X=XY(:,2:10);
size(X)
ans =
Luego la variable respuesta ser
Y=XY(:,11)
Esta muestra estratificada de acuerdo a la variable dependiente y, ser explorada a fin de
determinar si se le puede aplicar reduccin de variables.
Emplearemos los dos mtodos que pueden determinar los componentes principales.

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

Funcin en MATLAB para emplear el Mtodo de los valores singulares.


De acuerdo a este mtodo podemos obtener una matriz diagonal que incluye los valores
propios de la matriz simtrica.
Para nuestro caso la matriz simtrica es la matriz de correlacin.
Determinamos la matriz de correlacin R.
R=corrcoef(X);
R
Observar una matriz 9x9. La suma de la diagonal representa el rango de la matriz
A simple vista podemos observar en la matriz algunos elementos con valores cercanos a
uno. Esto pareciera indicar una colinealidad entre variables. Se aplica SVD (Descomposicin
en valores Singulares) y de acuerdo a los valores singulares, tenemos:
[u,lambda,v]=svd(R)
Observe la diagonal principal. Los valores propios, al multiplicarse por 10, representan el
porcentaje equivalente a la contribucin de la varianza de cada componente. Observe
adems que esta contribucin es decreciente hasta completar el nmero de componentes
principales. La suma de la diagonal (traza) representa el rango de la matriz.
Por otro lado, los componentes principales quedan definidos por los autovectores v.
Es decir,
v
Observe que estos vectores (autovectores) son ortogonales y ortonormales. El producto
indistintamente de dos de ellos ser igual cero (ortoganiladad) y el producto de cada uno de
ellos por si mismo es igual uno (ortonoprmalidad).
Por ejemplo, el producto entre los dos primeros autovectores debera ser cero.
v(:,1)'*v(:,2)
ans =
Estos autovectores definen el nuevo espacio dimensional ortonormal donde las variables
originales podran ser definidas en unas nuevas (variables latentes) mediante una rotacin a

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

estos nuevos ejes en los cuales quedaran proyectadas.


Por otro lado, igualmente y de manera simplificada, se puede obtener el conjunto de
componentes principales al estimar en una misma funcin los autovalores, autovectores y el
porcentaje explicado por cada uno de las nuevas variables cuando ellas son rotadas.
Usando una funcin adecuada y utilizando la matriz de correlacin R como matriz de
entrada, tenemos
[cp,lambda,explicacion]=pcacov(R);
donde:
cp: matriz de componentes principales, lambda: matriz diagonal con los autovalores de R,
explicacion: porcentaje explicado de la varianza por cada uno de los componentes.
Los componentes principales (autovectores) son:
cp
Los resultados en cp y v resultan los mismos por ambos mtodos.
Del mismo modo, los autovalores son:
lambda'
El porcentaje explicado por cada una de las variables al ser transformadas es: explicacion
Una gua para la seleccin de los componenetes es si comparamos estos valores
grficamente mediante el screen plot (diagrama del codo); se retienen aquellos componentes
que muestren un apreciado cambio de pendiente. Esta seleccin termina cuando se observa
una tendencia uniforme o casi uniforme de la pendiente.
Veamos por ejemplo
plot(lambda)

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

En este caso, se puede retener hasta el componente cinco.


Estandarizacin de la matriz de datos a los fines de poder rotarlos.
Se estandariza variable por variable con media cero y varianza uno, a fin rotar las
observaciones originales y contabilizar cada una de las variables originales en el vector x en
su equivalente de variables latentes z (estos son los scores). Para este caso se dispone de
258 observaciones, entonces los comandos seran para cada una de las 9 variables
estandarizadas
sx1=(X(:,1:1)-ones(258,1).*mean(X(:,1:1)))./sqrt(var(X(:,1:1)));
sx2=(X(:,2:2)-ones(258,1).*mean(X(:,2:2)))./sqrt(var(X(:,2:2)));
sx3=(X(:,3:3)-ones(258,1).*mean(X(:,3:3)))./sqrt(var(X(:,3:3)));
sx4=(X(:,4:4)-ones(258,1).*mean(X(:,4:4)))./sqrt(var(X(:,4:4)));
sx5=(X(:,5:5)-ones(258,1).*mean(X(:,5:5)))./sqrt(var(X(:,5:5)));
sx6=(X(:,6:6)-ones(258,1).*mean(X(:,6:6)))./sqrt(var(X(:,6:6)));
sx7=(X(:,7:7)-ones(258,1).*mean(X(:,7:7)))./sqrt(var(X(:,7:7)));
sx8=(X(:,8:8)-ones(258,1).*mean(X(:,8:8)))./sqrt(var(X(:,8:8)));
sx9=(X(:,9:9)-ones(258,1).*mean(X(:,9:9)))./sqrt(var(X(:,9:9)));
Compilamos en una matriz SX todos los vectores que contienen las variables originales
estandarizadas
SX=[sx1 sx2 sx3 sx4 sx5 sx6 sx7 sx8 sx9];
Las variables latentes en Z1 o Z2 son los nuevos valores contabilizados de las variables
originales en los nuevos ejes. Esto es, las variables z, mediante la rotacin de sus ejes son
definidas por los componentes principales cp o v.

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

Z1=SX*cp;
Z2=SX*v;
En esta fase se hace la estimacin de la matriz de correlacin entre las variables latentes en
Z (Z1 o Z2) y la variable respuesta Y. Para ello, en una matriz ZY todas las columnas para
estimar la matriz de correlacin Rzy y observar los valores de la variable y los componentes
en Z no retenidos en la primera oportunidad. Hallamos ZY:
ZY=[Z1 Y];
Ahora
Rxy = corrcoef(ZY)
Simplifiquemos. Como en este ejercicio result una matriz de correlacin de orden 10x10,
revisaremos la ltima columna que se corresponde con la variable Y y las nuevas variables
independientes z, a fin de seleccionar los k2 restantes componentes que indicarn la
incorporacin de nuevas variables, para mejorar el nivel de estimacin del modelo resultante
Rxy(:,10)
Podemos observar que a pesar de seleccionar algunos primeros componentes (en el caso de
este ejemplo fueron los primeros cinco), se pueden agregar aquellos que tengan una buena
correlacin de las variables latentes z con y. De ah que estos ltimos componentes,
mencionados como los k2 componentes, pueden ser incorporados como parte de los
componentes definitivamente seleccionados en el proceso de reduccin. Por tanto, los
componentes definitivos que se podran incluir como variable independientes dados por la
matriz de variables latentes Z son los k resultantes de la suma k=k1+k2
La matriz definitiva de variables reducidas quedara compuesta por los k componentes
relacionados con cada columna de la matriz Z, sean los indicados por k1 como los indicados
por k2.
Por ejemplo, se agregaron los indicados como sptimo y noveno a los primeros cinco.
Var_reducidas= [Z1(:,1:5) Z1(:,7) Z1(:,9)];
Finalmente, estas variables reducidas ms la variable Y forman el nuevo conjunto de datos
para un modelo de estimacin. Por ejemplo, el entrenamiento de un modelo de redes
neuronales.
En efecto, el conjunto final de datos para entrenamiento sera una matriz compuesta por
estas variables reducidas y la variable Y

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

DatosZY = [Var_reducidas,Y];
size(DatosZY)

BIBLIOGRAFA RECOMENDADA.

Duda, R. O., Hart, P. E., & Stork, D. G. (2012). Pattern classification. John Wiley &
Sons.
Friedman, M., & Kandel, A. (1999). Introduction to pattern recognition.

INFORME DE LABORATORIO
(Para elaborar por el Estudiante)
ESTUDIANTES:
John Ramirez
Julian Olarte

GRUPO:

NOTA:

CUESTIONARIO
1. Por qu al final la matriz DatosZY tiene 8 columnas, a diferencia de data250?
Se realiza una agrupacin de los datos observando que caractersticas son
similares

2. Para qu se utilizaron los valores propios de la matriz de covarianza? Qu


informacin aportaron?

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

Se utiliza para la normalizacin de los datos


3. Explique con sus palabras la utilidad, uso y salidas del comando: pcacov();
realiza anlisis de componentes principales en la matriz de covarianzas y devuelve los
principales coeficientes de componentes, tambin conocidos como cargas. Este es una
matriz, con cada columna que contiene los coeficientes de un componente principal. Las
columnas son en orden decreciente de componentes de la varianza.

4. Adjunte la imagen de la grfica de los lambdas, en donde se aprecie que usted la


realiz.

5. Elabore una conclusin sobre el trabajo desarrollado

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

Se observa como se puede desarrollar una optimizacion de los datos normalizandolo y


acomodandolos para dismiunuir su cantidad y poder trabajar con ellos de una m,anera
mas apropiada.
RBRICA DE EVALUACIN:
El laboratorio se evaluar segn las respuestas al cuestionario de la siguiente manera:
Criterio

Bajo

Medio

Alto

(1 Punto)

(2 Puntos)

(3 puntos)

El estudiante reconoce en el laboratorio el proceso


para reducir dimensionalidad por PCA. Esto lo
expresa en una respuesta adecuada a la pregunta
1.
El estudiante reconoce en el anlisis de datos, los
productos finales (nuevos datos) y su significado.
Pregunta 2.
El estudiante relaciona la teoria con lo practicado,
adems de los resutados para dar conclusiones
sobre los procesos que se llevaron acabo. Esto le
permitir aplicar PCA en cualquier lenguaje de
programacin. Pregunta 3.
El estudiante realiz los procesos adecuados para
obtener resultados fiables en el desarrollo del
laboratorio. Pregunta 4.
El estudiante formula una conclusin relacionada
con el trabajo desarrollado en este laboratorio.
Pregunta 5.
Total en puntos:

Nota:

1
puntos obtenidos
3

POLITECNICO GRANCOLOMBIANO
MAESTRIA DE INGENIERIA DE SISTEMAS
FORMATO PARA PRACTICAS DE LABORATORIO
Fecha: Septiembre de 2015

Você também pode gostar