Вы находитесь на странице: 1из 18

Proyecto

Kernel Principal Component Regression


Ana Belem Marquez Quintos
amarquez@computacion.cs.cinvestav.mx
Reconocimiento de Patrones
Dr. Wilfrido G
omez Flores
Departamento de Computaci
on
CINVESTAV, Distrito Federal, Mexico
19 de agosto de 2014

Resumen En este trabajo se realiza la implementaci


on de Kernel Principal Component Regression a partir de la investigaci
on realizada con anterioridad. Los resultados obtenidos se compara con el Kerner de An
alisis
Discriminante Lineal visto en clase.

Introducci
on
Principal Component Regression (PCR) se utiliza para realizar predicciones de variables dependientes normalmente distribuidas, a traves
de la proyecci
on sobre el subespacio optimo generado por variables independientes, utilizando un modelo lineal que establece una relacion de
las variables. Esta es una tecnica de analisis de regresion que se basa en
Principal Component Analysis (PCA).
En la PCR, en vez de realizar la regresion de la variable dependiente
de las variables independientes directamente, los componentes principales
de las variables independientes se utilizan como regresores. Utiliza solo
un subconjunto de todos los componentes principales para la regresion,
con lo que PCR realiza aslg
un tipo procedimiento de regularizacion. Es
frecuente que los componentes principales con mayores variaciones se seleccionan como regresores, sin embargo, para el proposito de predecir el
resultado, los componentes principales con varianzas bajas tambien pueden ser importantes.
Este metodo se puede generalizar a un kernel mediante el cual la funci
on de regresi
on no necesita ser necesariamente lineal en las covariables.
Este vector de covariables es primero mapeado en un espacio de caractersticas de alta dimensionalidad, a este mapeo obtenido se le conoce

como el mapa de caractersticas y cada una de sus coordenadas son


conocidas como los elementos de caractersticas que corresponde a una
caracterstica de covariables.
Por lo tanto, el modelo de regresion en el kernel es escencialmente un
modelo de regresi
on lineal y los predictores estan dados por el vector de
elementos de caractersticas obtenido por la transformacion de covariables
reales utilizando el mapa de caractersticas.

1.

Marco te
orico

1.1.

Principal Component Analysis

El An
alisis de componentes principales (PCA, por sus iniciales en
ingles), se trata de representar los datos de ddimensionalidad en un espacio de menor dimensi
on, es decir, representar los datos en un espacio
que mejor describe la variacion en un sentido de error de suma de cuadrados.
Se considera una serie de variables X = (x1 , x2 , ..., xm ) sobre un
grupo de objetos y se trata de calcular un nuevo conjunto de variables
Y = (y1 , y2 , ..., ym ), incorreladas entre s, cuyas varianzas vayan crecioendo progresivamente.
Cada yj , donde es j = 1, 2, ..., m una combinacion lineal de las x1 , x2 , ..., xm
originales, es decir:

yj = aj1 x1 + aj2 x2 + ... + ajm xm


= aTj X
siendo aj = (a1j , a2j , ..., amj )T un vector de constantes.
Lo que se desea es minimizar la varianza, la forma simple es disminuyendo los coeficientes aij , Por ello, para mantener la ortogonalidad de la
transformaci
on se impone que el modulo del vector aj sea 1, es decir,

aTj aj =

m
X
i=1

a2kj = 1

(1)

Por lo tanto, el primer componente se calcula eligiendo a1 de modo


que y1 tenga la menor varianza posible, sujeta a la restriccion de que
aT1 a1 = 1, y de este modo para cada ai

1.2.

Multicolinealidad

Sea X = (xi1 , xi2 , ..., xiN ), donde i = 1, 2, ..., m, Se dice que existe
colinealidad en X si XT X es una matriz singular, por ejemplo, si algunos
valores propios de XT X son cero. Por lo cual hay una infinidad de soluciones para la Eq. 5, lo cual hace que sea mas difcil de escoger el mejor
modelo de regresi
on lineal m
ultiple. A esta implicacion se le conoce como
el efecto de colinealidad.
La multicolinealidad es un problema que suele plantearse en regreson
m
ultiple ya que prohbe la influencia estadstica precisa. En adicion, se
dice que la multicolinealidad existe en X si XT X es casi una matriz singular, por ejemplo, si algunos valores propios de XT X son cercano a cero.
Esta condici
on se produce cuando hay relaciones casi lineales entre las
variables independientes de la matriz X. Por lo tanto, esto implica que
existe un conjunto de constantes dj , tal que
Pk

j=1 dj xj

=0

donde xj es el j th de la columna X
Si este termino es exactamente 0, la dependencia lineal es exacta y
X T X es una matriz singular.

1.3.

Mnimos cuadrados ordinarios

Es una tecnica de modelado lineal generalizado que puede utilizarse


para modelar una sola variable de respuesta que ha sido grabada en al
menos una escala de intervalo. Esta tecnica se puede aplicar a las variables explicativas individuales o m
ultiples, como tambien a las explicativas
categ
oricas que han sido codificadas apropiadamente.

Por lo tanto, la relacion entre una variable de respuesta continua Y


y una variable explicativa X, se puede representar mediante una lnea
de mejor ajuste, donde Y es predicha, en cierta medida, por X. Si esta
relaci
on es lineal, puede ser representado por la ecuacion de la recta Eq. 2.

Y = X +

(2)

donde Y es el valor predicho de la variable dependiente, es el coeficiente de regresi


on o pendiente de la linea, es el error o residuo entre
las observaciones y el modelo.
Dados una serie de puntos (xi , yi ), se desea minimizar la suma de los
cuadrados de las distancias entre la recta y dichos puntos.

J() =

N
X

(yi T xi )2

(3)

i=1

J() se minimiza cuando

J()

= 0, entonces

X
J()
=2
(yi T xi )xTi

=2

i=1
N
X
i=1

yi xTi 2 T

N
X
i=1

= 2X T Y 2X T X

xi xTi

1.4.

Modelos de regresi
on

El an
alisis de regresi
on es una tecnica para el modelado y la investigaci
on de la relaci
on entre dos o mas variables, en otras palabras podemos
decir que describe entre una variable aleatoria simple Y , que es la variable respuesta y las variables independientes x1 , x2 , ..., xm , que son las
variables de regresi
on.
En este trabajo se abordara el modelo de Regresi
on lineal m
ultiple, para esto se definir
an las siguientes variables.
Yi es la variable de respuesta en la i-esima observacion (i = 1, 2, ..., N ),
xij R es la i-esima observacion de regresion de xj , por lo cual denotamos que:
xi = (xi1 , xi2 , ..., xim )T
Y = (Y1 , Y2 , ...YN )T
= (x1, x2, ..., xN )T
X
)
X = (1N , X
= (0 , 1 , ..., m )T
 = (1 , 2 , ..., N )T

Regresi
on lineal m
ultiple El modelo estandar de la regresion m
ultiple
es escrito como se muestra en la Eq. 4

Y = X + 

(4)

Este modelo supone que el valor esperado de , denotado por E(), es


igual a 0 y la varianza de , denotada por E(T ), es igual a 2 IN , donde
la matriz IN es una matriz identidad de N xN y 2 es un n
umero real
positivo.

El objetivo general de la regresion es encontrar un estimador de ,


= (0 , 1 , ..., m )T , tal que ||||2 sea minimizado. La solucion
digamos
puede ser encontrada resolviendo los mnimos cuadrados lineales.

XT X = XT Y

(5)

Dado que puede existir multicolinealidad en X, como se explica en


el apartado anterior, definimos y = (y1 , y2 , ..., yN )T RN que son los
correspondientes datos observados a Y y = (0 , 1 , ..., m )T Rp+1
ser los valores de cuando Y en Eq. 5 es reemplazada por y, por lo cual
tenemos que:

= (XT X)1 XT y

(6)

Por lo tanto, la prediccion del modelo de regresion lineal esta dada por:

f (x) = 0 +

m
X

j xj

(7)

j=1

donde f es una funci


on de

Rm

en R

Y los valores de prediccion de y, se puede decir y


se define como:
y
= X
1.5.

(8)

Principal Component Regression

La Regresi
on de Componentes Principales (PCR, por sus iniciales en
ingles) es una tecnica de analisis de m
ultiples datos de regresion que sufren multicolinealidad. Cuando ocurre la multicolinealidad, los mnimos
cuadrados estimados no son sesgados, pero las variaciones son grandes,
por lo cual puede estar muy lejos del valor real, lo que realiza PCR es
reducir los errores est
andar y esperar que el efecto sera dar estimaciones
m
as fiables.
De acuerdo al modelo de regresion lineal m
ultiple, definimos que el
modelo est
andar centralizado es

Y0 = Z + 0
Z = (IN

1
T
N 1N 1N )X

Y0 = (IN
0 = (IN

1
T
N 1N 1N )Y

1
T
N 1N 1N )

Primero de debe realizar la estandarizacion de las variables, tando las


dependientes como las independientes, restando sus medias y dividiendo
entre su desviaci
on est
andar.
Sea 1 2 ... r r+1 ... d y A = (a1 , a2 , ..., ad )
ser los valores y vectores propios de ZT Z, A = A1 y A es una matriz
ortogonal, esto implica que AAT = Id , entonces
AT ZT ZA = D

(9)

donde

D=

1
0
Dd =
...
0

Dd 0
0 0
0
2
...
0

... 0
... 0

... ...
... d

Dado que Z T Z es una matriz simetrica y semidefinida positiva, entonces los eigenvalores son reales y no negativos.
Se define U = ZA y = AT
Dado que hay que eliminar la multicolinearidad se asume que r+1
0, r+2 0, ..., d 0, por lo tanto


Dr 0
Dd =
(10)
0 Ddr
Por lo cual reescribiendo el modelo se tiene que:

Y0 = Ur r + 0

(11)

Para obtener el estimador , tal como en el modelo de regresion lineal


m
ultiple

1
r = (UT
UT Y
r Ur )

Por lo cual, el modelo de prediccion para PCR esta dado por

y
= y1N + ZAr r
Sustituyendo para
En los mnimos cuadrados, los coeficientes de regresion son estimados
como se muestra en Eq. 12
1 XT Y

= (XT X)

(12)

Por lo tanto, la regresion de componentes se describe como se muestra


en Alg. 1.

Algorithm 1 PCR
Entrada Matriz de muestras X, vector de clases Y
Salida Vector de coeficientes de regresi
on ,
Realizar la estandarizaci
on de X, guardando en Z
Realizar la regresi
on de Y sobre Z para obtener la estimaci
on de
Establecer el u
ltimo elemento de a 0
Calcular los coeficientes originales de

1.6.

Kernel Principal Component Regression

Como se ha visto anteriormente, para atacar la multicolinealidad se


puede utilizar PCR, que transforma el modelo de regresion (4) en un
nuevo modelo utilizando una matriz ortogonal, pero este solo da una predicci
on lineal, lo cual hace que exista limitaciones, ya que la mayora de
los problemas reales son no lineales.
El Kernel Principal Component Regresion (KPCR) fue propuesto para superar la desventaja. Basicamente lo que se realiza es transformar x1 ,
i = 1, 2, ..., N , utilizando una funcion : Rm F , donde F es llamada espacio de caractersticas y este es un espacio Euclidiano de mayor

dimensi
on que m, se puede decir mF . Por lo tanto, se deriva de otra
funci
on, : Rm Rm R, donde es una funcion simetricam continua
y semidefinida positiva, a esta funcion se le llama la funcion kernel.
Se define una matriz
= ((x1 ), (x2 ), ..., (xN ))T ,
K = T
donde el tama
no de y K son de N mF y de N N respectivamente. Entonces, de acuerdo al modelo regresi
on lineal m
ultiple estandar, se
define este para el espacio de caractersticas como se muestra la Eq. 13
Y = +


(13)

donde es un vector de coeficientes de regresion de tama


no mF 1
y
 es un vector de errores en el espacio de caractersticas. Se asume que:
PN

i=1 (xi )

= 0,
E(
) = 0,
E(

T ) = 2 In

Dejamos 1 2 ... r r+1 ... mF y V = (v1 , v2 , ..., vmF )


ser los los valores propios y la matriz correspondiente de vectores propios
normalizada, respectivamente, de T . Reescribiendo el modelo de la
Eq. 13 como

Y = B +


(14)

donde B = V y = (1 , 2 , ..., mF )T = VT . Por lo tanto, para


estimar se muestra en Eq. 15

= (BT B)1 BT Y

(15)

y el estimador para es definido como en la Eq. 16

= V =

mF
X
i=1

T T
1
i v i vi Y

(16)

10

y su correspondiente matriz de covarianza como

cov() =

mF
X

T
1
i vi vi

(17)

i=1

Ahora bien, para evitar el efecto de multicolinealidad, PCR borra algunos vectores propios de T correspondientes a los peque
nos valores
propios i .
Dejamos ( = 1 , 2 , ..., N )T ser un vector propio de K correspondiente a j 6= 0 para alguna j 1, 2, ..., mF . Utilizando los primeros r
vectores de V, se puede escribir el modelo de prediccion de KPCR como
en Eq. 18

g(x) =

N
X

aj (xi , x) + d

(18)

i=1

donde g es una funci


on, de Rm a R, d es el termino bias y

ai =

2.

Pr

k=1 k ik

para i = 1, ..., N

Metodologa

Dado que ya se cuenta con la teora necesaria, se realizara la implementaci


on para analizar el Kernel Principal Component Regression.
Para realizar este kernel, se explica a continuacion de forma muy general lo que se realizar
a.
Dado un conjunto de datos X de tama
no N m y el vector de clases
Y de tama
no N 1

11

Algorithm 2 trainKPCR
Entrada Matriz de muestras X, vector de clases Y
Salida Vector de coeficientes de regresi
on , Kernel K, bias b
Escoger y contruir el Kernel
Centrar matriz K
Calcular valores y vectores propios de K
i
1
Detectar la multicolinealidad, tal que lambda
1000
1
Contruir la matriz
Calcular B = K
Estimar el vector de regresi
on = (B T B) (B T Y )
Calcular =
q P
Calcular bias, tal que d = n1 n
i )2
i=1 (yi y

Algorithm 3 classifyKPCR
Entrada: Xn , Yn , Xtr, K, , d
Salida: Y pred
Construir el Kernel
Centrar la matriz K
Realizar predicci
on Y pred = y
= K + d

Para la selecci
on del kernel se utilizara el Gaussiano (RBF) que se
define como
(xi , xj ) = exp(||xi xj ||22 )
Esto se implemetar
a en MatLab, dado que facilita la manipulacion
del conjunto de datos, as como realizar diversas operaciones.

3.

Materiales
Conjuntos de datos:

1. Complex
2. Ring
3. Xor
MATLAB (MATrix LABoratory, laboratorio de matrices)

12

4.

Resultados

Los resultados obtenidos con KPCR fueron comparados con el Kernel


An
alisis Lineal Discriminante (KFDA)
Para el conjunto de datos Complex se obtuvieron los siguientes resultados:
Se puede observar que KPCR (Fig. 1), obtuvo una mejor clasificacion,
dado que el error es significativamente menor que KFDA (Fig. 2).

Error = 74
T E = 4,6 seg

Figura 1. Gr
afico de espacio de caractersticas de Complex KPCR

13

Error = 429
T E = 1,04 seg

Figura 2. Gr
afico de espacio de caractersticas de Complex KFDA

Para el conjunto de datos Complex se obtuvieron los siguientes resultados:


Se puede observar que KPCR (Fig. 3), obtuvo una mejor clasificaci
on, dado que el error es significativamente menor que KFDA (Fig. 4),
sin embargo en la partici
on del espacio de caractersticas KPCR detecto
una clase adicional

14

Error = 12
T E = 1,65 seg

Figura 3. Gr
afico de espacio de caractersticas de Ring KPCR

Error = 47
T E = 0,44 seg

Figura 4. Gr
afico de espacio de caractersticas de Ring KFDA

15

Para el conjunto de datos Xor se obtuvieron los siguientes resultados:


Dado que este conjunto de datos es linealmente separables, los dos
clasificadores obtuvieron 0 errores (deseable), sin embargo la particion
del espacio de caractersticas fue mejor en KFDA (Fig. 6) y, ademas en
tiempo de ejecuci
on fue mas rapido.

Error = 0
T E = 0,15 seg

Figura 5. Gr
afico de espacio de caractersticas de Xor KPCR

16

Error = 0
T E = 0,08 seg

Figura 6. Gr
afico de espacio de caractersticas de Xor KFDA

5.

Funcionamiento

El programa de este experimento se encuentra en la carpeta Implementaci


on. Este contiene cuatro archivos trainKPCR.m que realiza el
entrenamiento, classifyKPCR.m que realiza la clasificacion de los datos,
graph.m que realiza la graficacion de la particion del espacio de caractersticas y principal.m es el que ejecuta las funciones.
Para ejecutarlo se realiza lo siguiente:
Ejecutar principal.m.
Seleccionar la base de datos con la que se desea trabajar.
1. Complex
2. Ring
3. Xor
El resultado mostrado es la particion del espacio de caractersticas, el
error generado y el tiempo de ejecucion.

17

6.

Conclusiones

Kernel Principal Component Regression es un metodo novedoso para


la clasificaci
on de conjuntos no linealmente separables.
Dado en los resultados mostrados, el KFDA mostro menor tiempo de
ejecuci
on, ya que se trata de un clasificador lineal, mientras que KPCR
tiene un tiempo d ejecucion mas tardado, ya que realiza la eigendescomposici
on de matrices para obtener valores y vectores propios, por lo
cual entre m
as datos existan en el conjunto este requerira mas tiempo de
c
omputo.
Por otro lado, es difcil determinar que tipo de clasificador utilizar,
dado que tiene una gran influencia las caractersticas de los conjuntos de
datos, por lo que siempre hay que que realizar un estudio de los mismos
como lo es la dispesi
on, las caractersticas que dan una mejor aprtacion
de informaci
on, entre otros.

18

Referencias
[AW08] Y. Yamamoto A. Wibowo. The new approach for kernel principal component
regression. Discussion Paper Series No. 1195, Department of Social Systems
and Management, Univ. Tsukuba, 2008.
[AW11] M. Desa A. Wibowo. Nonlinear robust regression using kernel principal component analysis and r-estimators. International Journal of Computer Science
Issues, 2011.
[AW12] Y. Yamamoto A. Wibowo. A note on kernel principal component regression.
Computational Mathematics and Modeling, 2012.
[Jol82] Ian T. Jolliffe. A note on the use of principal components in regression.
Journal of the Royal Statistical Society. Series C (Applied Statistics), 1982.
[Jol02] I. Jolliffe. Principal Component Analysis. Second edition edition, 2002.
[JT04] N. Cristiani J. Taylor. Kernel Methods for Pattern Analysis. First edition
edition, 2004.
[LL07] Lawrence Kleinman Wei Zhu Ling Leng, Tianyi Zhang. Ordinary least square
regression, orthogonal regression, geometric mean regression and their applications in aerosol science. Journal of Physics: Conference Series, 2007.
[LM11] G. D. Hutcheson L. Moutinho. Ordinary least-squares regression. The SAGE
Dictionary of Quantitative Management Research, 2011.
[ROD03] David G. Stork Richard O. Duda, Peter E. Hart. Pattern Classification.
Second edition edition, 2003.
[RR00] A. Cichocki R. Rosipal, L. Trejo. Kernel principal component regression with
em approach to nonlinear principal components extraction. University of
Paisley, School of Information, Communication and Technologies, 2000.
[ST03] K. Koutroumbas S. Theodoridis. Pattern Recognition. Second edition edition,
2003.
[TH09] J. Friedman T. Hastie, R. Tibshirani. The Elements of Statistical Learnig:
Data Mining, Inference and Prediction. Second edition edition, 2009.
[XC12] Hu Yang Xinfeng Chang. Combining two-parameter and principal component
regression estimators. Statistical Papers, 2012.

Вам также может понравиться