anÁlise discriminante
DESCRIPTION
ANÁLISE DISCRIMINANTE. LIG, 18 de novembro de 2008. Exemplo para gerar amostras de treinamento e de validação: predição, estimação do valor esperado da taxa de erro real. - PowerPoint PPT PresentationTRANSCRIPT
ANÁLISE DISCRIMINANTE
LIG, 18 de novembro de 2008
Exemplo para gerar amostras de treinamento e de validação: predição, estimação do valor esperado da taxa de erro real
Voltemos aos dados trabalhados na aula anterior, gerados de duas normais bivariadas com covariâncias desiguais. São 100 observações, sendo 50 de cada população “A” ou “B”.
Nesse primeiro caso, vamos selecionar uma amostra de tamanho 80 dessas sem observações para gerar a regra de classificação e, depois,
Vamos validá-la com a amostra restante, que será a amostra de validação.
Comandos
tr=sample(1:100,80) Esse comando faz com que tr receba 80 índices
escolhidos de forma aleatória entre os índices de 1 a 100 (sem repetição).
Faça então: train=dadoq[tr,] e test=dadoq[-tr,] Esses comandos fazem com que train receba os dados
da base dadoq correspondentes aos índices em tr e que test receba o os dados da base dadoq complementares aos índices em tr.
Classificação
fit=qda(train[1:2,],train$grupo) pred=predict(fit,test[1:2,]) table(test$grupo,pred$class)
Real Aloc. A Aloc.B Total
A 11 7 18
B 6 16 22
Total 17 23 40
Nesse caso temos uma estimativa da taxa de erro dadapor 11/40=27,5%
Classificação em uma de várias populações
Suponha agora que cada observação pode se proveniente de uma e somente uma de g populações:
Sejam g ,,, 21
.populações às associadas çãoclassifica de regiões as ,,,
)0( em de observação uma de çãoclassifica de custos os ;,...,2,1, ,
populações às associadas priori a incidência de adesprobabilid as ,,,
populações às associadas densidades as )(,),(),(
21
ji
21
21
gRRR
CgjiC
g
gxfxfxf
g
iiji
g
g
Classificação em uma de várias populações
Nesse caso, a probabilidade de classificar uma observação de i em j, pji, é dada por:
população. ésima-i da eprovenient observação uma
tecorretamenficar classi de adeprobabilid a é -1
que tal,...,2,1,)(
g
ij1,j
jiii
R
iji
pp
gjxdxfpj
• Portanto, o custo esperado de classificação incorreta de uma observação de 1 é dado por:
g
jjj CpCECI
211)1( .
Classificação em uma de várias populações
De modo análogo, os custos esperados condicionais as demais populações são dados por:
g
ijjjijii giCpCECI
,1)( .,...,2,1,
• Como i é a probabilidade de incidência a priori de que uma observação seja proveniente de i segue que o custo esperado de classificação incorreta é dado por:
g
i
g
ijjjijii CpCECI
1 ,1
Classificação em uma de várias populações
A determinação de um procedimento de classificação ótimo leva em conta a escolha das regiões de classificação, R1, R2, ..., Rg, mutuamente exclusivas e exaustivas tal que o custo esperado de classificação incorreta seja minimizado.
RESULTADO: As regiões de classificação Ri , i=1,2,...,g, queminimizam o custo esperado de classificação incorreta (CECI)são dadas por:
empate. ao entescorrespond populações
das uma qualque a designadoser pode , empate, um ocorre Se
mínimo. um seja )(|:,1
x
CxfxRg
ijjijjji
Classificação em uma de várias populações
Em outras palavras, dada uma nova observação x, calcula-se para cada i=1,2,...,g:
)(),(,1
g
ijjijjj Cxfxic
A observação x será designada à população r tal quec(r,x)=min{c(1,x), c(2,x),...,c(g,x)}.
Classificação em uma de várias populações
Suponha que todos os custos de classificação incorreta sejam iguais a 1. Nesse caso, uma nova observação será alocada à população r , r=1,2,...,g se
)}.,(),....,,2(),,1(min{),(
se seja,ou mínimo, um é )(),(,1
xgcxcxcxrc
xfxrc j
g
rjjj
Observe que o mínimo será atingido quando o termo rfr(x) for um máximo.Conseqüentemente, quando os custos de classificação incorreta são iguais,A regra do CECI mínimo apresenta a seguinte forma, mais simples,
.,)(ln)(ln|:
emente,equivalentou ,),()(|:
rjxfpxfpxR
rjxfpxfpxR
jjrrr
jjrrr
Comentários
É interessante observar que a regra obtida aqui é equivalente à regra obtida pela maximização da probabilidade a posteriori de classificação obtida anteriormente para o caso de duas populações.
No contexto de várias populações temos:
.,...,2,1,)(
)()|(
1
grxf
xfxP g
jjj
rrr
Probabilidade a posteriori de classificação incorreta no caso de duas populações (revisitando)
Podemos também alocar uma nova observação x0 à população com maior probabilidade de incidência a posteriori P(i|x0) em que
e )observar (
) |observar ()|( )()(
)(
0
10101 022011
011
xfxfxf
xP
xPxP
)observar (
) |observar ()|( )()(
)(
0
20202 022011
022
xfxfxf
xP
xPxP
).|()|( se em mosClassifica 020110 xPxPx
Regra do CECI mínimo
Observe que a regra obtida tem três componentes:
1. probabilidades de incidência a priori;
2. custos de classificação incorreta;
3. funções de densidade. Essas quantidades devem ser especificadas (ou
estimadas) para poder implementar a regra.
Exemplo
Suponha um caso simples no qual g=3, 1=0,05, 2=0,60 e 3=0,35, com a seguinte tabela de custos de classificação incorreta:
Situação real Obs. alocada em 1
Obs. alocada em 12
Obs. alocada em 3
Observação de 1 0 500 100
Observação de 2 10 0 50
Observação de 3 50 200 0
Suponha também que os valores das respectivas densidade para a nova observação x0 são f1(x0)=0,01; f2(x0)=0,85 e f3(x0)=2,0.
Exemplo (continuação)
Nesse caso, os valores de c(r,x0), r=1,2,3 são:
1. 325,0
2. 35,055
3. 102,025 Como o menor valor ocorre para r=2, alocamos x0 à 2. Se todos os custos de classificação incorreta fossem iguais,
os valores de rfr(x0), r=1,2,3 são:
1. 0,0005
2. 0,510
3. 0,700 Portanto, nesse caso, alocaríamos x0 à 3.
Exemplo (continuação)
Equivalentemente, calculando as probabilidades de classificação a posteriori temos:
1. P(1|x0)=0,0004
2. P(2|x0)=0,421
3. P(3|x0)=0,578 Ou seja, no caso de custos de classificação incorreta
iguais, x0 é alocado na população cuja probabilidade de classificação a posteriori é maior, como foi verificado anteriormente.
Classificação em populações normais
Suponha agora que as g populações sejam normais p-variadas com vetores de média μi e matrizes de covariância i , i=1,2,...g.
Nesse caso, supondo custos de classificação incorreta iguais, a regra de classificação pode ser escrita como:
).(ln )()(2
1||ln
2
1
com ,...,2,1 máximo, um é |:
11r,
,
rrrT
r
Qxr
Qxrr
xxd
grdxR
•Na prática, os vetores de média e matrizes de covariância são desconhecidos e devem ser estimados.
Classificação em populações normais
A estimativa do escore quadrático de discriminação é dada por:
gjxxSxxSxd jjjT
jjQj ,...,2,1,ln)()(
2
1||ln
2
1)( 1
Desse modo a regra estimada para populações normais com covariâncias desiguais é alocar x à população r se })(ˆ),...,(ˆ),(ˆmax{)(ˆ
21 xdxdxdxd Qg
QQQr
Uma simplificação possível se dá no caso em queΣ1=Σ2=...=Σg= Σ.
Classificação em populações normais
Nesse caso, o escore discriminante torna-se:
.ln2
1
2
1||ln
2
1 111jj
T
j
T
j
TQj xxxd
• Observe que os dois primeiros termos são comuns a qualquerpopulação e, conseqüentemente, podem ser ignorados para propósitos de alocação.
• Os termos restantes consistem de uma constante
j
T
jjjc 1
2
1ln e uma combinação linear das
componentes de x.
Classificação em populações normais
Nesse caso, podemos definir o escore discriminante jj
T
j
T
jj xxd ln2
1)( 11
Uma estimativa do escore acima é acima é baseada na Estimativa combinada de Σ dada por:
.ln2
1)(ˆ
caso, Nesse
....
)1(...)1()1(
11
21
2211
jjTj
Tjj
g
gg
xSxxSxxd
gnnn
SnSnSnS
Classificação em populações normais
Desse modo a regra estimada para populações normais com covariâncias iguais é alocar x à população r se })(ˆ),...,(ˆ),(ˆmax{)(ˆ
21 xdxdxdxd gr
Exemplo no R
Use a base de dados CRABS e construa um fator de quatro níveis correspondendo a interação de espécie e gênero para usar como atributo de classificação.