Técnicas Não Paramétricasfatc/AM/JanelaParzenKVizinhos.pdf · Estimação da Densidade...

Post on 18-Apr-2020

5 views 0 download

Transcript of Técnicas Não Paramétricasfatc/AM/JanelaParzenKVizinhos.pdf · Estimação da Densidade...

Técnicas Não Paramétricasde

Estimação de Densidade

Renata Cardoso e Francisco Carvalho

Conteúdo

4 – Janelas de Parzen

3 – Estimação da densidade

1 – Introdução

2 – Histograma

As abordagens de estimação “ Não Paramétricas”

Em muitos problemas práticos

Introdução

• A forma da densidade é desconhecida• As densidades são multi-modais (possuem

mais de um máximo local)

Existem dois tipo de métodos

§ Estimar a densidade f(x/cj) a partir da amostraEx: kernel

§ Estimar a probabilidade a posteriori P(cj/x)Ex:k-vizinhos

Conteúdo

4 – Janelas de Parzen

2 – Histograma

1 – Introdução

3 – Estimação da densidade

Histograma

Método mais antigo e mais simples para estimaçãode densidade

A estimação depende da origem e da largura (h) usada para os intervalos

875625375125-125

60

50

40

30

20

10

0

dias

Fre

quen

cia

h

Origem

Estimação da Densidade

Histograma

h – largura de In – tamanho da amostra

8007006005004003002001000

20

10

0

dias

Freq

uenc

ia

Exemplo x = 80 → [75,125]

045.08650

20)( =

×=xf

f(x)= Freq (I) / x ∈ Ih × n

Histograma

8007006005004003002001000

20

10

0

dias

Freq

uenc

ia

Problema: A função não é contínua

Região de descontinuidade

Histograma

Problema:

Raramente usado em espaços multidimensionais

Em uma dimensão: N intervalos

Em duas dimensões: N2 intervalos

Em p dimensões: Np intervalos

Conseqüência: requer muitos exemplos

Conteúdo

4 – Janelas de Parzen

2 – Histograma

1 – Introdução

3 – Estimação da densidade

Estimação da Densidade

')'( xx dpP =

R(x)

x

RegiãoProbabilidade de x⊂ R

Estimação da Densidade

V é o volume de R

R

x

Região VpdpPR

×== ∫ )(')'(ˆ xxx

§ Se f(x) é contínua § R é pequena

n exemplos construidos independentemente e idd seguno p(x)

R

x

Região

x21 x7xx4x6x3 x8knk

k PPkn

P −−

= )1(

Probabilidade de que kelementos estejamem R

P- probabilidade de xestar em R

Estimação da Densidade

A partir de uma amostra iid

x

x21 x7xx4x6x3 x8

Estimação da Densidade

E[k] = n P

Para n grande

nk

P̂ =

Estimação da densidade p(x)

nk

P̂ =

nk

Vp =×)(ˆ x

nVk

=)(ˆ x

VpP ×= )(ˆ x

Igualando as duas expressões

Estimação da Densidade

v Vn é o volume de Rnv n é o tamanho da amostrav kn(x) uma variável aleatória

dependente da vizinhança de x.

nVk

pn

nn ×

=)(

)(x

xEstimativa de p(x)

Estimação da Densidade

Procedimento: Formar uma sequencia de regiões R1, R2, …contendo x, a primeira com 1 exemplo, a segunda com 2, etc

3/nV

x6 x3 x4 x5

x

303

)(ˆ30 ×=

nVxp

Exemplo: n=30

Estimação da Densidade

pn(x) converge para p(x) se

0lim =∞→ nnV ∞=

∞→ nnklim 0lim =

∞→ nkn

n

Estimação da Densidade

Kernel

K-vizinhos

Duas formas para obter )x(f)x(fn →

Conteúdo

4 – Janelas de Parzen

2 – Histograma

1 – Introdução

3 – Estimação da densidade

Janelas de Parzen

v R é um hiper-retângulo de dimensão dv K é uma função contínua também chamada de

estimador Kernel

Funções de Kernel (Estatística)

Para cada x, pn(x) pode ser interpretadocomo uma variável aleatória pois dependede uma amostra iid x1,...,xn

K modela as irregularidades em uma vizinhançade x com relação a cada exemplo da amostra

A estimativa depende da amostra, do kernel edo tamanho da vizinhança em torno de x

Janelas de Parzen

∑=

−=n

iin xxK

nxp

1

)(1

)(

Estimador kernel uniformeCaso unidimensional

Uma região de largura h écentrada em cada ponto xi da amostra

K(x-xi) = 1/(b-a) se x ∈ [xi – (b-a)/2, xi + (b-a)/2]0 caso contrário

xi

x

h

a b

R(X)

x6 x3 x4 x5

x

x3

x4

x6

k(x-x3)

k(x-x4)

k(x-x5)

x5

1/vK(x-x3) = 1

∑=

−=n

iin xxK

nxp

1

)(1

)(

nVxpn ×

=3

)(

Janelas de Parzen

Exemplo

K(x-x4) = 1K(x-x5) = 1K(x-x6) = 0

Função Janela

=senão ,0

2/1x se ,1)(xK

Número de exemplos no hipercubo

Janelas de Parzen

=

−senão ,0

2/x-x se ,1 i n

n

i hh

xxK

∑=

−=

n

i n

in h

xxKk

1

A densidade de Parzen pode ser reescrita como

∑=

−=

n

i n

i

nn h

xxK

hnxp

1

11)( hv =parametro de suavização

Janelas de Parzen

A estimativa dependetrês fatores :

• valor de hv• amostra• função K

v Quando hn é grande a estimativa tem baixa resoluçãov Quando hn é pequeno a estimativa é sensível a ruídosv Quando n é ilimitado, hn aproxima-se de zero

quando n cresce (Vn = 1 / raiz(n))

Janelas de Parzen

hn

Condições que K deve satisfazer

∫ =1 dz )(zK0)( ≥zK

onde

−=

n

i

hxx

z

pn(x) função densidade ⇒ K função densidade

Se K(.) é uniforme

hn = largura do intervalo

Exemplo: K(.) é uma uniforme no intervalo [xi-hn/2;xi +hn/2]

0

1=

v

i

hxxK Se x ∈ [xi – h/2, xi + h/2]

Caso contrário

Janelas de Parzen

Amostra: 12.0, 14.0, 15.0, 17.0, 20.0

Janelas de Parzen

Se hn =1.5

12.0 14.0 15.0 17.0 20.0

13.0

1/hn

27.0)11(5.15

1)13(5 =+

×==xp

Se hn =2.5 24.0)111(5.25

1)13(5 =++

×==xp

pn(x) depende da amostra aleatória x1,...,xn e tem estatísticas

)(ˆ xpn• média)x(2

nσ• variância

)()(lim xpxpnn =∞→

0)x(lim 2nn =σ∞→

Se

Janelas de Parzen

A estimativa pn(x) converge para p(x)

Janelas de Parzen

1 - Convergência da média

)(xfné a média de fn(x)Considere que

∑=

−==

n

i v

i

nnn h

xxK

hExpExp

1

1n1

)]([)(

2 - Convergência da variância

n

nv

i

nh

xph

xxK

x

)(sup

)(2

×

≤σ

2

2

)(2)(

21

n

i

hxx

n

i eh

xxK

−−

=

−π

Janelas de ParzenEstimador kernel Guassiano (Normal) Caso unidimensional

∑=

−=n

i n

i

nn h

xxKhn

xp1

11)(A estimativa de f(x) é dada por

2

2

21

)(u

euK−

Função Janela

nhhn /1=

h1: parâmetro

2)( 2

21 ixx

n

i eh

xxk

−−

=

−π

Janelas de Parzen

Estimador kernel Normal PadrãoCaso unidimensional

xi

x

h

hn =1

A estimativa é soma de normais centradas nas amostras

Estimativas de Densidade Parzen

Diferentes tamanhos de h: caso unidimensional

Normal Padrão

• Quando n cresce a estimativa converge

Se K(.) é normal padrão

Exemplo:

Janelas de Parzen

Amostra: 12.0, 14.0, 15.0, 17.0, 20.0

12.0 14.0 15.0 17.0 20.0

13.0

Janelas de Parzen

Cálculo da p5(x=13)

x1 =12 ( ) 24.0e21

12xk 2)12x( 2

=−−

x2=14 k(x-14)=0.24

x3=15 k(x-15)=0.05

x4=17 k(x-17)=0.001

x5=20 k(x-20)=0.00

p5(x=13) =0.106

Epanechnikov

<

senão ,0

5t para ,5

51

43 2x

Biweight

( ) 1 |t| para t11615 22 <−

TriangularGuassiana

2

2

21 t

e−

π

Retangular

senão ,0

1t para 21 <

Janelas de Parzen

Exemplos de Kernels com

−=

n

i

hxx

t

senão ,01t para t-1 <

Estimativas de Densidade Parzen

Mistura de Triangulare Uniforme

Exemplos de Densidade

Caso: retangular (uniforme)

Caso: Normal

Informação a priori

Como escolher hv

Validação cruzada

Plotar diversas estimativas e escolher a estimativa que está mais de acordo com informação a priori dada por um especialista.

Usar uma amostra pequena para avaliar o erro deClassificação. Selecionar aquela de menor taxa de erro.

Minimização do erro médio quadrático MSE

{ } 22)()())(( nnn xfxEpxpMSE σ+−=

Regiões de Decisão

Calcula-se pn(x/cj) j=1,…,m e associa x a classe onde pn é máximaRegra

Janelas de Parzen

∑=

−=

n

i n

ip

nn h

Khn

p1

11)(

xxx

hn =parametro de suavização

Janelas de Parzen paraDados Multivariados

Estimativa

p = dimensão do espaço

=

ip

i

i

x

x

M1

x vetor de observações

−=

2exp)2()( 2 xx

xTp

K π

Janelas de Parzen paraDados Multivariados

Kernel Gaussiano

<+−

=senão ,0

1 se ,2

)2)(1()(

xxx

xp

T

cp

KKernel BartlettEpanechnikov

∑∏= =

−=

n

i

p

j j

ijjj

p h

xxK

hhnp

1 11

11)(ˆ

Kx

Janelas de Parzen paraDados Multivariados

Uma forma deestimar a funçãode densidade

Não implica em independênciadas variaveis

),,( 1 ipii xx K=x

Janelas de Parzen

Kernel Normalbi-dimensional

Exemplo:

Referências Bibliográficas

1 – Fukunaga, K. 1990. Introduction to Statistical Pattern Recogintion. Academic Press.

2 – Meyer, P. 1983. Probabilidade: Aplicações à Estatística.Livros Técnicos e Científicos Editora

3 – Duda, R. O. and Peter E. H. 2000. Pattern Classification (2nd Edition). Wiley- Interscience.

4 – Silevrman, B. W. 1986 Density Estimation for Statistics and Data Analysis. Chapman & Hall.

Método de K-vizinhosmais próximos

Conteúdo

•• CaracterísticasCaracterísticas•• Estimativa da densidadeEstimativa da densidade•• Estimativa da densidadeEstimativa da densidade a posterioria posteriori•• RegraRegra de de Vizinhança mais próximaVizinhança mais próxima•• EExtensão da regraxtensão da regra de kde k--vizinhos mais vizinhos mais

próximospróximos•• Regra geral Regra geral de kde k--vizinhos mais próximosvizinhos mais próximos•• Regra geralRegra geral de kde k--vizinhos mais próximos vizinhos mais próximos

com com distância distância ponderadaponderada

•• A estimação é baseada na A estimação é baseada na probabilidade a probabilidade a posterioriposteriori

•• A estimação p(A estimação p(xx) em um ponto ) em um ponto xxdepende dedepende de

kknn –– tamanho da vizinhança (amostra) tamanho da vizinhança (amostra) que inclui os vizinhos mais próximos de que inclui os vizinhos mais próximos de xx

VVnn –– mede o volume da região que cresce mede o volume da região que cresce com o tamanho da com o tamanho da

vizinhança vizinhança

Características Características

•• Se a densidade ao redor de Se a densidade ao redor de xx é alta, é alta, então então VVnn é pequeno e a estimativa tem é pequeno e a estimativa tem boa resoluçãoboa resolução

•• Se a densidade ao redor de Se a densidade ao redor de xx é baixa, é baixa, então então VVnn é grande.é grande.

•• VVnn é uma variável aleatória que é uma variável aleatória que depende da amostra depende da amostra

Características Características

nVk

xpn

nn ×

=)(

Estimativa da DensidadeEstimativa da Densidade

•• KKnn –– um valor um valor fixo quefixo que é é funçãofunção do do número número de de exemplosexemplos nn

•• VVnn –– uma variuma variávelável aleatória que por exemploaleatória que por exemplomede a distância entre mede a distância entre xx e ke k--ésimoésimo vizinhovizinhomais distantemais distante

•• KNN pode ser interpretado como uma janela KNN pode ser interpretado como uma janela dede ParzenParzen uniforme onde a largura da janela uniforme onde a largura da janela é ajustada automaticamenteé ajustada automaticamente

Regra dos k Vizinhos mais próximo

{c1,...,cm} – m classes e x um exemplo

Em k exemplos suponha que:

Existem ki exemplos na classe Ci kkm

ii =∑

=1

O número total de exemplos na classe Ci é ni

Estimativa da densidade condicional de Ci

Vnk

Cpi

ii =)|(ˆ x

Regra dos k Vizinhos mais próximo

Estimativa da probabilidade a priori de Ci

nn

Cp ii =)(ˆ

Regra de decisão: atribuir x a Ci se:

jkk

jnn

Vnk

nn

Vnk

jCpCp

ji

j

j

ji

i

i

ji

∀≥

∀≥

∀≥

,

,

),|(ˆ)|(ˆ xx

Região Rpn(x,c1)= 28d5

2××

Estimativa da densidade

pn(x,c2)= 28d53××

d é a distância entre x e o vizinho mais distante

n=28

Estimativa da probabilidade

52pn(c1/x)=

53pn(c2/x)=

Estimativa da Probabilidadea posteriori

•• Diagrama de Diagrama de Voronoi Voronoi Define um poliedro Define um poliedro convexo para cada convexo para cada exemploexemplo§§ Os exemplos dentro do Os exemplos dentro do

poliedro são poliedro são completamente completamente classificados pelo classificados pelo exemplo associado a cada exemplo associado a cada poliedropoliedro

Exemplo: caso bidimensional

Regra de Vizinhança mais próxima

A regra dos k vizinhos mais próximos atribui x a classe Ci se a maioria dos k vizinhos tem rótulo Ci

ii

k

ki

ii cPcP

ik −

+=

∑ 1

2/)1(

))|(1()|( xx

A probabilidade disso ocorrer:

Regra de k-vizinhos mais próximos(Vizinhança selecionada aleatoriamente)

5423 )6.0(55

)4.0()6.0(45

)4.0()6.0(35

×

Estimativa da probabilidade

Pn(c1/x) =

Não existea Região R

Pn(c2/x)= 1- Pn(c1/x)

Extensão da Regra de k-vizinhos mais próximos(Vizinhança selecionada aleatoriamente)

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

-

--

xq

++

++

-

-

-

Exemplo

* 1 vizinho mais próximo classifica xq positivo, * 5 vizinhos mais próximos classifica xq negativo

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Métricas

∑=

−=d

1kkk ba)b,a(D City-Block (L1)

2d

1kkk )ba()b,a(D ∑

=

−= Euclidiana (L2)

Como observar a vizinhança?

•• A função de classificação A função de classificação –– Caso seja discreta, seu resultado é Caso seja discreta, seu resultado é

aquele que aparecer mais vezes entre os aquele que aparecer mais vezes entre os kk vizinhos mais próximosvizinhos mais próximos

–– Caso seja contínua, seu resultado é a Caso seja contínua, seu resultado é a média dos resultados dos média dos resultados dos kk vizinhos mais vizinhos mais próximospróximos

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Vf n →ℜ:

ℜ→ℜnf :

Função de classificação – Caso discreto

Considere duas classes V ={ +, -} e a vizinhança de um exemplos xqcom 5 elementos = (+ , +, -, -, -)

∑=∈

δ←k

1ii

Vvq )x(f,v(maxarg)x(f̂ onde δ (a,b)=1 se a = b

δ (a,b)=0 se a ≠ be f(xi) é a classe de xi

))v(3 ),v(2(( maxarg)x(f̂},{v

q −=+=←−+∈

A estimativa de f(xq) é classe -

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Função de classificação – Caso Contínuo

Considere K=5, V ={ +(2), -(1)} e a vizinhança de xq {2 , 2, 1, 1, 1}

k

)xf()x(f̂

k

1ii

q

∑=←

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Algoritmo de Classificação - O(n)

* Dado um exemplo xq a ser classificado

* seja x1, …, xk, os k exemplos do conjunto de treinamento mais similares a xq

* retornefaprox(xq) ← o argumento máximo de v ∈ V entre os k exemplos da lista treinamento mais similares a xq

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Aspecto importante: Escolha de k

a) O resultado da aplicação do método é afetada pelo valor de k

b) Não existe um critério determinado para a escolha de k (ex:Validação cruzada)

c) Se k é muito grande resulta obtem-se estimativa mais suave de f(x)

d) Um valor pequeno para k pode gerar uma estimativa irregular de f(x)e) nk ≤

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

•• Validação CruzadaValidação Cruzada–– Serve para evitar Serve para evitar overfittingoverfitting e para averiguar e para averiguar

robustez dos resultadosrobustez dos resultados–– AlgoritmoAlgoritmo1)1) Divide o conjunto de exemplos em dois subDivide o conjunto de exemplos em dois sub--

conjuntos: conjuntos de treinamento (TR) e de teste conjuntos: conjuntos de treinamento (TR) e de teste (TE)(TE)

2) Gera a estrutura de um modelo sobre TR2) Gera a estrutura de um modelo sobre TR3) Mede percentagem de erro de H aplicada à TE3) Mede percentagem de erro de H aplicada à TE4) Repete passos 14) Repete passos 1--3 com diferentes tamanhos de TE e 3 com diferentes tamanhos de TE e

TR, e tendo elemento escolhidos aleatoriamenteTR, e tendo elemento escolhidos aleatoriamente

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximospróximos

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

∑=∈

δω←k

1iii

Vvq )x(,v(maxarg)x(ˆ ffCaso discreto

onde )x,x(d1

qi=ωi

δ (a,b)=1 se a = b δ (a,b)=0 caso contrário

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

Exemplo

Seja uma vizinhança de xq =0.55 com 5 elementos{ (1) 0.88; (2) 1.61; (1) 0.26; (3) 4.74; (2) 1.02 }

d(xi,xq)

0.88 0.331.61 1.060.26 0.294.74 4.191,02 0.47

xi v=1 → 1/0.33 + 1/0.29 = 6.47

v=2 → 1/1.06 + 1/0.47 = 3.07

v=3 → 1/4.19 = 0.21

=

=

ω

ω

←k

1ii

k

1ii

q

)x

)x(ˆf(

fi

Caso contínuo: Método Local

)x,x(d1

qi=ωi

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

xq – exemplo a classificar

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

Exemplo

Seja uma vizinhança de xq =0.55 com 5 elementos

{ (1) 0.88; (2) 1.61; (1) 0.26; (3) 4.74; (2) 1.02 } d(xi,xq)

0.88 0.331.61 1.060.26 0.294.74 4.191,02 0.47

xi v=1 → (1/0.33 + 1/0.29)/6.34 = 1.02

v=2 → (2/1.06 + 2/0.47)/ 6.34 = 0.97

v=3 → (3/4.19) / 6.34 = 0.11

34.6)x,x(d q

5

1ii =∑

=

=

=← n

ii

n

ii

q

xx

1

1i )f(

)(f̂ω

ω

Caso contínuo:Método Global

)x,x(d1

qi

=ωi

Desvantagem : Tempo de resposta mais lento

Nota: Neste caso todos os exemplos de treinamento são considerados

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

•• Problema da dimensionalidadeProblema da dimensionalidade–– Para calcular a distância entre os pontos, o Para calcular a distância entre os pontos, o

método utiliza método utiliza todos todos os atributos do os atributos do exemplo.exemplo.

–– Problema: quando alguns destes atributos Problema: quando alguns destes atributos não são importantes para a classificaçãonão são importantes para a classificação

–– SoluçõesSoluções•• Atribuir pesos Atribuir pesos ωωjj aos atributos de maneira que aos atributos de maneira que

minimize a taxa de erro de classificaçãominimize a taxa de erro de classificação•• Usar a técnica de Usar a técnica de validação cruzadavalidação cruzada para para

automaticamente escolher os pesosautomaticamente escolher os pesos•• Eliminar atributos do espaço de instânciasEliminar atributos do espaço de instâncias

Regra geral de KRegra geral de K--vizinhos mais vizinhos mais próximos com distância Ponderadapróximos com distância Ponderada

kernel§ Classifica estimando a densidade a

partir da amostra de exemplos§ K(.) é uma variável aleatória§ A estimativa depende de h e de n§ h é o parâmetro de suavização

K-vizinhos•Classifica estimando a probabilidade

a posteriori •K(.) é uma constante•k é o parâmetro de suavização•A estimativa depende de k e de n•Rubusto para dados ruidosos

Estimadores Estimadores de Densidadede Densidade

K-vizinhos

kernel

Estimadores da Densidade

Referências Bibliográficas

1 – Duda, R. O. and Peter E. H. 2000. Pattern Classification (2nd Edition). Wiley- Interscience.

2 – Mitchell, T. M. 1997. Machine Laarning. McGraw-Hill.