Anda di halaman 1dari 67

Vetores, Matrizes e a Anlise de Componentes Principais

Marilena Meira

Matrizes

Matriz identidade 2
B=

1
A=

0 1 0 0

0 0 1 0
A=4x4

0 0 0 1

3 1 0

-4 9 2

-3 2 5

0 0 0

10 3

B = 3X4

Notaes sobre matrizes

A = 2x2; a11 = 1, a12 = 2, a21 = 3,a22=4 B = 2x2; a21 = 0 C = 2x3; a23 = -2 D = 1x3; a12 = 3 E = 3x1; a21= 4 F = 1x1

Operaes com matrizes


Adio:

Subtrao: A subtrao de duas matrizes consiste em subtrair os elementos da primeira com os correspondentes elementos da segunda.

Adio de duas matrizes

Calcule a subtrao destas duas matrizes.

Multiplicao

Multiplicao por um escalar

Multiplicao de matrizes

Multiplicao de matrizes

Multiplicao de matrizes

O nmero de colunas da primeira deve ser igual ao nmero de linhas da segunda

Multiplicao de matrizes

O nmero de colunas da primeira deve ser igual ao nmero de linhas da segunda

Multiplicao de matrizes

Transposta de uma matriz

Transpor uma matriz

Vetores
Muitas grandezas fsicas no esto completamente identificadas se alm da magnitude no estiver definido a direo e o sentido da grandeza: Fora 5N Deslocamento 5m

Vetores
So segmentos de reta orientados no plano ou no espao.
Ponto final
Segmentos com a mesma direo, mesmo sentido e mesmo comprimento representam o mesmo vetor.

Ponto inicial

Vetor no plano cartesiano

Vetor no espao

Soma de vetores

Diferena de vetores

Multiplicao de vetor por um escalar

Vetor = Matriz linha ou matriz coluna

um autovector ou vector prprio representa uma direco que preservada por uma transformao linear. Mais precisamente, seja V um espao vectorial sobre umcorpo F, e A: V V uma transformao linear. v um autovector quando v no o vector nulo e existe um escalar tal que .Nesse caso, dizemos tambm que um autovalor ou valor prprio. v chamado de autovector associado ao autovalor .

Auto-vetor ou Vetor prprio eigenvector


Matriz x vetor = vetor

No um auto-vetor

Auto-vetor

5 3 2

Os auto-vetores de uma matriz correspondem s direes que no so alteradas atravs da multiplicao da matriz.

11

12

Auto-valor ou valor-prprio eigenvalues


Matriz vetor auto-valor auto-vetor

Auto-vetores
Somente matrizes quadradas tem auto-vetores. Nem todas as matrizes quadradas tm auto-vetores. Dado uma matriz quadrada n x n existem n auto-vetores. Por exemplo: uma matriz 3x3 tem 3 auto-vetores. Todos os auto-vetores de uma matriz so ortogonais entre si (perpendiculares). Mesmo que o vetor seja escalado antes da multiplicao pela matriz ainda assim se obtm o mesmo mltiplo no resultado.

Comprimento de um auto-vetor
Y 2

Exerccios para casa

Anlise de Componentes Principais


uma forma de detectar padres em dados e de expressar esses dados de forma a realar as suas similaridades e diferenas. A deteco de padres (especialmente em elevada dimenso) uma tarefa difcil. Reduz o nmero de dimenses sem perda significante de informao.

Passos iniciais para o PCA


1. Obter a matriz de dados. 2.1 Centrar na mdia: Subtraia cada dado da respectiva mdia. Isso produz uma nova srie de dados cuja mdia igual a zero. 2.2 Auto-escalar os dados: Alm de subtrair da mdia divida cada dado pelo desvio-padro da srie.

Exemplo em duas dimenses


Dados originais Dados ajustados

Dados originais
X
3.0

y 2.4 0.7 2.9 2.2 3 2.7 1.6 1.1 1.6 0.9

2.5

2.0 y

1.5

1.0

2.5 0.5 2.2 1.9 3.1 2.3 2 1 1.5 1.1


0.5 1.0 1.5 2.0 x 2.5 3.0 3.5

0.5

Dados centrados na mdia


1.5 1

0.5

0 -1.5 -1 -0.5 -0.5 0 0.5 1 1.5

-1

-1.5

Dados auto-escalados
1.5

0.87875 -1.66834 0.49668 0.11462 1.64287 0.62404 0.24197 -1.03157 -0.3948 -0.90422

0.57885 -1.42942 1.16952 0.34259 1.28766 0.93325 -0.36621 -0.95688 -0.36621 -1.19315
-1.5 -2 -2 -1.5 -1 -0.5 -0.5 -1 1 0.5 0 0 0.5 1 1.5 2

Passo 3 para o PCA


Encontrar a matriz de covarincia.

Desde que os valores fora da diagonal so positivos os dados de X e Y aumentam juntos.

Passo 4 para o PCA


Calcular os auto-vetores e auto-valores da matriz de covarincia . Normalizar os auto-vetores obtidos no passo anterior, de forma a que a sua norma seja 1.
Auto-valores

Auto-vetores normalizados

Auto-valor e auto-vetor da matriz de co-varincia


Matriz vetor auto-valor auto-vetor

= 0.0491 x

Passo 5
Escolha componentes principais. Os auto-vetores com maiores auto-valores so os componentes principais.
Auto-valores

Auto-vetores normalizados

Passo 6
Forme a Matriz de Transformao com os auto-vetores com maiores auto-valores escolhidos colocando-os nas colunas.

Passo 7
Dados finais: Matriz de transformao transposta x Dados ajustados transpostos Os auto vetores de maior significncia estaro no topo. Cada dimenso estar em uma linha.

PCA
PCA = Matriz de transformao transposta x Dados ajustados transpostos X

PCA =

PCA: dados padronizados ou autoescalados


Matriz de Correlao

Corr = 1,0000 0,9261


0,9261 1,0000

Auto-Valores e Auto-Vetores Auto-Valores = 0,0739 1,9261 Auto-Vetores = -0,7071 0,7071 0,7071 0,7071

1_PC=96,30% 2_PC= 3,70%

Primeira PC = 0,7071 0,7071

Segunda PC = -0,7071 0,7071

Auto-Vetores e os Dados

1,50 1,00 0,50 -2,00 -1,00 0,00 -0,500,00 -1,00 -1,50 -2,00 1,00 2,00

PCA - Todas as Componentes


PCA = A'*D'
0,7071 -0,7071 0,7071 0,7071 0,88 -1,67 -1,43 ... ... -0,99 -1,19

0,58

0,60 0,40 0,20 0,00 -1,00 0,00 -0,20 -0,40 -0,60

-3,00

-2,00

1,00

2,00

3,00

A = Matriz de transformao ou Matriz de Auto-vetores

D = dados auto-escalados

PCA - Apenas 1a. PC


0,7071 0,7071
0,88 -1,67 -1,43 ... ... -0,99 -1,19

0,58

1,00 0,80 0,60 0,40 0,20 0,00 0,00

-3,00

-2,00

-1,00

1,00

2,00

3,00

PCA

Concluso
Os dados originais x e y sero representados em termos dos vetores escolhidos (componentes principais).

Uso do Matlab

Para entrar as matrizes no Matlab


Se so matrizes pequenas: Adiciona cada matriz. Cada linha separada por; A =[0.1,2.3,3.7;2.9,3,5;-1,-6,9;0,2,4] Separar cada clula por vrgula. Se o nmero tem decimal usar ponto para separar a casa decimal.

Se so matrizes grandes:
1. Usa-se o Origin: Procedimento para exportar:

Se so matrizes grandes:
2. Salva a matriz.

Exemplo de PCA para dados em duas dimenses

Fazer PCA dos dados x e y


Dados originais Dados ajustados

Para carregar a matriz no Matlab


Localiza a pasta onde est salva a matriz:

Carregando as matrizes:
load x.dat load y.dat

Formando a matriz geral:


>> A(1,:,:)=x; >> A(2,:,:)=y;

Transpondo a matriz: A1=A Centrando na mdia: [mcx,mx] = mncn(A1);

Auto escalando: [ax,mx,stdx]=auto(A1);

Encontrando a matriz de covarincia


c=cov(A1)

c=cov(A1) av=eig(c) [VB,DB] = eig(c)

R=CORRCOEF(A1) av=eig(R)

Auto-vetores Auto-valores 1_PC=96,30% 2_PC= 3,70%

Matriz de covarincia = matriz de correlao quando os dados so auto-escalados

Loads = Auto-vetor da matriz de correlao

Comandos resumidos para dados centrados na mdia


Para centrar na mdia A1 = matriz de dados originais. [mcx,mx] = mncn(A1); mcx: matriz de dados centrados na mdia. [scores,loads,ssq,res,reslm,tsqlm,tsq] = pca(mcx); How many principal components do you want to keep? ---pltscrs(scores) pltscrs(loads) Do you want eliminate the labels on the points? (Yes = 1) 2 What PC do you want on the x-axis? (Max = 2) 1 What PC do you want on the y-axis? (Max = 2) 2

Exemplo

Comandos resumidos para dados padronizados (auto-escalados)


Para dados auto-escalados A1 = matriz de dados originais. [ax,mx,stdx]=auto(A1) ax: matriz de dados padronizados [scores,loads,ssq,res,reslm,tsqlm,tsq] = pca(ax); How many principal components do you want to keep? -----pltscrs(scores) pltscrs(loads) Do you want eliminate the labels on the points? (Yes = 1) 2 What PC do you want on the x-axis? (Max = 2) 1 What PC do you want on the y-axis? (Max = 2) 2

Anlise de Componentes Principais


Principais Limitaes Assume apenas relaes lineares entre os atributos A interpretao dos resultados em termos dos valores originais pode ficar mais difcil

Anda mungkin juga menyukai