Você está na página 1de 12

Conceitos Adicionais e Métricas

Métricas
‰Algumas métricas são específicas de um
‰Nesta apresentação são conjunto particular de exemplos (ou seja, são
descritos conceitos adicionais independentes do classificador induzido)
em AM, incluindo métricas ƒ Distribuição de classes
™Classe minoritária
que são obtidas a partir do ™Classe majoritária
conjunto de exemplos, do ƒ Prevalência de classe
classificador induzido ou de ƒ Erro majoritário
regras individuais do ‰Outras métricas dependem tanto do conjunto de
exemplos como do classificador induzido
classificado, caso ele seja
ƒ Taxa de erro, precisão, ...
simbólico ‰Há ainda métricas específicas para regras, caso
José Augusto Baranauskas
o classificador induzido seja simbólico
augusto@usp.br
Departamento de Física e Matemática – FFCLRP-USP http://dfm.ffclrp.usp.br/~augusto
2

Conjunto de Exemplos (Dataset


(Dataset)) Formato Padrão
‰ No Aprendizado ‰ No Aprendizado Não
Supervisionado, cada exemplo Supervisionado, cada exemplo
é rotulado segundo sua classe não possui classe associada

m Atributos Classe m Atributos


X1 X2 ... Xm Y

z1 x11 x12 ... x1m y1

z2 x21 x22 ... x2m y2


n n
Exemplos Exemplos
... ... ... ... ... ...

zn xn1 xn2 ... xnm yn


k valores distintos
3 4

Formato Padrão Formato Padrão

Conjunto de Exemplo
Exemplos
(Dataset)

X1 X2 ... Xm Y X1 X2 ... Xm Y

z1 x11 x12 ... x1m y1 z1 x11 x12 ... x1m y1

z2 x21 x22 ... x2m y2 z2 x21 x22 ... x2m y2

... ... ... ... ... ... ... ... ... ... ... ...

zn xn1 xn2 ... xnm yn zn xn1 xn2 ... xnm yn


5 6

1
Formato Padrão Formato Padrão
Classe
Atributo

X1 X2 ... Xm Y X1 X2 ... Xm Y

z1 x11 x12 ... x1m y1 z1 x11 x12 ... x1m y1

z2 x21 x22 ... x2m y2 z2 x21 x22 ... x2m y2

... ... ... ... ... ... ... ... ... ... ... ...

zn xn1 xn2 ... xnm yn zn xn1 xn2 ... xnm yn


7 8

Formato Padrão Formato Padrão


‰ No formato padrão um conjunto T com n exemplos e m ‰Como
r
pode
r ser notado, exemplos são tuplas
atributos a linha i refere-se ao i-ésimo exemplo (i = 1, 2, ƒ zi = ( xi , yi ) = ( xi1 , xi 2 ,L , xim , yi )
..., n) e a entrada xij refere-se ao valor do j-ésimo (j = 1, 2, ƒ também denotados por zi = (xi, yi) onde fica
..., m) atributo Xj do exemplo i subentendido o fato que tanto zi como xi são vetores
r r ‰A última coluna, yi = f(xi), é a função que tenta-se
z1 = ( x1 , y1 ) = (x1 , y1 ) = ( x11, x12 , x13 , L, x1m , y1 ) predizer a partir dos atributos
r r
z2 = ( x2 , y2 ) = (x 2 , y2 ) = ( x21, x22 , x23 , L, x2 m , y2 ) ‰Observa-se que cada xi é um elemento do
conjunto dom(X1) x dom(X2) x ... x dom(Xm), onde
M = M = M = M dom(Xj) é o domínio do atributo Xj e
r r
zi = ( xi , yi ) = (xi , yi ) = ( xi1 , xi 2 , xi 3 , L, xim , yi ) ‰A última coluna
M = M = M = M ƒ yi pertence a uma das k classes, isto é, yi ∈ {C1, C2, ...,
r r Ck} no caso de classificação
zn = ( xn , yn ) = (xn , yn ) = ( xn1 , xn 2 , xn3 , L, xnm , yn ) ƒ yi é um número real (yi ∈ ℜ) no caso de regressão
9 10

Exemplo de um Dataset para Exemplo de um Dataset para


Classificação Regressão
‰ Dez exemplos (n=10) Cabeça Peso Sorri Classe ‰ Dez exemplos (n=10) Cabeça Peso Sorri Preço
‰ Rótulo Classe (discreto) redonda 10.0 não amigo ‰ Rótulo Preço (contínuo) redonda 10.0 não 3500
‰ Três classes (k=3): triangular 12.0 sim amigo ƒ dom(Preço) = {∀p : p ∈ ℜ+} triangular 12.0 sim 2500
ƒ C1=amigo; C2=chato; ‰ Três atributos (m=3):
C3=inimigo redonda 5.6 sim amigo redonda 5.6 sim 10000
ƒ Cabeça (nominal)
‰ Três atributos (m=3): quadrada 11.0 não chato ™ dom(Cabeça) = {redonda, quadrada 11.0 não 3000
triangular, quadrada}
ƒ Cabeça (nominal) quadrada 10.0 sim amigo quadrada 10.0 sim 4000
™ dom(Cabeça) = {redonda, ƒ Peso (contínuo)
triangular, quadrada} triangular 5.5 não inimigo ™ dom(Peso) = {∀w : w ∈ ℜ+} triangular 5.5 não 12000
ƒ Peso (contínuo) redonda 5.7 sim chato ƒ Sorri (nominal) redonda 5.7 sim 15000
™ dom(Peso) = {∀w : w ∈ ℜ+} ™ dom(Sorri) = {sim, não}
quadrada 15.3 sim chato quadrada 15.3 sim 5000
ƒ Sorri (nominal) ‰ Atributo dependente
™ dom(Sorri) = {sim, não} quadrada 10.2 sim amigo (preço) é numérico quadrada 10.2 sim 7000
‰ Atributo dependente redonda 5.0 não inimigo redonda 5.0 não 11000
(classe) é categórico
11 12

2
Distribuição de Classes Distribuição de Classes
‰ Em classificação, dado um conjunto T com n exemplos é ‰ Dez exemplos (n=10) Cabeça Peso Sorri Classe
possível calcular sua distribuição de classes ‰ Três classes (k=3): redonda 10.0 não amigo
‰ Para cada classe Cj em T sua distribuição distr(Cj) é ƒ C1=amigo; C2=chato;
calculada como sendo o número de exemplos em T que C3=inimigo
triangular 12.0 sim amigo
possuem classe Cj dividido pelo número total de redonda 5.6 sim amigo
exemplos n, ou seja, a proporção de exemplos em cada ‰ Distribuição de classes:
classe, dada por: ƒ distr(amigo) = 5/10 = 50% quadrada 11.0 não chato
ƒ distr(chato) = 3/10 = 30% quadrada 10.0 sim amigo
1 n
distr (C j ) = ∑ || yi = C j || ƒ distr(inimigo) = 2/10 = 20%
triangular 5.5 não inimigo
n i =1 ‰ Classe amigo é a classe
majoritária redonda 5.7 sim chato

‰ A classe com a maior distribuição de exemplos é ‰ Classe inimigo é a classe quadrada 15.3 sim chato
denominada majoritária ou prevalente minoritária quadrada 10.2 sim amigo
‰ A classe com a menor distribuição de exemplos é
redonda 5.0 não inimigo
denominada minoritária
13 14

Distribuição de Classes Erro Majoritário

‰Como outro exemplo, assuma um conjunto ‰O erro majoritário de um conjunto T é definido


com 100 exemplos possui 60 exemplos da como 1 menos a distribuição da classe
classe C1, 15 exemplos da classe C2 e 25 majoritária, ou seja:
exemplos da classe C3 então sua maj- err(T ) = 1 − máx{ distr(Ci )}
distribuição de classes é i =1,L,k

ƒ distr(C1,C2,C3) = (0.60, 0.15, 0.25) =


ƒ = (60.00%, 15.00%, 25.00%) ‰O erro majoritário de um conjunto de exemplos é
independente do algoritmo de aprendizado
‰A classe C1 é a classe majoritária
‰Ele fornece um limiar máximo abaixo do qual o
‰A classe C2 é a classe minoritária erro de um classificador deve ficar
15 16

Erro Majoritário Erro Majoritário


‰ Dez exemplos (n=10) Cabeça Peso Sorri Classe
‰Considerando novamente o exemplo em
‰ Três classes (k=3): redonda 10.0 não amigo
ƒ C1=amigo; C2=chato;
que
triangular 12.0 sim amigo
C3=inimigo ƒ distr(C1,C2,C3) = (0.60, 0.15, 0.25) =
‰ Distribuição de classes: redonda 5.6 sim amigo
ƒ distr(amigo) = 5/10 = 50% quadrada 11.0 não chato ƒ = (60.00%, 15.00%, 25.00%)
ƒ
ƒ
distr(chato) = 3/10 = 30%
distr(inimigo) = 2/10 = 20%
quadrada 10.0 sim amigo ‰Neste caso, o erro majoritário é
triangular 5.5 não inimigo ƒ maj-err(T) = 1 – 0.60 = 40.00%
‰ Classe amigo é a classe
majoritária redonda 5.7 sim chato
‰ Classe inimigo é a classe quadrada 15.3 sim chato
minoritária quadrada 10.2 sim amigo
‰ Erro majoritário = 1-5/10 = redonda 5.0 não inimigo
50%
17 18

3
Exercício:
Indique a distribuição de classes, as classes Prevalência de Classe
majoritária e minoritária e o erro majoritário

Nome Dá luz Põe ovos Voa Vive na água Tem pernas Classe ‰ Distribuição de classes
‰ Um ponto muito importante em AM refere-se ao
humano sim não não não sim mamíferos ƒ distr(mamíferos) =
7/20 = 35.00%
desbalanceamento de classes em um conjunto de
píton não sim não não não répteis
salmão não sim não sim não peixes ƒ distr(répteis) =
4/20 = 20.00%
exemplos
baleia sim não não sim não mamíferos
sapo não sim não eventual/e sim anfíbios
ƒ distr(peixes) =
3/20 = 15.00% ‰ Por exemplo, suponha um conjunto de exemplos T com a
komodo não sim não não sim répteis ƒ distr(anfíbios) =
2/20 = 10.00% seguinte distribuição de classes dist(C1, C2, C3) =
morcego sim não sim não sim mamíferos
pombo não sim sim não sim pássaros
ƒ distr(pássaros) =
4/20 = 20.00% (99.00%, 0.25%, 0.75%), com prevalência da classe C1
gato sim não não não sim mamíferos ‰ Classe majoritária:
tubarão sim não não sim não peixes ƒ mamíferos ‰ Um classificador simples que classifique sempre novos
tartaruga não sim não eventual/e sim répteis ‰ Classe minoritária:
ƒ anfíbios
exemplos como pertencentes à classe majoritária C1 teria
pingüim não sim não eventual/e sim pássaros
porco-espinho sim não não não sim mamíferos ‰ Maj-err uma precisão de 99.00% (maj-err(T) = 1.00%)
ƒ 1 – 0.35 = 65.00%
enguia não sim não sim não peixes
salamandra não sim não eventual/e sim anfíbios ‰ Isto pode ser indesejável quando as classes minoritárias
monstro gila não sim não não sim répteis são aquelas que possuem uma informação muito
ornitorrinco não sim não não sim mamíferos
coruja não sim sim não sim pássaros importante, por exemplo, supondo C1: paciente normal,
golfinho sim não não sim não mamíferos C2: paciente com doença A e C3: paciente com doença B
águia não sim sim não sim pássaros

19 20

Prevalência de Classe Conjuntos de Treinamento e Teste


‰ É importante estar ciente, quando se trabalha com ‰Usualmente, um conjunto de exemplos é dividido
conjuntos de exemplos desbalanceados, que é desejável
utilizar uma medida de desempenho diferente da precisão em dois subconjuntos disjuntos:
‰ Isto deve-se ao fato que a maioria dos sistemas de ƒ conjunto de treinamento que é usado para o
aprendizado é projetada para otimizar a precisão aprendizado do conceito e o
‰ Com isso, normalmente os algoritmos apresentam um
desempenho ruim se o conjunto de treinamento encontra- ƒ conjunto de teste usado para medir o grau de
se fortemente desbalanceado, pois os classificadores efetividade do conceito aprendido
induzidos tendem a ser altamente precisos nos exemplos
da classe majoritária, mas freqüentemente classificam ‰Os subconjuntos são disjuntos para assegurar
incorretamente exemplos das classes minoritárias que as medidas obtidas utilizando o conjunto de
‰ Algumas técnicas foram desenvolvidas para lidar com teste sejam de um conjunto diferente do usado
esse problema, tais como a introdução de custos de
classificação incorreta (explicada mais adiante), a para realizar o aprendizado, tornando a medida
remoção de exemplos redundantes ou prejudiciais ou estatisticamente válida
ainda a detecção de exemplos de borda e com ruído
21 22

Conjuntos de Treinamento e Teste Erro Aparente


‰ Após induzir uma hipótese, é possível avaliá-la no
conjunto de treinamento bem como no conjunto de teste
‰ É usual denominar as medidas de desempenho de um
classificador efetuadas sobre o conjunto de treinamento Conjunto
como aparentes (também conhecidas como medidas de de Treinamento
resubstituição) e as medidas efetuadas sobre o conjunto
de teste como medidas reais (ou verdadeiras)
‰ Por exemplo, caso a medida seja o erro, pode-se ter o
erro aparente e o erro verdadeiro Indutor
‰ Para a maioria das hipóteses, a medida aparente é um
estimador ruim do seu desempenho futuro, uma vez que
ela tem a tendência de possuir um bias otimista Taxa de
Conjunto
ƒ Em geral, o erro calculado sobre o conjunto de exemplos de h Erro (Aparente)
de Teste
treinamento (erro aparente) é menor que o erro calculado sobre o do Classificador
conjunto de exemplos de teste (erro verdadeiro)

23 24

4
Erro Verdadeiro Erro e Precisão

‰Principais fatores de erro:


ƒ Qualidade (representatividade) da informação
Conjunto
de Treinamento
dos atributos
ƒ Adaptação do algoritmo de aprendizado aos
exemplos
Indutor ƒ Distribuição dos exemplos futuros
ƒ Quantidade de exemplos
Conjunto Taxa de
h Erro (Verdadeira)
de Teste
do Classificador

25 26

Erro e Precisão Erro e Precisão: Classificação


‰Recordando a notação adotada ‰ Classificação
ƒ err(h) = taxa de erro (error rate) da hipótese h
ƒ Exemplo: par (x,y) = (x,f(x)) ƒ acc(h) = precisão (accuracy) da hipótese h
1 n 1 n
ƒ f(·) é desconhecida err ( h ) = ∑
n i =1
y i ≠ h ( x i ) = ∑ y i ≠ yˆ i
n i =1
ƒ Atributos: x
1 n 1 n
ƒ Classe (rotulada ou atribuída pelo processo no acc ( h ) = ∑ y i = h ( xi ) = n ∑
n i =1
y i = yˆ i = 1 − err ( h )
mundo real): y = f(x) i =1
‰ O operador || E || retorna:
ƒ Classificador (hipótese): h(·) ƒ 1 se E é verdadeiro
ƒ Classe do exemplo x (atribuída pelo ƒ 0 se E é falso
classificador): ŷ = h(x) ‰ É óbvio que:
ƒ 0 ≤ err(h) ≤ 1 (ou, equivalentemente, 0% ≤ err(h) ≤ 100%)
ƒ n é o número de exemplos ƒ 0 ≤ acc(h) ≤ 1 (ou, equivalentemente, 0% ≤ acc(h) ≤ 100%)

27 28

Erro e Precisão: Classificação Exercício


Nome Dá a luz Põe ovos Voa Vive na água Tem Pernas Classe
Cabeça Peso Sorri Classe Predita
‰Seja h(x) X1 X2 X3 Y=f(x) Ŷ=h(x)
humano
píton
sim
não
não
sim
não
não
não
não
sim
não
mamíferos
répteis
salmão não sim não sim não peixes
peso redonda 10.0 não amigo amigo baleia sim não não sim não mamíferos
triangular 12.0 sim amigo chato sapo não sim não eventualmente sim anfíbios
<= 5.5 >5.5 dragão de komodo não sim não não sim répteis
redonda 5.6 sim amigo amigo morcego sim não sim não sim mamíferos
pombo não sim sim não sim pássaros
inimigo peso quadrada 11.0 não chato chato gato sim não não não sim mamíferos
quadrada 10.0 sim amigo amigo tubarão sim não não sim não peixes
<=10.2 >10.2 tartaruga não sim não eventualmente sim répteis
triangular 5.5 não inimigo inimigo pinguim não sim não eventualmente sim pássaros
amigo chato porco-espinho sim não não não sim mamíferos
redonda 5.7 sim chato amigo enguia não sim não sim não peixes
salamandra não sim não eventualmente sim anfíbios
‰err(h) = 2/10 = 20% quadrada 15.3 sim chato chato
monstro gila não sim não não sim répteis
quadrada 10.2 sim amigo amigo ornitorrinco não sim não não sim mamíferos
‰acc(h) = 1-2/10 = 80% coruja não sim sim não sim pássaros
redonda 5.0 não inimigo inimigo golfinho sim não não sim não mamíferos
águia não sim sim não sim pássaros
29 30

5
Da luz

Exercício Exercício sim não

Vive na água
mamíferos

Calcule o erro e a precisão do classificador no sim não eventualmente

Da luz conjunto de exemplos abaixo peixes Voa anfíbios

Nome Dá luz Põe ovos Voa Vive na água Tem pernas Classe sim não
sim não humano sim não não não sim mamíferos
píton não sim não não não répteis
salmão não sim não sim não peixes pássaros répteis

mamíferos Vive na água baleia sim não não sim não mamíferos
sapo não sim não eventual/e sim anfíbios
komodo não sim não não sim répteis
morcego sim não sim não sim mamíferos 1 n
sim não eventualmente pombo
gato
não
sim
sim
não
sim
não
não
não
sim
sim
pássaros
mamíferos
err ( h) = ∑ yi ≠ h( xi )
n i =1
tubarão sim não não sim não peixes
peixes Voa anfíbios tartaruga não sim não eventual/e sim répteis acc( h) = 1 − err (h)
pingüim não sim não eventual/e sim pássaros
porco-espinho sim não não não sim mamíferos
sim não enguia não sim não sim não peixes
salamandra não sim não eventual/e sim anfíbios
monstro gila não sim não não sim répteis
pássaros répteis ornitorrinco não sim não não sim mamíferos
coruja não sim sim não sim pássaros
golfinho sim não não sim não mamíferos
31 águia não sim sim não sim pássaros 32

4
err (h) = = 20.00%
Solução acc(h) =
20
16
= 80.00%
Erro: Regressão
20
Nome Dá luz Põe ovos Voa Vive na água Tem Pernas Classe Ŷ=h(x)
humano sim não não não sim mamíferos mamíferos ‰ mse-err(h) = erro médio ‰ rmse-err(h) = raiz do erro médio
píton não sim não não não répteis répteis quadrático (mean squared quadrático (root mean squared
salmão não sim não sim não peixes peixes
error) n
error)
baleia sim não não sim não mamíferos mamíferos 1
sapo
dragão de komodo
não
não
sim
sim
não eventualmente
não não
sim
sim
anfíbios
répteis
anfíbios
répteis
mse - err(h) = ∑ ( yi − h( xi ))2
n i =1
rmse - err(h) =
1 n
∑ ( yi − h( xi ))2
n i =1
morcego sim não sim não sim mamíferos mamíferos
pombo não sim sim não sim pássaros pássaros
gato sim não não não sim mamíferos mamíferos
‰ mad-err(h) = distância/erro
tubarão sim não não sim não peixes mamíferos
tartaruga não sim não eventualmente sim répteis anfíbios absoluta(o) média(o) (mean
pingüim não sim não eventualmente sim pássaros anfíbios absolute distance/error)
porco-espinho sim não não não sim mamíferos mamíferos 1 n
enguia não sim não sim não peixes peixes mad - err(h) = ∑ yi − h( xi )
salamandra não sim não eventualmente sim anfíbios anfíbios n i =1
monstro gila não sim não não sim répteis répteis
ornitorrinco não sim não não sim mamíferos répteis
coruja não sim sim não sim pássaros pássaros
golfinho sim não não sim não mamíferos mamíferos
águia não sim sim não sim pássaros pássaros
33 34

Erro: Regressão Exemplo: Xiphopenaeus kroyeri


‰ rse-err(h) = erro relativo ‰ rae-err(h) = erro absoluto ‰Coleta de camarões “sete-barbas” na baía da
quadrático (relative squared relativo (relative absolute error)
error) n n
Ubatuba
∑(y i − h( xi )) 2
1 n ∑y i − h( xi ) ‰Previsão para a população de um mês baseado
rse - err (h) = i =1
n
;y= ∑ yi
n i =1
rae - err(h) = i =1
n
na população coletada em meses anteriores
∑(y i − y) 2
∑y i −y
i =1
i =1 ƒ mse-err(h) = 379.66
Valor Valor Predito
‰ Coeficiente de correlação ƒ mad-err(h) = 19.00
‰ rrse-err(h) = raiz do erro relativo Correto (y) h(x)
n
quadrático (root relative
squared error) n
∑(y i − y )( h( xi ) − h) ƒ rmse-err(h) = 19.46 486 503
i =1
ƒ rse-err(h) = 0.3785 600 575
∑ ( yi − h( xi ))2 corr(h) = n −1 535 520
rrse - err( h) = i =1 n n n ƒ rrse-err(h) = 0.6152
∑ i ( y − y ) 2
∑(y i − y)2 ∑ ( h( x ) − h)
i
2
ƒ rae-err(h) = 0.6196
i =1 i =1
× i =1
n −1 n −1
35 36

6
Matriz de Confusão Matriz de Confusão
‰ A matriz de confusão de uma hipótese h oferece uma ‰ O número de acertos, para cada classe, se localiza na
medida efetiva do modelo de classificação, ao mostrar o diagonal principal M(Ci,Ci) da matriz
número de classificações corretas versus as ‰ Os demais elementos M(Ci,Cj), para i ≠ j, representam
classificações preditas para cada classe, sobre um erros na classificação
conjunto de exemplos T ‰ A matriz de confusão de um classificador ideal possui
‰ As entradas da matriz são representadas por M(Ci,Cj) todos os elementos fora da diagonal iguais a zero uma
indicando o número de exemplos de T que são da classe vez que ele não comete erros
Ci mas que foram classificados pela hipótese h como Classe predita C1 predita C2 L predita Ck
sendo da classe Cj
verdadeira C1 M (C1 , C1 ) M (C1 , C2 ) L M (C1 , Ck )


verdadeira C2 M (C2 , C1 ) M (C2 , C2 ) L M (C2 , Ck )
M (C i , C j ) = h( x ) = C j M M M O M
{∀ ( x , y )∈T : y =Ci }
verdadeira Ck M (Ck , C1 ) M (Ck , C2 ) L M (Ck , Ck )
37 38

Exercício: Qual a matriz de


Matriz de Confusão
confusão de h?
Nome Dá luz Põe ovos Voa Vive na água Tem Pernas Classe h
‰ h: if X1= a and X2 = s then classe = + else classe = - humano sim não não não sim mamíferos mamíferos
píton não sim não não não répteis répteis
Atributos salmão não sim não sim não peixes peixes
baleia sim não não sim não mamíferos mamíferos
Exemplo X1 X2 X3 Classe (Y) h sapo não sim não eventualmente sim anfíbios anfíbios
dragão de komodo não sim não não sim répteis répteis
z1 a s 2 + + morcego sim não sim não sim mamíferos mamíferos
z2 a s 1 - + pombo não sim sim não sim pássaros pássaros
gato sim não não não sim mamíferos mamíferos
z3 b n 1 + - tubarão sim não não sim não peixes mamíferos
tartaruga não sim não eventualmente sim répteis anfíbios
z4 b s 2 - - pingüim não sim não eventualmente sim pássaros anfíbios
z5 c n 2 + - porco-espinho sim não não não sim mamíferos mamíferos
enguia não sim não sim não peixes peixes
salamandra não sim não eventualmente sim anfíbios anfíbios
Classe Predita + Predita - monstro gila não sim não não sim répteis répteis
ornitorrinco não sim não não sim mamíferos répteis
Verdadeira + 1 2 coruja não sim sim não sim pássaros pássaros
golfinho sim não não sim não mamíferos mamíferos
Verdadeira - 1 1
águia não sim sim não sim pássaros pássaros
39 40

Solução Matriz de Confusão


Classe h
mamíferos mamíferos Classe predita por h
répteis répteis k
peixes
mamíferos
peixes
mamíferos C1 C2 ... Ck M (Ci ,*) = ∑ M (Ci , C j )
anfíbios anfíbios j =1
Classe Predita por h
Classe Verdadeira

répteis répteis C1 M(C1,C1) M(C1,C2) ... M(C1,Ck) M(C1,*)


mamíferos mamíferos anfíbios peixes répteis pássaros mamíferos
pássaros pássaros anfíbios 2 0 0 0 0
mamíferos mamíferos C2 M(C2,C1) M(C2,C2) ... M(C2,Ck) M(C2,*)
Verdadeira

peixes mamíferos peixes 0 2 0 0 1


Classe

répteis anfíbios répteis 1 0 3 0 0 ... ... ... ... ... ...


pássaros anfíbios
pássaros 1 0 0 3 0
mamíferos mamíferos
peixes peixes mamíferos 0 0 1 0 6 Ck M(Ck,C1) M(Ck,C2) ... M(Ck,Ck) M(Ck,*)
anfíbios anfíbios
répteis répteis M(*,C1) M(*,C2) ... M(*,Ck) n
mamíferos répteis
pássaros pássaros k k k
mamíferos mamíferos M (*, C j ) = ∑ M (Ci , C j ) n = ∑ M (Ci ,*) =∑ M (*, Ci )
pássaros pássaros i =1 i =1 i =1
41 42

7
Índice Kappa Exemplo
‰ Índice Kappa: medida de concordância κ=0.74 anfíbios peixes répteis pássaros mamíferos M(Ci,*) κ=1.00 anfíbios peixes répteis pássaros mamíferos M(Ci,*)
err=20.00% err=0.00%
ƒ Mede a fração de concordância observada entre as classes preditas por anfíbios 2 0 0 0 0 2 anfíbios 2 0 0 0 0 2
h e as classes verdadeiras peixes 0 2 0 0 1 3 peixes 0 3 0 0 0 3
ƒ kappa <= 0: indica ausência de concordância répteis 1 0 3 0 0 4 répteis 0 0 4 0 0 4
ƒ θo: concordância total observada pássaros 1 0 0 3 0 4 pássaros 0 0 0 4 0 4
ƒ θe: concordância esperada pelo simples acaso 0 0 1 0 6 7 0 0 0 0 7 7
θ −θ
mamíferos mamíferos

kappa = o e M(*,Ci) 4 2 4 3 7 20 M(*,Ci) 2 3 4 4 7 20

1 − θe
κ=0.81 κ= −0.22
1 k
anfíbios peixes répteis pássaros mamíferos M(Ci,*) anfíbios peixes répteis pássaros mamíferos M(Ci,*)

∑ M (Ci , Ci )
err=15.00% err=100.00%

θo = κappa
mínimo < 0 anfíbios 2 0 0 0 0 2 anfíbios 0 0 0 0 2 2

n i =1 máximo = 1
peixes 0 3 0 0 0 3 peixes 3 0 0 0 0 3
répteis 0 0 4 0 0 4 répteis 0 0 0 4 0 4
k
1 0 0 0 4 0 4

∑ M (C ,*) × M (*, C )
pássaros pássaros 0 0 4 0 0 4
θe = 2 i i
mamíferos 0 0 3 0 4 7 mamíferos 0 7 0 0 0 7
n i =1
M(*,Ci) 2 3 7 4 4 20 M(*,Ci) 3 7 4 4 2 20
43 44

Matriz de Confusão para 2 Classes Matriz de Confusão para 2 Classes


‰ Com apenas duas classes, as escolhas estão estruturadas para predizer a Taxa de Erro Taxa de Erro
ocorrência (positivo ou +) ou não (negativo ou -) de um evento simples Classe Predita C+ Predita C-
da Classe Total
‰ Neste caso, os dois erros possíveis são denominados falso positivo (FP) e
falso negativo (FN) e a matriz de confusão resume-se a: FN
ƒ TP é o número de exemplos positivos classificados corretamente Verdadeira C+ TP FN
™ Verdadeiro Positivo (True Positive) TP + FN FP + FN
ƒ FN é o número de exemplos positivos classificados incorretamente (como sendo
negativos) FP n
Verdadeira C- FP TN
™ Falso Negativo (False Negative)
ƒ TN é o número de exemplos negativos classificados corretamente
FP + TN
™ Falso Positivo (False Positive)
ƒ FP é o número de exemplos negativos classificados incorretamente (como sendo
positivos)
™ Verdadeiro Negativo (True Negative)
TP = Verdadeiro Positivo (True Positive)
ƒ Total de n=(TP+FN+FP+TN) exemplos FN = Falso Negativo (False Negative)
Classe Predita C+ Predita C- FP = Falso Positivo (False Positive)
TN = Verdadeiro Negativo (True Negative)
Verdadeira C+ TP FN
n = TP + FN + FP + TN
Verdadeira C- FP TN
45 47

Métricas Derivadas da Matriz de


Exercício
Confusão para 2 Classes
‰ Qual a matriz de confusão do classificador h para os ‰ Confiabilidade positiva ‰ Especificidade
exemplos fornecidos (disease.arff)? TP TN
prel(h) = spec(h) =
ParedeCelular Núcleo Cauda Cor
Doente h TP + FP FP + TN
(classe) (predita)
thin 2 2 light + + ‰ Confiabilidade negativa ‰ Precisão total
thin 1 2 light - - Taxa de
thin 2 2 dark + + Classe
Predita Predita
Erro da TN T +T
thin 2 1 light - +
+ - Classe nrel(h) = tacc(h) = P N
thick 2 2 light + + Verdadeira TN + FN n
5 1 16.66%
thick 1 1 light - - +

thick 2 2 dark + + Verdadeira


1 3
‰ Suporte ‰ Cobertura
- - -
25.00%
TP + FP
thin 1 1 dark
TP cov(h) =
thick 1 1 dark + - sup(h) = n
thick 2 1 dark + + n ‰ Medida-F
‰ Sensitividade (recall) 2
F − measure( h) =
TP 1
+
1
sens(h) =
TP + FN prel (h ) sens (h)
48 49

8
Métricas Derivadas da Matriz de Métricas Derivadas da Matriz de
Confusão para 2 Classes em IR Confusão para 2 Classes
‰ Em Recuperação de Informação (Information Retrieval): ‰ Assumindo um conjunto de exemplos sobre pacientes no qual há duas
ƒ A confiabilidade positiva é denominada precisão (precision) classes:
ƒ Pacientes com gripe (classe positiva)
ƒ A sensitividade é denominada recall
ƒ Pacientes sem gripe (classe negativa)
‰ F-measure (média harmônica de precision e recall) também é ‰ Após induzir um classificador h:
conhecida como F1-measure ƒ A confiabilidade positiva é a proporção (probabilidade) que, caso um paciente seja
rotulado por h como tendo gripe, que ele realmente tenha gripe
2 2 × prel (h) × sens( h)
F − measure( h) = = ƒ A confiabilidade negativa é a proporção (probabilidade) que, caso um paciente
1 1 prel (h) + sens( h) seja rotulado por h como não tendo gripe, que ele realmente não tenha gripe
+ ƒ A porcentagem de pacientes com gripe e rotulados como tendo gripe é o suporte
prel ( h) sens (h) ƒ A porcentagem de pacientes rotulados como tendo gripe é a cobertura
‰ A fórmula geral de Fα-measure é ƒ Sensitividade indica a proporção de pacientes com gripe que são classificados
como tais
α +1 (α + 1) × prel (h) × sens (h)
Fα − measure(h) = = ™ Sensitividade de 100% significa que todos os pacientes com gripe são classificados como
1 α α × prel ( h) + sens( h) tais
+ ƒ Especificidade indica a proporção de pacientes sem gripe que são classificados
prel ( h) sens (h) como tais
‰ Dois valores comuns para α são ™ Especificidade de 100% significa que todos os pacientes sem gripe são classificados
como tais
ƒ α=2, que pondera recall duas vezes mais do que precision
ƒ α=0.5, que pondera precision duas vezes mais do que recall

50 51

Exercício: Indique TP, FN, FP, TN e


Matriz de Confusão para 2 Classes
calcule sens e spec
+ +
4 1 5 0
++ ¯ ++ ¯
2 3 1 4 ¯ ¯
++ + ¯ ¯ ++ + ¯ ¯
‰ prel = 4/6 = 0.67 ‰ prel = 5/6 = 0.83
‰ nrel = 3/4 = 0.75 ‰ nrel = 4/4 = 1.00 ¯ ¯
‰ sup = 4/10 = 0.40 ‰ sup = 5/10 = 0.50 - -
‰ sens = 4/5 = 0.80 ‰ sens = 5/5 = 1.00
+ +
‰ spec = 3/5 = 0.60 ‰ spec = 4/5 = 0.80
‰ tacc = 7/10 = 0.70 ‰ tacc = 9/10 = 0.90 ++ ¯ ++ ¯
¯ ¯
‰ cov = 6/10 = 0.60 ‰ cov = 6/10 = 0.60 ++ + ¯ ¯ ++ + ¯
‰ F-measure = 0.73 ‰ F-measure = 0.91
¯ ¯
‰ Kappa = 0.40 ‰ Kappa = 0.80 ¯
- -
52 53

Solução Custos de Erros


+ +
‰ Medir adequadamente o desempenho de classificadores,
++ ¯ ++ ¯ através da taxa de erro (ou precisão) assume um papel
¯ ¯
++ + ¯ ¯ ++ + ¯ ¯ importante em AM, uma vez que o objetivo consiste em
TP TN TP FN TN construir classificadores com baixa taxa de erro em novos
¯ ¯ exemplos
- - ‰ Entretanto, ainda considerando o problema anterior
contendo duas classes, se o custo de ter falsos positivos
sens=1.00 spec=1.00 sens=0.80 spec=1.00
+ + e falsos negativos não é o mesmo, então outras medidas
de desempenho devem ser usadas
++ ¯ ++ ¯ ‰ Uma alternativa natural, quando cada tipo de
¯ ¯
++ + ¯ ¯ ++ + ¯ classificação incorreta possui um custo diferente ou
TP FP TN TP FP FN TN mesmo quando existe prevalência de classes, consiste
¯ ¯ em associar um custo para cada tipo de erro
¯
- -
sens=1.00 spec=0.80 sens=0.80 spec=0.60 54 55

9
Custos de Erros Custos de Erros
‰O custo cost(Ci,Cj) é um número que representa ‰ No cálculo utilizando custos, os erros são convertidos em
custos pela multiplicação do erro pelo custo
uma penalidade aplicada quando o classificador correspondente, calculados utilizando-se
faz um erro ao rotular exemplos, cuja classe 1 n
verdadeira é Ci, como pertencentes à classe Cj, err − cost( h) = ∑ yi ≠ h( xi ) × cost( yi , h( xi ))
n i =1
onde i,j = 1, 2, ..., k e k é o número de classes
‰ É também possível obter os custos através da matriz de
‰Assim, cost(Ci,Ci) = 0, uma vez que não constitui confusão utilizando-se
um erro e cost(Ci,Cj) > 0, i ≠ j 1 k k
‰Em geral, os indutores assumem que
err − cost(h) = ∑∑ M (Ci , C j ) × cost(Ci , C j )
n i =1 j =1
cost(Ci,Cj)=1, i≠j, caso esses valores não sejam ‰ Assim, ao invés de projetar um algoritmo que minimize a
definidos explicitamente taxa de erro, o objetivo poderia ser minimizar custos de
classificação incorreta
56 57

Custos de Erros Cobertura


cost(+,-) = 10
cost(-,+) = 2 ‰ Seja regra L → R
ƒ Exemplos que satisfazem a parte L da regra são cobertos pela
++ ¯ + ¯ regra (ou a regra dispara para esses exemplos)
¯ ¯ h1: if X1<5 then classe = + else classe = - ƒ Exemplos que satisfazem tanto a condição L como a conclusão R
++
são cobertos corretamente pela regra
err-cost(h1) = 10 ƒ Exemplos satisfazendo a condição L mas não a conclusão R são
cobertos incorretamente pela regra
ƒ Exemplos que não satisfazem a condição L não são cobertos
5 pela regra

Exemplos
h2: if X1<10 then classe = + else classe = - são...
++ ¯ + ¯ satisfazendo...
++ ¯ ¯ err-cost(h2) = 4 ¬L Não cobertos pela regra
L Cobertos pela regra
L∧R Cobertos corretamente pela regra

10
L ∧ ¬R Cobertos incorretamente pela regra
58 59

Cobertura: Exemplo Matriz de Contingência


‰ A matriz de confusão é aplicada
‰if X1= a and X2 = s then classe = + ao classificador visto como uma
caixa-preta, ou seja, o
classificador pode ser simbólico
Atributos ou não para se calcular essa
matriz
Exemplo X1 X2 X3 Classe Cobertura
‰ Já a matriz de contingência é
z1 a s 2 + Coberto (corretamente) calculada para cada regra,
z2 a s 1 - Coberto (incorretamente) exigindo, desta forma, que o
classificador seja simbólico
z3 b n 1 + Não coberto ‰ Considerando cada regra no
z4 b s 2 - Não coberto formato L → R, sua
correspondente matriz de
z5 c n 2 * Não coberto contingência é dada ao lado

60 61

10
Matriz de Contingência Matriz de Contingência
‰ Nesta tabela, L denota o ‰ Por generalidade, denota-
conjunto de exemplos para os se a cardinalidade de um
quais a condição da regra é
verdadeira e seu complemento conjunto A por a, ou seja,
¬L denota o conjunto de a = |A|
exemplos para os quais a ‰ Assim, l denota o número
condição da regra é falsa e de exemplos no conjunto
analogamente para R e ¬R
L, ou seja, l = |L|, r denota
‰ LR denota o conjunto de
exemplos L ∩ R no qual ambos o número de exemplos no
L e R são verdadeiros, L¬R conjunto R, ou seja r = |R|,
denota o conjunto de exemplos lr denota o número de
L ∩ ¬R no qual L é verdadeiro e exemplos no conjunto LR
R é falso e assim por diante com lr = |LR| e assim por
diante

62 63

Matriz de Contingência Matriz de Contingência: Exemplo


‰ A freqüência relativa |A|/n = a/n associada ao Atributos
if X1= a and X2 = s then classe =
subconjunto A é denotada por p(A), onde A é um +
subconjunto dos n exemplos Exemplo X1 X2 X3 Classe Cobertura
E1 a s 2 + Coberto (corretamente)
‰ Dessa forma, a freqüência relativa é usada como uma E2 a s 1 - Coberto (incorretamente)
estimativa de probabilidade E3 b n 1 + Não coberto
‰ A notação p(A|B) segue sua definição habitual em E4 b s 2 - Não coberto
probabilidade, dada pela equação seguinte, onde A e B E5 c n 2 * Não coberto
são ambos subconjuntos dos n exemplos
L ¬L
AB ab
R 1 (E1) 1 (E3) 2
p ( AB) ab
p( A | B) = = n = n = ¬R 1 (E2) 2 (E4,E5) 3
p( B ) B b b 2 3 5
n n
64 65

Métricas Derivadas da Matriz de Métricas Derivadas da Matriz de


Contingência Contingência
lr lr
‰Confiabilidade positiva prel( L → R ) = p ( R | L) = ‰Especificidade spec( L → R) = p( L | R) =
l r
lr + l r
‰Confiabilidade negativa nrel(L → R) = p( R | L) = l r ‰Precisão total tacc( L → R) = p ( LR) + p( L R ) =
n
l
l
‰Cobertura cov( L → R ) = p( L ) =
lr n
‰Suporte sup( L → R ) = p ( LR ) =
n lr l ⋅ r
‰Novidade nov( L → R ) = p( LR ) − p ( L) p( R ) = −
n n2
‰Sensitividade lr
sens( L → R) = p ( L | R ) =
r ‰Satisfação sat( L → R ) =
p( R ) − p( R | L)
= 1−
n ⋅lr
p( R) l⋅r
66 67

11
Slides baseados no Capítulo 4 do livro:

Rezende, S.O. (ed).


Sistemas Inteligentes, Manole, 2003,
ISBN 85-204-1683-7

Material elaborado por


José Augusto Baranauskas
Revisão 2007

68

12

Você também pode gostar