aula 04 – redu¸c˜ao do conjunto de...

84
Aula 04 – Redu¸ ao do Conjunto de Dados Clodoaldo A. M. Lima, Sarajane M. Peres 25 de agosto de 2015 Material baseado em: HAN, J. & KAMBER, M. Data Mining: Concepts and Techiniques. 2nd. 2006 Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Redu¸ ao do Conjunto de Dados 25 de agosto de 2015 1 / 50

Upload: tranthuy

Post on 10-Nov-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Aula 04 – Reducao do Conjunto de

Dados

Clodoaldo A. M. Lima, Sarajane M. Peres

25 de agosto de 2015

Material baseado em:HAN, J. & KAMBER, M. Data Mining: Conceptsand Techiniques. 2nd. 2006

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 1 / 50

Series Temporais

Definicao

Uma serie temporal estocastica corresponde a uma sequencia ordenada

de observacoes medidas ao longo do tempo: x = x1, x2, · · · , xN.

Uma serie temporal corresponde a uma das possıveis trajetorias passıveis

de serem geradas por um processo fısico em observacao, este denominado

processo estocastico, o qual, por sua vez, pode ser encarado como um

conjunto de variaveis aleatorias, uma para cada ındice de tempo t inteiro.

Cada valor observado de uma trajetoria alude a um dos possıveis valores

que poderiam ter sido observados, de acordo com a densidade de

probabilidades da respectiva variavel aleatoria.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 2 / 34

Series Temporais

Pode ser facilmente obtida de aplicacoes cientıficas, financeiras,

temperatura diaria, marketing, etc.

Geralmente esta associada a:

grande volume de dados

alta dimensionalidade e atualizacao constante

pode ser discreta versus continua

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 3 / 34

O que queremos fazer com os dados

oriundos de series temporais

Figura: Exemplo de uma Serie Temporal

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 4 / 34

Series Temporais

Pesquisa relacionada a dados oriundos de series temporais

Encontrar series temporais que apresentam comportamentossimilares

Buscar uma subsequencia nas series temporais

Reducao da dimensionalidade visando tarefa de classificacao,agrupamento, etc.

Segmentacao, a qual pode ser definida como:Dada uma serie temporal T , produzir a melhor representacao usando

somente K segmentos;

Dada uma serie temporal T , produzir a melhor representacao tal que o

erro maximo para qualquer segmento nao exceda a um limiar

especificado pelo usuario;

Dada uma serie temporal T , produzir a melhor representacao tal que o

erro combinado de todos os segmentos e menor que um limiar

especificado pelo usuario.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 5 / 34

Series temporais

Pesquisa em Series Temporais

No contexto de mineracao de dados temporais, o problema fundamental

e como representar os dados oriundos de series temporais

Solucao tradicional

Uma abordagem seria transformar a serie temporal para outro domınio

para reducao da dimensionalidade seguida por um processo de

segmentacao.

Medida de similaridade entre series temporais ou subsequencia de series

temporais e segmentacao sao duas tarefas principais para varias tarefas

de mineracao de dados.

Baseada na representacao de series temporais, diferentes tarefas de

mineracao de dados podem ser realizadas: descoberta de padrao e

clusterizacao, classificacao, descoberta de regras e sumarizacao.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 6 / 34

Representacao e indexacao de Series

Temporais

Reducao da Dimensionalidade

Realizar uma subamostragem

Discretizacao

Amostragem

O metodo mais simples

Neste metodo, uma taxa de N

me usada, onde N e comprimento da serie temporal T e

m e a dimensao apos reducao da dimensionalidade

Entretanto, o metodo de amostragem tem o problema de distorcer a forma da serie

amostrada.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 7 / 34

Representacao e indexacao de series

temporais

Discretizacao

Usar valor medio de cada segmento para representar o conjunto correspondente de

pontos de dados

Seja a serie temporal x = (x1, x2, · · · , xN) e m e a dimensao apos a reducao de

dimensionalidade, a serie temporal discretizada P = (p1, · · · , pm) pode ser obtida por

xk =1

ek − sk+1

ek∑

i=sk

xi

onde sk e ek denota o ponto inicial e fina do k-esimo segmento na serie temporal P.

Isto e, usando a media segmentada para representar a serie temporal

Este metodo e tambem chamada Piecewise Aggregate Approximation (PAA) por

Keogh et al. (2000)

Keogh et al. (2001) propos uma versao extendida chamada Adaptive Piecewise

Constant Approximation (APCA), na qual o comprimento de cada segmento nao e

fixado a priori, mas adaptativo dependendo da serie temporal

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 8 / 34

Representacao e indexacao de series

temporais

Figura: Reducao da Dimensionalidade de um serie temporal por

amostragem

Figura: Reducao da Dimensionalidade de um serie temporal por

discretizacao. As linhas horizontais representam a media de cada

segmentoClodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 9 / 34

Representacao de Series temporais

Figura: Formas de representacao de series temporais

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 10 / 34

Representacao de Series temporais

Limitacao

Uma importante caracteristica de todas as representacoes acima e que

elas produzem valores reais. Isto limita o algoritmo, estrutura de dados e

algumas definicoes.

Por exemplo, em deteccao de anormalidade nao podemos definir

significativamente a probabilidade de observar quaisquer conjunto de

coeficientes de wavelet.

Tais limitacoes tem levado varios pesquisadores a utilizar uma

representacao simbolica para series temporais.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 11 / 34

SAX - Symbolic Aggregate approXimation

SAX reduz uma serie temporal de comprimento arbitrario N para uma

string de comprimento arbitrario m (w < m, tipicamente w << n). O

tamanho do alfabeto e um numero inteiro arbitrario a, onde a > 2.

Passos envolvidos

Primero Passo - transforma os dados na representacao do PAA e

Segundo Passo - codifica a representacao PAA em uma string discreta.

Ha duas vantagens para fazer isto:

Reducao da Dimensionalidade: nos podemos usar o poder de

reducao da dimensionalidade do PAA e reduzir para representacao

simbolica.

Limintante inferior: medida de distancia entre strings simbolicas e

um limitante inferior da distancia verdadeira entre as series

originais.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 12 / 34

Limitante Inferior

Figura: Ideia de Limitante inferior

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 13 / 34

PAA

Definicao formal

Uma serie temporal T de comprimento N pode ser representada em um

espaco m-dimensional por um vetor C = c1, c2, · · · , cm. O i -esimo

elemento de C e calculado pela seguinte equacao:

ci =w

n

N

mi∑

j= N

m(i−1)+1

cj

Para reduzir a serie temporal de N dimensao para m dimensao, os dados

sao divididos em intervalos de tamanho igual a m. O valor medio dos

dados dentro deste intervalor e calculado e vetor com estes valores

passam a ser a representacao reduzida dos dados

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 14 / 34

PAA

A representacao pode ser vizualida como uma tentativa de aproximar a serie temporal

original com uma combinacao de funcoes como mostrado abaixo

Figura: A representacao PAA

A reducao da dimensionalidade e bastante intuitiva e simples

Tem sido mostrada efetiva quando comparada para transformada de Fourier e

Wavelets.

A serie deve ser normalizada para ter media zero e desvio padrao antes de converter

para o PAA.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 15 / 34

Discretizacao

Apos transformado a serie temporal em uma representacao baseada no

PAA, nos podemos aplicar uma trasnformacao adicional para obter uma

representacao discreta.

E desejavel ter tecnicas de discretizacao que produza simbolos

equiprovaveis

Isto e facilmente obtido uma vez que a serie temporal normalizada possui

uma distribuicao gaussiana.

Dado que a serie temporal normalizada segue uma distribuicao gaussiana,

nos podemos simplesmente determinar os breakpoints que irao produzir

area igual sobre a curva gaussiana.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 16 / 34

Discretizacao

Estes breakpoints podem ser determinados analisando a area sobre a

distribuicao gaussiana.

A tabela abaixo apresenta os breakpoints para os valores de a de 3 ate

10.

Figura: Tabela contendo os breakpoints que dividem a distribuicao

gaussiana em um numero arbitrario de regioes equiprovaveis

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 17 / 34

breakpoints

Uma vez que os breakpoints tem sido obtidos, nos podemos discretizar a

serie temporal da seguinte maneira:

1) Primeiro, obtemos o PAA da serie temporal

2) Todos os coeficientes que estao abaixo do menor breakpoint sao

mapeados para o sımbolo a, todos os coeficientes maiores ou igual ao

primeiro breakpoint e menor que o segundo breakpoint sao mapeados

para o simbolo b e assim sucessivamente.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 18 / 34

breakpoints

Figura: A representacao PAA

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 19 / 34

Palavra

Observe que neste exemplo os 3 sımbolos, a, b e c sao aproximadamente

equiprovaveis como era desejado.

Nos chamamos a concatenacao de simbolos que representa uma

sequencia de uma palavra.

Definicao

Uma subsequencia C de comprimento N pode ser representada como

uma palavra C = c1, · · · , cm como segue.

Seja αi denota o i -esimo elemento do alfabeto, isto e, α1 = a e α2 = b.

Entao o mapeamento de uma aproximacao PAA C para uma palavra C e

obtida como segue

ci = αj , seβj−1 ≤ ci ≤ βj

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 20 / 34

Medida de Distancia

Figura: Medida de Distancia

Figura: Tabela usada

pela funcao MINDIST

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 21 / 34

Descoberta de padrao

Definicao

Considere uma serie temporal T = e0, e1, e2, · · · , en−1 de tamanho n,

onde ei denota o evento gravado no tempo i , T pode ser discretizada em

um conjunto de simbolos tomados de um alfabeto Σ, isto e, |Σ|

representa os simbolos usados no processo de discretizacao. De uma

forma sistematica T pode ser decodificado como uma string de Σ

Por exemplo

A string abbcabcdcbab poderia representar uma serie temporal sobre o

alfabeto Σ = a, b, c , d

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 22 / 34

Algumas Definicoes

Periodicidade Perfeita

Considere uma serie temporal T , um padrao X e dito satisfazer

periodicidade perfeita em T com periodo p se partindo da primeira

ocorrencia de X ate o final de T toda proxima ocorrencia de X existe a p

ocorrencia atual de X . E possıvel que algumas das ocorrencias esperadas

de X possam falhar e esta conduz a uma periodicidade imperfeita.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 23 / 34

Algumas Definicoes

Confianca

A confianca de um padrao perıodico X ocorrendo na serie temporal T e

a razao de sua periodicidade atual para sua periodicidade perfeita

esperada. Formalmente, a confianca de uma padrao X com periodicidade

p partindo da posicao stPos e definida como:

conf (p, stPos,X ) =Periodicidade − atual(p, stPos,X )

Periodicidade − Perfeita(p, stPos,X )

onde Periodicidade-Perfeita (p, stPos,X ) = ⌊T⌋−stPos+1p

e

Periodicidade-Atual e calculada como a soma das ocorrencias de X em T

Por exemplo, em T = abbcaabcdbaccdbabbca, o padrao ab e periodico

com stPos = 0, p = 5 e conf (5, 0, ab) = 34 . Note que a confianca e 1

quando periodicidade perfeita e encontrada.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 24 / 34

Algumas Definicoes

Periodicidade Simbolica

Uma serie temporal e dita ter periodicidade simbolica para um dado

simbolo s com periodo p e partindo da posicao stPos se a periodicidade

de s em T e perfeita ou imperfeita com alta confiancao, isto e, s ocorre

em T na maioria das posicoes especificadas por stPos + i ∗ p, onde p e o

periodo e i um numero interio que assume valores consecutivos partindo

de 0.

Por exemplo, em T = bacdbabcdbaccdabc , o simbolo a e periodico

com stPos = 1 e p = 4, isto e, a ocorre em T na posicao 1, 5, 9 e 13.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 25 / 34

Algumas Definicoes

Periodicidade de Sequencia

Uma serie temporal T e dita ter periodicidade de sequencia para um

padrao X partindo de stPos, se |X | ≥ 1 e a periodicidade de X em T e

ou perfeita ou imperfeita com alta confianca, isto e, X ocorre em T na

maioria das posicoes especificadas stPos + i ∗ p, onde p e o periodo e

i ≥ 0 assume valores consecutivos partindo de 0.

Por exemplo, em T = abbcaabcdbabcdbabbca, o simbolo ab e

parcialmente periodico de stPos = 0 e periodo de valor 5.

Note que periodicidade simbolica e um caso especial da periodicidade de

sequencia, onde |X | = 1.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 26 / 34

Algumas Definicoes

Periodicidade de segmento

Uma serie temporal T de comprimento n e dita ter periodicidade de

segmento para uma padrao X com periodo p e partindo da posicao

stdPos se p = |X | e a periodicidade de X em T e perfeira ou imperfeita

com alta confianca, isto e, X ocorre em T na maioria das posicoes

especificadas por stPos + i ∗ p, onde o inteiro i assume valores

consecutivos partindo de 0.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 27 / 34

Definicao

Periodicidade em Subsecao de uma Serie Temporal

Uma serie temporal T possui periodicidade simbolica, sequencia ou

segmento com periodo p entre posicoes stPos e endPos (onde

0 ≥ stPos < endPos ≥ |T |), se o periodo investigado satisfaz as

definicoes acima, considerando somente subsecao [stPos, endPos] de T .

Por exemplo, em T = abdabbcaabbcdabccdabbbca, o padrao ab e

periodico com p = 5 na subsecao [3, 19] de T

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 28 / 34

Deteccao de Periodicidade

Foi proposto por Faraz et al. (2011) e envolve duas fases.

Na primeira fase e contruida a Suffix Tree para a serie temporal

Na segunda fase, e calculado a periodicidade de varios padroes

encontrados na serie temporal.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 29 / 34

Primeira Fase

Representacao baseada na Suffix-Tree

Suffix tree e uma famosa estrutura de dados que tem sido mostrada ser

muito util no processamento de string.

Uma Suffix tree para uma string representa todos os seus sufixos. p

Para cada sufixo da string ha um caminho distinto da raiz para a

correspondente folha na Suffix Tree.

Consegue capturar eficientemente e destacar as repeticoes de substring

dentro uma string.

Figura abaixo mostra uma Suffix Tree gerada para a string abcabbabb$

onde $ denota um marcador final para a string.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 30 / 34

Suffix Tree gerada para a string

abcabbabb$

Figura: Suffix Tree

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 31 / 34

Geracao da Suffix Tree

Cada ramo e rotulado pela string que ele representa

Cada ramo intermediario le uma string (da raiz ate o ramo), a qual e

repetida pelo menos duas vezes na string original.

Cada no intermediario armazena um numero que e o comprimento da

substring lida quando atravessando da raiz ate o no intermediario

Cada no folha armazena um numero que e a posicao de partida da string

correspondente ao sufixo produzido quando a arvore e atravessada da

raiz ate a folha.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 32 / 34

Detectando a periodicidade

Apos a construcao da arvore, esta e atravessada na ordem bottom-up para constucaodo vetor de ocorrencia para cada ramo conectando um no interno a seus pais.

O algoritmo comeca com os nos tendo somente um no como filho, cada um destes nospassa o valor de seus filhos para o ramo que conecta a seus paisOs valores sao usados pelo ramo anterior para criar seus vetores de ocorrenciaO vetor de ocorrencia do ramo e contem os indices das posicoes na quais a substringda raiz para o ramo e existe na string original.

Segundo, nos consideramos cada ramo v tendo uma mistura de nos folhas e nao folhascomo filhos.O vetor de ocorrencia do ramo v conectando a seus pais e construido por combinandoo vetor de ocorrencia dos ramos que conecta v para seus nos nao folhas e os valoresvindos de seus nos filhos folhas

Finalmente, ate nos encontrarmos todos filhos direto da raiz, nos recursivamenteconsideramos cada no u tendo somente filhos nao folhas. O vetor de ocorrencia doramo conectando u a seus nos pais e construindo combinando os vetores de ocorrenciados ramos conectando u a seus nos filhos.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 33 / 34

Suffix Tree

Aplicando o procedimento de travessia bottom-up sobre a arvore suffix

tree produz o seguinte vetor de ocorrencia mostrado abaixo

Figura: Suffix Tree com travessia bottom-up

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 34 / 34

Deteccao Periodicidade

Para cada ramo intermediario, com base no vetor de ocorrencia, e calculado a

diferenca entre quaisquer dois elementos sucessivos no vetor de ocorrencia, gerando

um outro vetor chamado vetor de diferenca.

Cada valor no vetor de diferenca e um periodo candidato, partindo do valor

correspondente no vetor de ocorrencia

Cada periodo pode ser representado por uma 5-tupla (X , p, stPos, endPos, conf ),

denotando o padrao, valor do periodo, posicao de partida, posicao de termino e

confianca.

Para cada periodo candidato (p = diffvec[j]), o algoritmo scaneia o vetor de ocorrencia

partindo de seu valor correspondente (stPos = occurvec[j]), e incrementa a contagem

de frequencia do periodo (freq(p)) se e somentese o valor do vetor de ocorrencia e

periodico com relacao a stPos e p.

Em seguida, a confianca e calculada, se esta e maior que um certo limiar, este e

considerado um padrao periodico.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 10 – Descoberta de Padroes Periodicos em Series Temporais11 de Dezembro de 2013 35 / 34

Analise em Componentes Independentes -

ICA

Historico

Tecnica ICA surge na decada de 1980 na modelagem de redes

neurais

Em meados de 1990, novos alogritmos introduzidos por varios

grupos de pesquisas (Bell and Sejnowski, 1995; Lee et al., 1999;

Hyvarinen and Oja, 1997; Hvarinen, 199a)

Decada de 1990: uso em problemas reais como processameno de

sinais biomedicos e separacao de sinais de audio em

telecomunicacoes

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 2 / 50

Analise em Componentes Independentes -

ICA

x1(t) = a11s1(t) + a12s2(t)

x2(t) = a11s1(t) + a12s2(t)

Objetivo

Estimar si (t) e tambem aij

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 3 / 50

Analise em Componentes Independentes -

ICA

Motivacao

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 4 / 50

Analise em Componentes Independentes -

ICA

Definicao

Observacao de n combinacao lineares de x1, x2, · · · , xn de n componentes

s

xj = aj1s1 + aj2s2 + · · ·+ ajnsn, ∀j

x = As

Computar a inversa de A e obter as componentes independntes

s = Wx

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 5 / 50

ICA versus PCA - Similaridades

Executam uma transformacao linear

Matriz de fatoracao

PCA: Matriz de Fatoracao de baixo rank paracompressao

ICA: Matriz de Fatoracao rank completo para remover asdependencias entre as colunas

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 6 / 50

ICA versus PCA - Diferenca

PCA versus compressao

M ≤ d

ICA nao faz compressao

Mesmo numero de caracterısticas (M = d)

PCA remove apenas correlacoes, nao dependencia de altas ordens

ICA remove correlacoes, e dependencia de altas ordens

PCA: alguns componentes sao mais importantes que outras

(baseado em auto-valores)

ICA: componentes sao igualmente importante.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 7 / 50

PCA versus iCA

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 8 / 50

ICA para filtragem de Imagem

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 9 / 50

Analise em Componentes Independentes -

ICA

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 10 / 50

Analise em Componentes Independentes -

ICA

Processo whithening (branqueamento)

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 11 / 50

Whithening

Objetivo

Tornar as variaveis aleatorias descorrelacionadas e com variancia 1

z = Vx

V = ED− 12ET

E - e a matriz ortogonal dos autovetores da matriz de covariancia E [xxT ]

D - e a matriz diagonal dos autovalores da matriz de covariancia E [xxT ]

z sera o resultado de vetores medidos x1 e x2 apos whithening

Busca de fontes s1 e s2 atraves das variaveis z1 e z2

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 12 / 50

Whithening

Prova:

E [xxT ] = EDET

E [zzT ] = E [Vx(Vx)T ] = E [VxxTV ] = VE [xxT ]V T

E [zzT ] = (ED− 12ET )(EDET )ED− 1

2ET

E [zzT ] = ED− 12ETEDETED− 1

2ET

E [zzT ] = ED− 12DD− 1

2ET

E [zzT ] = ED12D− 1

2ET = EET = I

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 13 / 50

Whithening - Matlab

Funcoes usadas no Matlab para descobrir V

XX = cov(X );

[E ,D] = eig(XX );

V = E ∗ (D(−1/2)) ∗ E ′;

Assim foi possıvel obter a matriz para descorrelacionar os dados da

matriz de sinais medidos x1 e x2A busca passou a ser feita entao na matriz Z e nao na matriz X

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 14 / 50

Solucionando ICA s = Wx

Dado um x

encontrar z (a estimacao de s)

encontrar w (a estimacao de A−1)

Remova a media, E [x ] = 0

Whithening, E [xxT ] = I

Encontre um W ortogonal otimizando uma funcao objetiva

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 15 / 50

Algoritimos

Ha mais de 100 algoritimos diferentes de ICA

Estimacao da Informacao Mutua

Kernel - ICA (Back and Jordan, 2002)

Estimacao da Entropia, negentropy

Infomax - ICA (Bell and Sejnowski, 1995)Radical (Learned-Miller and Fisher, 2003)FasICA (Hyvarinen, 199)Girolami and Fyfe, 1997

Estimacao ML

KDICA (Chen, 2006)EM - ICA (Welling)Mackay 1996; Pearlmutter and Parra 1996; Cardoso 1997

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 16 / 50

Ha mais de 100 algoritimos diferentes de

ICA

Metodos baseado em cumulantes, momentos de altas ordens

Jade (Cardoso, 1993)

Metodos baseados em correlacao nao-linear

(Jutten and Herault, 1991)

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 17 / 50

Variavel Aleatoria - Adendo

Definicao

Dado um experimento aleatorio, descrito pelo espaco de probabilidade

(Ω,A,P), uma funcao numerica X : Ω → R sera dita uma variavel

aleatoria.

Exemplo

X = numero lancado e uma variavel aleatoria. Mais precisamente

X : Ω = 1, 2, · · · , 6 → R tal que X (ω) = ω e uma funcao numerica do

experimento, e logo e uma variavel aleatoria.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 18 / 50

Entropia, Entropia Conjunta e Entropia

Condicional

Entropia

Shanon mostrou que processos aleatorios tais como a fala ou a musica

tem uma complexidade abaixo da qual o sinal nao pode ser comprimido.

A esta complexidade ele chamou de entropia.

Definicao

Suponhamos que X e uma variavel aleatoria discreta com alfabeto χ e

distribuicao de probalidade p(x) = Pr(X = x), x ∈ χ

A entropia H(X ) de uma variavel aleatoria X e definida por

H(X ) ≡ −∑

x∈χ

p(x) log p(x)

onde o logaritmo e na base 2.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 19 / 50

Exemplo

Pretende-se calcular a entropia de uma v.a. X em que todos os sımbolos do alfabeto

χ = A,B,C ,D sao todos equiprovaveis. Aplicando a definicao de entropia, obtem-se

H(X ) = −4

(

1

4log

1

4

)

= 2bits

que coincide exatamente com o numero de bits necessario para codificar cada sımbolo.

Seria conicidencia?

Reescrevendo

H(x) = −E [log p(X )]

Como − log p(x) representa, no caso de sımbolos equiprovaveis, o numero de bits

necessario para representa cada sımbolo, entao H(X ) e o valor esperado de uma

contante; o numero de bits por sımbolo.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 20 / 50

Entropia conjunta

Definicao

A entropia conjunta H(X ,Y ) das variaveis aleatorias X e Y com

distribuicao de probabilidade conjunta p(x , y) e definida como

H(X ,Y ) ≡ −∑

x∈X

y∈Y

p(x , y) log p(x , y)

ou equivalentemente

H(x ,Y ) ≡ −E [log p(X ,Y )]

a entropia conjunta de n variaveis aleatorias e definida de forma analoga

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 21 / 50

Entropia

Definicao

Se (X ,Y ) ∼ p(x , y), entao a entropia condicional H(Y |X ) e definida como

H(Y |X ) ≡ −∑

x∈X

p(x)H(Y |X = x)

H(Y |X ) = −∑

x∈X

p(x)∑

y∈Y

p(y |x) log p(y |x)

H(Y |X ) = −∑

x∈X

y∈Y

p(x)p(y |x) log p(y |x)

H(Y |X ) = −∑

x∈X

y∈Y

p(x , y) log p(y |x)

H(Y |X ) = −Ep(y,x) log p(Y |X )

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 22 / 50

Regra da cadeia

A entropia verifica a seguinte propriedade

H(X ,Y ) = H(Y |X ) + H(X )

Esta regra deriva da regra da cadeia nas probabilidades, em que sabemos

que

p(x , y) = p(y |x)p(x)

Aplicando o logaritmo a esta equacao e depois o valor esperado relativo a

p(x , y), obtem-se o resultado enunciado no enunciado do teorema.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 23 / 50

Entropia Relativa

Conceito

A entropia relativa D(p‖q) mede a ineficiencia de assumir que uma distribuicao e qquando a distribuicao e p. Por exemplo, se soubermos a distribuicao verdadeira deuma variavel aleatoria, podemos construir um codigo com comprimento medio H(p).No entanto, se usarmos um codigo obtido para uma distribuicao q, haveria umadesadequacao do codigo a variavel aleatoria e seriam necessarios H(p) + D(p‖q) bitsem media para descrever a variavel aleatoria

Definicao

A entropia relativa ou divergencia de Kullback-Leibler entre duas distribuicoes p e q edefinida por

D(p‖q) ≡∑

x∈X

p(x) logp(x)

q(x)

D(p‖q) = Ep(x)

[

logp(X )

q(X )

]

Usa-se a convencao de que 0 log 0q= 0 e p log p

0=∞

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 24 / 50

Informacao Mutua e Informacao Mutua

Condicional

Definicao Informal

E uma medida da quantidade de informacao que uma variavel aleatoria contem acercada outra.

Definicao

Considere duas variaveis aleatorias X e Y com distribuicao conjunta p(x , y) edistribuicoes marginais p(x) e p(y). A informacao mutua I(X;Y) e a entropia relativaentre a distribuicao conjunta e o produto das marginais

I (X ;Y ) ≡∑

x∈X

y∈Y

p(x , y) logp(x , y)

p(x)p(y)

I (X ;Y ) = D(p(x , y)‖p(x)p(y))

I (X ; y) = Ep(x,y)

[

logp(X ,Y )

p(X )p(Y )

]

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 25 / 50

Propriedades da Informacao Mutua

I (X ; y) = I (Y ;X )

I (X ;X ) = H(X )

I (X ;Y ) = H(X )− H(X |Y )

I (X ;Y ) = H(Y )− H(Y |X )

I (X ;Y ) = H(X ) + H(Y )− H(X ,Y )

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 26 / 50

Exercıcio

Considere duas variaveis aleatorias independentes X e Y com distribuicoes

de probabilidade p(x) e p(y). Qual a informacao mutua I (X ;Y )?

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 27 / 50

Teorema do Limite Central

Na figura abaixo pode ser visto um desenho esquematico do teorema do

limite central.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 28 / 50

Teorema do Limite Central

Exemplo

A distribuicao de probabilidade da variavel resultante do lancamento de

um dado segue a distribuicao uniforme, ou seja, qualquer valor

(1,2,3,4,5,6) tem a mesma probabilidade (1/6) de ocorrer.

No entanto, se ao inves de lancar um dado, sejam lancados dois dados e

calculada a media, a media dos dois dados seguira uma distribuicao

aproximadamente Normal.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 29 / 50

Teorema do Limite Central

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 30 / 50

Teorema do Limite Central

Tabela de frequencia da media dos dois dados

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 31 / 50

Teorema do Limite Central

Histograma da media dos dois dados

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 32 / 50

Teorema do Limite Central

Conforme pode ser visto no histograma anterior, o histograma da media

dos dois dados resulta aproximadamente Normal. Alem disso, observa-se

que a aproximacao da distribuicao Normal melhora na medida que se

fizesse a media do lancamento de mais dados.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 33 / 50

Negentropia

Definicao

E uma medida baseada na entropia diferencial, conhecida como medida

de nao gaussianeidade.

A Negentropia para uma variavel aleatoria X e definida como

(Camon,1994)

J(x) = H(xg )− H(x)

onde H(X ) e a entropia de x e H(xg ) e entropia de uma v.a gaussiana

com mesma media e matriz de covariancia da v.a x .

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 34 / 50

Negentropia

Formas para estimar a Negentropia de um sinal sem calcular a entropia dos dados diretamente

O metodo classico para estimacao da Negentropia e representado

pela seguinte equacao:

J(x) ≈1

12E [y3]2 +

1

48K (y)2

onde y tem media zero e variancia unitaria e K e uma medida de

kurtose (mede o grau de achatamento de uma curva).

Outra abordagem seria substituir o momento polinomial por uma

funcao G , propondo, desta forma, uma aproximacao baseada na

experanca E (Hyvarinen;Karhunen; Oja, 2001)

J(x) =

N∑

i=1

ki [E (Gi (x))− E (Gi (xg ))]2

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 35 / 50

Negentropia

Geralmente, a funcao G , e escolhida, de forma que ela nao cresca muito

rapidamente. A seguir, obteremos varios exemplos de funcao G.

G1(y) =1

a1log(cosh(a1)y)

G2(y) = exp(−y2

2)

G3(y) =y4

4

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 36 / 50

Informacao Mutua e Negentropia

Encontrar a direcao em que a informacao mutua e minimia e equivalente

encontrar a direcao em que a negentropia e maxima.

maximizarI (y1, y2, · · · , yn) ⇔ minimizaJ(yi )

Medida de nao-gaussianeidade

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 37 / 50

Abordagens

ICA baseado em cumulantes de segunda e quarta ordem - No ICA ascomponentes de z devem ser estatiscamente independente, isto e equivalente adizer que todos cumulantes cruzados de ordem superior sejam zeros. Como(1994) sugeriu que restringissemos ate os cumulantes de ordem 4 e suficientepara muitas aplicacoes praticas.

k1(zi ) = E [zi ] = 0, k2(zi , zj) = E [zi , zj ], k3(zi , zj , zk) = E(zi , zj , zk)]

k4(zi , zj , zk , zr ) = E [zi , zj , zk , zr ]− E [zizj ]E [yk , zr ]− ...

E [zizk ]E [zjzr ]− E [zizr ]E [zjzk ]

ICA baseado na Informacao Mutua - Estima w , minimizando a informacaomutua entre as variaveis aleatorias transformadas.

ICA baseado na Negentropia - Estima w , maximizando a Negentropia.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 38 / 50

Processo de busca da matriz W

Busca da matriz w de vetores ortogonais onde:

s = wz

Funcao custo

J(w) ∝[

E [G (wT z)]− E [G (v)]]2

Busca do vetor w que maximiza a negentropia J(w) da matriz z na

projecao dada por w .

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 39 / 50

Otimizacao pelo metodo do gradiente

Derivar a funcao custo em relacao a projecao w a ser procurada:

∂J(wn)

∂wn

∝∂(E [G (wT

n z)]− E [G (v)])2]

∂wn

Que pode ser aproximada por

∂J(wn)

∂w= E [G (wT

n z)− E [G (v)]].zg(wTn z)

onde g e a derivada G

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 40 / 50

Ortogonalizacao

E feita apos a busca de cada uma das projecoes w ate que se encontre

todas as projecoes correspondentes a todas as componentes

independentes

wn ↔ wn −

N−1∑

j=1

(wTn wj)wj

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 41 / 50

Algoritmo para ICA

1. Centralize os dados para que tenha media zero;

2. Faca o ”whithening”para obter a matriz z

3. Escolha o numero de componentes independentes (nd) a serem estimadas

4. Escolha um valor inicial para wn para γ

5. Atualize ∆zg(wTn z)

6. Normalize w ← w

‖w‖

7. Atualize ∆ ∝ (G(wTn z)− E(G(v)])− γ

8. Se nao convergir, volte ao passo 4

9 Proceda a ortogonalizacao de wn, conforme expressao

wn ← −N−1∑

i=1

(wTn wj)wj

10. Normalize w ← w

‖w‖

11. Se wn nao convergir, voltar ao passo 5

12 Incremente n = n + 1. Se n < nd , volte ao passo 4

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 42 / 50

Consideracoes

1 ICA busca uma representacao em que as componentes

transformadas possuam a mınima dependencia em termos

estocasticos, utilizando como criterio de busca a medida da nao-

gaussianeidade das componentes.

2 O Algoritmo elaborado (no Matlab) precisou de ajustes quanto as

condicoes iniciais do metodo de otimizacao utilizado.

3 O processo de ortogonalizacao e muito dependente da estimativa

da primeira projecao, pois erro nela se propaga as outras que sao

ortogonais a ela.

4 E uma ferramenta que vai alem da analise em componentes

principais, para a estimativa dos sinais.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 43 / 50

Analise de Discriminante Linear

Seja x1, x2, · · · , xN ∈ Rd , um conjunto de N amostras pertencendo a dois conjuntos de

classes diferentes, A e B. Para cada classe, nos podemos definir a media amostral

xA =1

NA

x∈A

x , xB =1

NB

x∈B

x

onde NA, NB representam a quantidade de instancias em A e B, respectivamente. Paracada classe nos podemos definir uma matriz semidefinida positiva dada por:

SA =∑

x∈A

(x − xA)(x − xA)T, SB =

x∈B

(x − xB)(x − xB)T

Cada uma destas matrizes expressa a variabilidade amostral em cada classe.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 44 / 50

Analise de Discriminante Linear

Idealmente, nos gostariamos de encontrar um hiperplano, definido pelo

vetor φ, tal que, se projetarmos os dados amostrais sobre este, sua

variancia deveria ser minıma. Isto pode ser expressado como:

minφ

(φTSAφ+ φTSBφ) = minφ

(φT (SA + SB)φ) = minφ

φTSφ

onde S = SA + SB por definicao. Por outro lado, a matriz entre as duas

classes e dada por:

SAB = (xA − xB)(xA − xB)T

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 45 / 50

Analise de Discriminante Linear

Logo desejamos encontrar um hiperplano a fim de maximizar a distancia entre as

media das duas classes e ao mesmo tempo minimizar a variancia em cada classe.

Matematicamente,isto pode ser descrito pelo criterio de maximizacao de Fisher

maxφJ (φ) = max

φ

φTSABφ

φTSφ

Este problema de otimizacao pode ter muitas solucoes com o mesmo valor da funcao

objetiva. Isto e, para uma solucao φ∗ todos os vetores cφ∗ da exatamente o mesmo

valor. Se, sem perda de generalidade, nos substituimos o denominador por uma

restricao de igualdade a fim de escolher somente uma direcao. Entao o problema

torna-se

maxφ

φTSABφ

s.t.φTSφ = 1

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 46 / 50

Analise de Discriminante Linear

O lagrangeano associado com este problema e:

L(φ, λ) = φTSABφ− λ(φTSφ− 1)

onde λ e o multiplicador de lagrande que esta assoaciado com a restricao

do problema. Desde que SAB e semidefinida positiva o problema e

convexo e o minımo global sera um ponto tal que:

∂L(φ, λ)

∂φ= 0 ↔ SABφ− λSφ = 0

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 47 / 50

Analise de Discriminante Linear

O φ otimo pode ser obtido como autovetor correspondente para o maior

auto valor do seguinte sistema generalizado

SABφ = λSφ → S−1SABφ = λφ

LDA para varias classes e uma extensao natural do caso anterior. Dado n

classes, nos necessitamos definir a matriz de dispersao: a matriz

intra-classe torna-se

S = S1 + S2 + · · ·+ Sn

enquanto a matriz inter-classe e dada por

S1,··· ,n =

n∑

i=1

pi (xi − x)(xi − x)T

onde pi e o numero de exemplos da i -esima classe, xi e media para cada

classe, e xi e o vetor medio calculado por:

1nClodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 48 / 50

Analise de Discriminante Linear

A transformacao linear φ que nos desejamos encontrar pode ser obtido

por solucionando o seguinte problema de auto-valor generalizado

S1,2,··· ,n = λSφ

LDA pode ser usado a fim de identificar quais as caracteristicas mais

significantes juntas com o nivel de significancia expressado pelo

correspondente coeficiente de projecao do hiperplano.

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 49 / 50

Analise de Discriminante Linear

Tambem LDA pode ser usado para classificar examples desconhecidos.

Desde que a transformacao φ seja dada, a classificacao pode ser realizada

no espaco transformacao baseado na medida de distancia d . A classe do

novo ponto z e determinado por

class(z) = arg minn

d(zφ, xnφ)

onde x e o centroid da n-esima classe. Isto significa que nos projetamos

o centroid de todas as classes e os pontos desconhecidos sobre o espaco

definido por φ e atribuimos o ponto para a classe mais proxima com

relacao a d .

Clodoaldo A. M. Lima, Sarajane M. Peres Aula 04 – Reducao do Conjunto de Dados 25 de agosto de 2015 50 / 50