• Nenhum resultado encontrado

Autofaces Fracionário

3.1 Métodos relacionados

3.1

Métodos relacionados

Esta seção revisa duas técnicas de extração de características para o reconhecimento de faces: PCA Fracionário e Autofaces. Ambos são extensões de PCA, o qual é revisado primeiro para facilitar a descrição dos métodos que seguem. Para se calcular projeções que concentrem a variabilidade do conjunto de dados, PCA encontra direções de máxima variância no espaço de origem dos dados (o espaço antes da projeção). Estas projeções são assumidas como discri- minantes para a classificação. Esta direções são os autovetores da matriz de covariância dos dados. O produto interno entre o vetor que representa um exemplo por um desses autovetores é uma nova característica extraída para o exemplo. Assume-se que esta característica é mais discriminante quanto maior for o autovalor associado a este autovetor. Então k características são extraídas de forma que elas são projeções das amostras originais no espaço definido pelos kautovetores de maior autovalor.

É assumido que

X = [x1. . . xn] (3.1)

é a matriz de dados para n amostras, e que cada coluna xié uma amostra, i = 1, . . . , n. No caso

de imagens, cada coluna tem todos os valores de pixels para uma única imagem. Isto é, todas as colunas da imagem são empilhadas para se formar um único vetor coluna. A matriz de covariância dos dados é computada como:

Cm×m=1 n n

i=1 (xi− ¯x) (xi− ¯x)T, (3.2) e ¯x = 1 n n

i=1 xi (3.3)

é o vetor média do dados. Se o espaço original de entrada é m-dimensional, isto é, cada imagem tem m pixels, C é uma matriz m × m, a qual tem m autovetores. Seja E a matriz de projeção m× k tal que cada uma das suas colunas é um dos k autovetores de maior autovalor entre os m

autovetores:

Em×k= [e1. . . ek]. (3.4)

A redução de dimensionalidade (ou extração de característica) se realiza projetando uma amos- tas de entrada xide um espaço m-dimensional para um espaço k-dimensional, k < m, tal que x0i

é a amostra projetada:

x0i= ET(xi− ¯x) . (3.5)

Este processo está resumido no Algoritmo 3.1.

Algoritmo 3.1: Redução de dimensionalidade com PCA

Entrada: Xm×n= [x1. . . xn] é a matriz onde cada coluna é uma amostra

Entrada: k é o número de características que se quer extrair a partir da m características originais.

Saída: Xk×n0 = [x01. . . x0n] é a matriz com cada amostra com dimensão reduzida para k. calcule ¯x = 1n∑ni=1xi

1

calcule Cm×m= 1n∑ni=1(xi− ¯x) (xi− ¯x)T

2

calcule Em×k = [e1. . . ek], os autovetores de maior autovalor de C

3 para i = 1, 2, . . . , n faça 4 x0i= ET(xi− ¯x) 5 fim 6 retorna Xk×n0 = [x01. . . x0n] 7

3.1.1 PCA Fracionário (FPCA)

O PCA Fracionário (FPCA, Fractional PCA) é uma extensão direta do PCA baseada na teoria da matriz de covariância fracionária (GAO; ZHOU; PU, 2013). O FPCA computa as direções de projeção como os autovetores da matriz de covariância fracionária, a qual é definida como:

Cm×mr = 1 n n

i=1 ((xi)r− (¯x)r) ((xi)r− (¯x)r)T, (3.6) com (xi)r = [(xi1)r. . . (xim)r]T. (3.7)

3.1 MÉTODOS RELACIONADOS 65

Cr é uma matriz m × m, r é um número real chamado de ordem da covariância fracionária. Se r= 1 a matriz de covariância fracionária é equivalente à matriz de covariância convencional.

Tal como PCA, apenas os k autovetores de maior autovalor são selecionados para se definir Er, a matriz de projeção m × k, tal que cada uma das suas colunas é um dos k autovetores de maior autovalor entre os m autovetores de Cr:

Em×kr = [er1. . . erk]. (3.8)

A redução de dimensionalidade (ou extração de característica) se realiza projetando uma amos- tra de entrada xide um espaço m-dimensional para um espaço k-dimensional, k < m, tal que x0i

é a amostra projetada:

x0i= Er T(xi− ¯x) . (3.9)

Este processo está resumido no Algoritmo 3.2.

No artigo (GAO; ZHOU; PU, 2013), FPCA foi avaliado para o reconhecimento de faces na base ORL. O valor de r = 0, 01 foi aquele que apresentou os maiores valores de acurácia. Naqueles experimentos, é fácil perceber que FPCA apresenta melhorias em relação ao PCA. Porém nem PCA nem FPCA são adequados para encontrar projeções para dados de alta dimen- sionalidade, tais como a própria base de imagens de faces ORL. Naqueles experimentos fez-se necessário reduzir as imagens de 92 × 112 para 23 × 28. Felizmente, já existe uma solução para estender PCA para problemas de alta dimensionalidade, é a chamada Autofaces e está descrita na próxima subseção.

3.1.2 Autofaces (AF)

Autofaces (AF, nome original Eigenfaces) (TURK; PENTLAND, 1991; BELHUMEUR; HES- PANHA; KRIEGMAN, 1997), anteriormente proposto em (SIROVICH; KIRBY, 1987; KIRBY; SIROVICH, 1990), é uma extensão do PCA para dados de alta dimensionalidade (BISHOP, 2006). Problemas de alta dimensionalidade têm o número de características m muito alto (HAS- TIE; TIBSHIRANI; FRIEDMAN, 2001). Nestes problemas é comum acontecer n << m, isto

Algoritmo 3.2: Redução de dimensionalidade com FPCA (PCA Fracionário) Entrada: Xm×n= [x1. . . xn] é a matriz onde cada coluna é uma amostra

Entrada: k é o número de características que se quer extrair a partir da m características originais.

Entrada: r é um número real chamado de ordem da covariância fracionária.

Saída: Xk×n0 = [x01. . . x0n] é a matriz com cada amostra com dimensão reduzida para k. calcule ¯x = 1n∑ni=1xi

1

calcule Cm×mr = 1n∑ni=1((xi)r− (¯x)r) ((xi)r− (¯x)r)T

2

calcule Em×kr = [er1. . . erk], os autovetores de maior autovalor de Cr

3 para i = 1, 2, . . . , n faça 4 x0i= Er T(xi− ¯x) 5 fim 6 retorna Xk×n0 = [x01. . . x0n] 7

é, o número de amostras é muito pequeno se comparado ao número de características. Para a base de faces ORL, por exemplo, existem n = 400 amostras and m = 10304 caracteríticas. Turk e Pentland (1991) afirmam que é intratável determinar m autovetores e autovalores de uma matriz de covariância m × m para imagens de tamanho típico. De fato, a complexidade de algoritmos para se computar autovetores é O(m3) de acordo com (BISHOP, 2006; PRESS et al., 1992). A solução para este problema, apresentada por Turk e Pentland (1991), Bishop (2006), não é computar os autovetores diretamente da matriz de covariância C, Equação 3.2, mas de uma matriz menor D de dimensões n × n, então calcular os autovetores de C a partir dos autovetores de D. A matriz D é esta:

Dn×n= 1 n m

j=1 x1 j− ¯xj, . . . , xn j− ¯xj T x1 j− ¯xj, . . . , xn j− ¯xj , (3.10)

em que xi j é o valor cada característica j para a amostra i, m é o número de características

(pixels) e n é o número de amostras.

Seja En×k0 = [e01. . . e0k], 1 ≤ k ≤ n, a matriz com os k autovetores de D com maiores auto- valores. Os autovetores eiem E, Equação 3.4, da matriz de covariância C, são computados a

partir de E0como segue:

ei=

1 (nλi)1/2

3.1 MÉTODOS RELACIONADOS 67

com λi como autovalor de e0i. Uma vez que a matriz de projeção E é calculada, os dados são

projetados para uma espaço de dimensão mais baixa pela Equação 3.5. Este processo está resumido no Algoritmo 3.3.

Algoritmo 3.3: Redução de dimensionalidade com Autofaces (AF) Entrada: Xm×n= [x1. . . xn] é a matriz onde cada coluna é uma amostra

Entrada: k é o número de características que se quer extrair a partir da m características originais.

Saída: Xk×n0 = [x01. . . x0n] é a matriz com cada amostra com dimensão reduzida para k. calcule ¯x = 1n∑ni=1xi= [ ¯x1. . . ¯xm]T 1 calcule Dn×n= 1n∑mj=1x1 j− ¯xj, . . . , xn j− ¯xj T x1 j− ¯xj, . . . , xn j− ¯xj  2

calcule En×k0 = [e01. . . e0k], os autovetores de maior autovalor de D

3 para i = 1, 2, . . . , k faça 4 ei=(nλ1 i)1/2[(x1− ¯x), . . . , (xn− ¯x)]e 0 i 5 fim 6 faça Em×k = [e1. . . ek] 7 para i = 1, 2, . . . , n faça 8 x0i= ET(xi− ¯x) 9 fim 10 retorna Xk×n0 = [x01. . . x0n] 11

É fácil perceber que D tem apenas n autovetores, então até n dos m autovetores de C podem ser calculados pela Equação 3.11. Este fato não é limitador uma vez que C tem apenas n − 1 autovetores que representam os dados (TURK; PENTLAND, 1991), os demais m − d + 1 au- tovalores são nulos. Uma vez que E é calculada, a redução de dimensionalidade é realizada através da projeção dos dados de entrada pela Equação 3.5.

É válido ressaltar que os autovalores de D são os mesmos da matriz de covariância C (BISHOP, 2006). E os autovetores computados pela Equação 3.11 são exatamente os mes- mos autovetores de C. A vantagem do método Autofaces não é calcular uma projeção diferente daquela calculada pelo PCA (como faz o FPCA), mas é tornar viável calcular as mesmas pro- jeções do PCA para um número muito grande de características. Nas próximas seções são propostos métodos de extração de característica que têm os benefícios da matriz de covariân- cia fracionária (como o FPCA) e a possibilidade de computar os autovetores desta matriz para dados de alta dimensionalidade (como Autofaces).