19
Análise Discriminante: classificação com 2 populações Exemplo 1: Proprietários de cortadores de grama foram avaliados segundo duas variáveis: i) Renda (US$ 1000); ii) Tamanho da propriedade (m 2 ).

Análise Discriminante: classificação com 2 populações ... · 2 x | a t x mÖ A regra acima é conhecida como regra de classificação linear . Uma outra forma de apresentar a

  • Upload
    buitruc

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Análise Discriminante: classificação com 2 populações

Exemplo 1: Proprietários de cortadores de grama foram avaliados

segundo duas variáveis:

i) Renda (US$ 1000);

ii) Tamanho da propriedade (m2).

Exemplo 2: função discriminante univariada

1) )(1 xf ~ gama(4, 1) xxxf

e

)4(

1)( 3

1

2) )(2 xf ~ 2

16 gama(8, 0.5)

2/7

82 e)8(2

1)( xxxf

Assumindo prioris e custos tais que:

4/1

4/3

2

1

p

p e

40)2|1(

5)1|2(

C

C

3

8

)1|2(

)2|1(

2

1 pC

pC,

Logo, 3

8

)(

)(:

2

11

xf

xfR .

Com um pouco de álgebra, 1e)8(16: 2/41 xxR .

De onde se obtém o valor dx : 013175457.7dx

Ou seja, 1R e 2R são definidas como:

dxxxR 0|1 e dxxxR |2 .

Probabilidades de má classificação e custo médio esperado:

## cálculo das probabilidades P(2|1), P(1|2) e ECM

##################################################

xd <- 7.013175457

c1.2 <- 40

c2.1 <- 5

p1 <- 0.75

p2 <- 0.25

p2.1 <- 1-pgamma(xd,4,1)

p1.2 <- pchisq(xd,16)

probs <- c(p2.1,p1.2)

names(probs) <- c("p2.1","p1.2")

ECM <- c2.1*p2.1*p1 + c1.2*p1.2*p2

round(probs,5)

p2.1 p1.2

0.08108 0.02699

round(ECM,5)

[1] 0.57399

Programa em R para os gráficos:

## gráfico das densidades e probabilidades de má

## classificação

################################################

x <- seq(0,36,by=0.08)

f1 <- dgamma(x,4,1)

f2 <- dchisq(x,16)

plot(c(0,36), c(0,0.25),type="n", xlab="x", ylab="f(x)",

main=" ", cex.main=1)

lines(x,f1,col="red3", lwd=2)

lines(x,f2,col="blue3", lwd=2)

lines(c(xd,xd),c(-0.5,0.3),lty=2)

legend(0,0.26,expression(R[1]), bty="n", cex=1.25)

legend(8,0.26,expression(R[2]), bty="n", cex=1.25)

legend(1.8,0.21,expression(f[1](x)), bty="n", cex=1.2)

legend(14,0.095,expression(f[2](x)), bty="n", cex=1.2)

## gráfico da função discriminante com o ponto

## que minimiza a razão f1(x)/f2(x) pelo ECM

################################################

xd <- 7.013175457

fde <- 16*gamma(8)*(xd^(-4))*exp(-xd/2)

print(c(xd,fde),digits=10)

dgamma(xd,4,1)/dchisq(xd,16)

y <- seq(6,10,by=0.02)

fd <- 16*gamma(8)*(y^(-4))*exp(-y/2)

plot(c(6,10), c(0,3),type="n", xlab="x", ylab="f(x)",

main="Função Discriminante - critério ECM", cex.main=1)

lines(y,fd,col="darkgreen", lwd=2)

lines(c(0,xd),c(fde,fde),lty=2, col="red")

lines(c(xd,xd),c(-2,fde),lty=2, col="red")

Outro critério: probabilidade total de má classificação

TPM = P(classificar incorretamente um item como sendo de 1

ou classificar incorretamente um item como sendo de 2 )

21 )2|1()1|2( pPpPTPM

12

)()( 1211

RR

dfpdfpTPM xxxx

R1 e R2 são definidos pelos valores de x que minizam o valor da TPM.

Matematicamente equivale ao caso anterior quando os custos são iguais

No exemplo 2, pelo critério TPM, temos: 3

1

)(

)(:

2

11

xf

xfR .

Com um pouco de álgebra, 1e)8(128: 2/41 xxR .

De onde se obtém o valor tx : 093715.9tx

Com isso as probabilidades de má classificação são dadas por:

09050.0)2|1(

01985.0)1|2(

P

P

E o valor da TPM é:

25.009050.075.001985.0 TPM

03752.0TPM

## cálculo as probabilidades P(2|1), P(1|2) e TPM

#################################################

xt <- 9.093715

p2.1 <- 1-pgamma(xt,4,1)

p1.2 <- pchisq(xt,16)

probs <- c(p2.1,p1.2)

names(probs) <- c("p2.1","p1.2")

TPM <- p2.1*p1 + p1.2*p2

round(probs,5)

p2.1 p1.2

0.01986 0.09050

round(TPM,5)

[1] 0.03752

## gráfico da função discriminante com o ponto

## que minimiza a razão f1(x)/f2(x) pelo TPM

################################################

xt <- 9.093715

fdt <- 128*gamma(8)*(xt^(-4))*exp(-xt/2)

print(c(xt,fdt),digits=10)

dgamma(xt,4,1)/dchisq(xt,16)

y <- seq(6,12,by=0.02)

fd <- 128*gamma(8)*(y^(-4))*exp(-y/2)

plot(c(8,12), c(0,2),type="n", xlab="x", ylab="f(x)",

main="Função Discriminante - critério TPM", cex.main=1)

lines(y,fd,col="darkgreen", lwd=2)

lines(c(0,xt),c(fdt,fdt),lty=2, col="red")

lines(c(xt,xt),c(-2,fdt),lty=2, col="red")

Classificação de duas população normais

),,,( 21 pt XXX X ~ pN , com

)(1 xf ~ ),( 11 ΣμpN e )(2 xf ~ ),( 22 ΣμpN

1º. Caso: ΣΣΣ 21 − regra de classificação linear

)()(2

1exp

)2(

1)(

2/12/ iipif μxΣμxΣ

x1t , i = 1, 2.

Pelo critério ECM, 1R é definida pela região em que:

1

22211

)1|2(

)2|1()()()()(

2

1exp

pC

pC

μxΣμxμxΣμx

1t1t

Aplicando o logaritmo na expressão acima, temos que, a regra que

minimiza a ECM para duas populações normais com matrizes de

covariâncias iguais é dada por:

1

22211

)1|2(

)2|1(ln)()()()(

2

1

pC

pCμxΣμxμxΣμx

1t1t

Assim, alocar um ponto 0x para a população 1 se

1

22121021

)1|2(

)2|1(ln)()(

2

1)(

pC

pCμμΣμμxΣμμ

1t1t,

caso contrário, alocar 0x para a população 2 .

Se 1μ , 2μ e Σ são desconhecidos, pode-se usar suas respectivas

estimativas amostrais: 1x , 2x e S .

Considere amostras de n1 observações de 1 e n2 observações

de 2 , então:

11

1

1

1n

n1Xx

t e 11

1

1 11)1(

1XJIXS

t

nnn

,

22

2

2

1n

n1Xx

t e 22

2

2 22)1(

1XJIXS

t

nnn

,

em que: 1X e 2X são as matrizes de dados das populações 1 e 2 ,

respectivamente.

Como 21 ΣΣ , a matriz de covariâncias comum Σ pode ser

estimada pela matriz de covariância amostral combinada (pooled).

)2(

)1()1(

21

2211

nn

nnp

SSS .

Nota: pS não é viesado para Σ .

Desta forma, alocar 0x para a população 1 se

1

221

1

210

1

21)1|2(

)2|1(ln)()(

2

1)(

pC

pCpp xxSxxxSxx

tt

caso contrário, alocar 0x para a população 2 .

Na expressão acima, fazendo xaˆ y , em que 1

21 )(ˆ pSxxa ,

teremos:

1

2210

)1|2(

)2|1(ln)(ˆ

2

pC

pCxxaxa

tt

1

20

)1|2(

)2|1(lnˆˆ

pC

pCmy ,

sendo 2

)(ˆ 21 yym

o ponto médio entre duas médias 1y e .2y

Se 1)1|2(

)2|1(

1

2 pC

pC, então 0)1ln( , e

0ˆˆ0 my .

Neste caso, a ECM se resume em criar populações univariadas para

os valores de y e comparar 0y com o ponto médio entre 1y e .2y Portanto,

uma nova observação 0x será alocada para 1 ou 2 dependendo do

valor de 0y :

i) Se my ˆˆ0 , alocar 0x para 1 .

Que é equivalente a: mxR ˆ|1 xat

ii) Se my ˆˆ0 , alocar 0x para 2 .

Que é equivalente a: mxR ˆ|2 xat

A regra acima é conhecida como regra de classificação linear.

Uma outra forma de apresentar a função de classificação linear é

separando as parcelas referentes a cada uma das populações, que é a

abordagem utilizada pelo SAS:

1

1

0

1

2

1xSxxSx

t

1

t

1 pp −

2

1

0

1

2

1xSxxSx

t

2

t

2 pp

1

2

)1|2(

)2|1(ln

pC

pC.

Chamando de )(1 0xL a parcela da função linear de classificação

referente à população 1 e )(2 0xL a parcela referente à 2 , podemos

reescrever a função acima por:

1

221

)1|2(

)2|1(ln)()(

pC

pCLL 00 xx

Neste caso podemos, ainda, fazer xaiˆˆ iy , em que 1ˆ pSxa ii

, i = 1,2,

obtendo:

1

22010

)1|2(

)2|1(lnˆ

2

1ˆˆ

2

pC

pCxaxaxaxa

t

2

t

2

t

1

t

1

1

2202101

)1|2(

)2|1(ln)ˆˆ()ˆˆ(

pC

pCmymy ,

em que:

i) 2

ˆ 11

ym ,

2ˆ 2

2

ym e 21

ˆˆˆ mmm

ii) 02010ˆˆˆ yyy

Exemplo 3: Detecção de portadores de hemofilia A (deficiência no fator

VIII de coagulação).

X1 = log10(atividade AHF)

X2 = log10(antígeno tipo-AHF)

AHF é o fator anti-hemofílico.

2º. Caso: 21 ΣΣ − regra quadrática de classificação

)()(2

1exp

)2(

1)(

2/12/ iii

ipif μxΣμx

Σx

1t , i = 1, 2.

A regra que minimiza a ECM para duas populações normais com

matrizes de covariâncias diferentes é dada por:

1

21

22

1

11

1

2

1

1)1|2(

)2|1(ln

2

1

pC

pCkxΣμΣμxΣΣx

ttt,

em que: 222111

2

1

2

1ln

2

1μΣμμΣμ

Σ

Σ 1t1t

k

Se 1μ , 2μ , 1Σ e 2Σ são desconhecidos, pode-se usar suas

respectivas estimativas amostrais: 1x , 2x , 1S e 2S .

Assim, um ponto 0x deve ser alocado para a população 1 se:

1

20

1

22

1

110

1

2

1

10)1|2(

)2|1(lnˆ

2

1

pC

pCkxSxSxxSSx

ttt,

em que: 222111

2

1

2

1ln

2

1ˆ xSxxSxS

S 1t1t

k

Observações:

i) A classificação com função quadrática pode ser inadequada quando

trabalhamos com mais de p > 2 dimensões, especialmente se os dados

não forem normais.

ii) A classificação com função quadrática é muito sensível à desvios da

normalidade, portanto:

Checar sempre a normalidade;

Transformar os dados e testar a igualdade das matrizes de

covariâncias para poder aplicar a regra linear.

Observe que, quando pSSS 21 , a expressão para a regra

quadrática se resume na regra linear.

A expressão da regra quadrática pode, ainda, ser reescrita separando-

se as medidas das duas populações:

11

1

110

1

110

1

10 ln2

1

2

1

2

1SxSxxSxxSx

ttt

22

1

220

1

220

1

20 ln2

1

2

1

2

1SxSxxSxxSx

ttt

1

2

)1|2(

)2|1(ln

pC

pC.

Chamando de )(1 0xQ a parcela da função quadrática de classificação

referente à população 1 e )(2 0xQ a parcela referente à 2 , podemos

reescrever a função acima como:

1

221

)1|2(

)2|1(ln)()(

pC

pCQQ 00 xx

Nota: Sendo

ii

ii

igf

fe1

S ;

iiiiik SxSx

t ln2

1ˆ 1 e

ttSxa )ˆ,ˆ(

2

21

1

iiiii aa ,

para ),( 02010 xxtx , em cada população, a função discriminante quadrática

tem a forma:

iiiiiii kxaxaxxfxgxeQ ˆˆˆ2

1

2

1)( 0220110201

2

02

2

010 x , i = 1, 2.

Análise Discriminante: classificação com g > 2 populações

Sejam as populações 1 , 2 , . . , g , então, para gi ,,2,1 :

a) )(xfi é a densidade à população i ;

b) ip é a probabilidade à priori de i ;

c) )|( imC é o custo de alocar um item de i à população m , im .

Se im , 0)|( iiC .

d)

mRiim dfPimP xx)()| comor classifica()|(

Com

im

imPiiP )|(1)|( .

O custo médio esperado de se classificar 1x como 2 ou 3 ou .

. . ou g , é:

)1|()1|()1|3()1|3()1|2()1|2()1( gCgPCPCPECM

g

i

iCiPECM2

)1|()1|()1(

Da mesma forma, pode-se obter )2(ECM , . . . , )(gECM e, o custo

médio esperado é obtido de:

gpgECMpECMpECMECM )()2()1( 21

g

iipiECMECM

1

)(

Que pode, ainda, ser escrito como

g

i iki ikCikPpECM

1

)|()|( (1)

Resultado: as regiões R1, R2, . . . , Rg que definem a regra de classificação

que minimiza o ECM são definidas pela alocação do ponto x à população

m , m = 1, 2, . . . , g, tal que

g

kii

ii ikCfp1

)|()(x . (2)

Prova: livro do Anderson [1].

Notas:

1) Se ocorrer empate entre duas populações, escolher qualquer uma delas.

2) Se os custos são todos iguais, a expressão (2) se resume a:

g

kii

ii fp1

)(x .

Desta forma, temos a função de classificação dada por:

alocar um ponto 0x à j se

ijfpfp iijj ,)()( 00 xx ,

ou, equivalentemente, se

ijfpfp iijj ,)(ln)(log 00 xx .

Nota: a regra definida acima é equivalente à maximizar a probabilidade a

posteriori de, tendo sido observado 0x , o mesmo ter vindo de j (regra

de Bayes)

g

iii

jjj

fp

fpP

10

00

)(

)()|(

x

xx .

Classificação de g população normais

)()(2

1exp

)2(

1)(

2/12/ iipif μxΣμxΣ

x1t

, i = 1, 2, . . . , g.

alocar 0x à i se

iiii

ppfp Σx ln

2

1)2ln(

2)ln()(ln 0

)()(2

10

1

0 iii μxΣμxt

for máximo, ou seja, se

)(max)(ln 00 xx kkk

ii fpfp .

Para populações normais, define-se o escore de discriminação

)()(2

1ln

2

1)ln()( 1

iiiii

Q

i pd μxΣμxΣxt ,

i = 1, 2, . . . , g.

Assim, pela regra que minimiza a TPM (probabilidade total de má

classificação), alocar um ponto 0x à população m para a qual )( 0xQmd é

máximo.

Na prática, como )(xif é desconhecida, utilizam-se as estimativas

amostrais ix e iS , e

)()(2

1ln

2

1)ln()(ˆ 1

iiiii

Q

i pd xxSxxSxt ,

i = 1, 2, . . . , g.

Nota: se as matrizes de variâncias e covariâncias forem iguais, temos

iiii

Q

i pd μΣμxΣμxtt 11

2

1)ln()( , i = 1, 2, . . . , g.

estimado por

ipipii

Q

i pd xSxxSxxtt 11

2

1)ln()(ˆ , i = 1, 2, . . . , g.

)(

)1()1()1(

21

2211

gnnn

nnn

g

gg

p

SSSS

Alocar 0x à população m para a qual )(ˆ0x

Q

md é máximo.