Você está na página 1de 56

Classicao

SCC-630 - Captulo 11 - parte 1


Classicao de Atributos
Joo Lus Garcia Rosa
1
1
Departamento de Cincias de Computao
Instituto de Cincias Matemticas e de Computao
Universidade de So Paulo - So Carlos
joaoluis@icmc.usp.br
2011
Joo Lus G. Rosa c 2011 - SCC-630: XI-1. Classicao de Atributos - parte 1 1/5
Classicao
Agradecimento
Agradeo Profa. Maria Carolina Monard, que gentilmente
permitiu que eu usasse seus slides [2] para preparao deste
captulo.
Joo Lus G. Rosa c 2011 - SCC-630: XI-1. Classicao de Atributos - parte 1 2/5
Classicao
Sumrio
1
Classicao
Joo Lus G. Rosa c 2011 - SCC-630: XI-1. Classicao de Atributos - parte 1 3/5
Classicao
Material do Eamonn Keogh
Os prximos 51 slides contm material do Prof. Eamonn
Keogh [1], com adaptao da Profa. Maria Carolina Monard.
Joo Lus G. Rosa c 2011 - SCC-630: XI-1. Classicao de Atributos - parte 1 4/5
Fair Use Agreement
Fair Use Agreement
This agreement covers the use of all slides on this
CD-Rom, please read carefully.
You may freely use these slides for teaching, if
You send me an email telling me the class number/ university in advance.
My name and email address appears on the first slide (if you are using all or most of the slides), or on each
slide (if you are just taking a few slides).
You may freely use these slides for a conference presentation, if
You send me an email telling me the conference name in advance.
My name appears on each slide you use.
You may not use these slides for tutorials, or in a published work (tech report/
conference paper/ thesis/ journal etc). If you wish to do this, email me first, it is
highly likely I will grant you permission.
(c) Eamonn Keogh, eamonn@cs.ucr.edu
Gafanhoto
Esperana
O
O
problema
problema
de
de
classifica
classifica

o
o
(definio informal)
Dada uma coleo de dados
detalhados, neste caso 5 exemplos
de Esperana e 5 do Gafanhoto,
decida a qual tipo de inseto o
exemplo no rotulado pertence.
Obs: Esperana : tipo de gafanhoto
verde.
Esperana ou Gafanhoto?
Comprimento Comprimento
do do T T rax rax
Comprimento Comprimento
do abdomen do abdomen
Comprimento Comprimento
das das antenas antenas
Tamanho da Tamanho da
mand mand bula bula
Dimetro dos
orifcios de respirao
Comprimento Comprimento das das pernas pernas
Para
Para
qualquer dom
qualquer dom

nio
nio
de
de
interesse
interesse
podemos medir
podemos medir
caracter
caracter

sticas
sticas
Cor Cor {Verde, {Verde, Marrom Marrom, , Cinza Cinza, , Outra Outra} }
Tem Tem asas asas? ?
ID do ID do
inseto inseto
Comp. do Comp. do
abd abd men men
Comp. das Comp. das
antenas antenas
Classe Classe do do
inseto inseto
1 2.7 5.5
Gafanhoto Gafanhoto
2 8.0 9.1
Esperan Esperan a a
3 0.9 4.7
Gafanhoto Gafanhoto
4 1.1 3.1
Gafanhoto Gafanhoto
5 5.4 8.5
Esperan Esperan a a
6 2.9 1.9
Gafanhoto Gafanhoto
7 6.1 6.6
Esperan Esperan a a
8 0.5 1.0
Gafanhoto Gafanhoto
9 8.3 6.6
Esperan Esperan a a
10 8.1 4.7
Esperan Esperan a a
11 5.1 7.0
??????? ???????
Podemos armazenar Podemos armazenar
as as caracter caracter sticas sticas em em
bases de dados bases de dados
Minha_Cole Minha_Cole o o
O problema de O problema de
classifica classifica o agora o agora
pode ser expresso da pode ser expresso da
seguinte forma: seguinte forma:
Dada uma base de treina Dada uma base de treina- -
mento( mento(Minha_Cole Minha_Cole o o), ),
prediga o r prediga o r tulo da tulo da classe classe
dos exemplos ainda n dos exemplos ainda n o o
vistos vistos
Exemplo n Exemplo n o visto o visto = =
C
o
m
p
r
i
m
e
n
t
o

d
a
s

a
n
t
e
n
a
s
C
o
m
p
r
i
m
e
n
t
o

d
a
s

a
n
t
e
n
a
s
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Gafanhoto
Esperana
Comprimento do abd Comprimento do abd men men
C
o
m
p
r
i
m
e
n
t
o
C
o
m
p
r
i
m
e
n
t
o
d
a
s

a
n
t
e
n
a
s
d
a
s

a
n
t
e
n
a
s
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Gafanhoto
Esperana
Comprimento do Comprimento do abd abd men men
Tambm utilizaremos esta base de
dados maior para motivao
Cada um destes
objetos de dados
chamado de
exemplar
exemplo (de
treinamento)
instncia
tupla
Voltaremos ao slide anterior
em dois minutos. Enquanto isso
vamos jogar um joguinho
rpido.
Vou mostrar a vocs alguns
problemas de classificao que
foram mostrados a pombos!
Vamos ver se voc to
esperto quanto um pombo!
Voltaremos ao slide anterior
em dois minutos. Enquanto isso
vamos jogar um joguinho
rpido.
Vou mostrar a vocs alguns
problemas de classificao que
foram mostrados a pombos!
Vamos ver se voc to
esperto quanto um pombo!
Exemplos da
classe A
3 4
1.5 5
6 8
2.5 5
Exemplos
da classe B
5 2.5
5 2
8 3
4.5 3
Problema do Pombo 1
Exemplos da
classe A
3 4
1.5 5
6 8
2.5 5
Exemplos
da classe B
5 2.5
5 2
8 3
4.5 3
8 1.5
4.5 7
De qual classe
este objeto?
De qual classe
este objeto?
Que tal este, A
ou B?
Que tal este, A
ou B?
Problema do Pombo 1
Exemplos da
classe A
3 4
1.5 5
6 8
2.5 5
Exemplos
da classe B
5 2.5
5 2
8 3
4.5 3
8 1.5
Este um B!
Este um B!
Problema do Pombo 1
Eis a regra. Se a
barra esquerda
menor que a direita,
um A, caso
contrrio um B.
Eis a regra. Se a
barra esquerda
menor que a direita,
um A, caso
contrrio um B.
Exemplos da
classe A
4 4
5 5
6 6
3 3
Exemplos
da classe B
5 2.5
2 5
5 3
2.5 3
8 1.5
7 7
At eu sei este!
At eu sei este!
Problema do Pombo 2
Oh! Este aqui
difcil!
Oh! Este aqui
difcil!
Exemplos da
classe A
4 4
5 5
6 6
3 3
Exemplos
da classe B
5 2.5
2 5
5 3
2.5 3
7 7
Problema do Pombo 2
Ento este um A.
Ento este um A.
A regra : se duas
barras so iguais em
tamanho um A. Caso
contrrio um B.
A regra : se duas
barras so iguais em
tamanho um A. Caso
contrrio um B.
Exemplos da
classe A
4 4
1 5
6 3
3 7
Exemplos
da classe B
5 6
7 5
4 8
7 7
6 6
Problema do Pombo 3
Este muito difcil!
Qual este, A ou B?
Este muito difcil!
Qual este, A ou B?
Exemplos da
classe A
4 4
1 5
6 3
3 7
Exemplos
da classe B
5 6
7 5
4 8
7 7
6 6
Problema do Pombo 3
um B!
um B!
A regra a seguinte,
se o quadrado da soma
das duas barras
menor ou igual a 100,
um A. Caso contrrio
um B.
A regra a seguinte,
se o quadrado da soma
das duas barras
menor ou igual a 100,
um A. Caso contrrio
um B.
Por que gastamos tanto
tempo com este joguinho?
Por que gastamos tanto
tempo com este joguinho?
Porque queriamos mostrar
que quase todos os
problemas de classificao
tem uma interpretao
geomtrica. Confira os
prximos 3 slides
Porque queriamos mostrar
que quase todos os
problemas de classificao
tem uma interpretao
geomtrica. Confira os
prximos 3 slides
Exemplos da
classe A
3 4
1.5 5
6 8
2.5 5
Exemplos
da classe B
5 2.5
5 2
8 3
4.5 3
Problema do Pombo 1
Eis a regra novamente.
Se a barra esquerda
menor que a direita,
um A, caso contrrio
um B.
Eis a regra novamente.
Se a barra esquerda
menor que a direita,
um A, caso contrrio
um B.
B
a
r
r
a

e
s
q
u
e
r
d
a
B
a
r
r
a

e
s
q
u
e
r
d
a
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Barra direita Barra direita
Exemplos da
classe A
4 4
5 5
6 6
3 3
Exemplos
da classe B
5 2.5
2 5
5 3
2.5 3
Problema do Pombo 2
B
a
r
r
a

e
s
q
u
e
r
d
a
B
a
r
r
a

e
s
q
u
e
r
d
a
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Barra direita Barra direita
Deixe-me procurar aqui
est a regra , se as duas
barras tm tamanhos iguais,
um A. Seno um B.
Deixe-me procurar aqui
est a regra , se as duas
barras tm tamanhos iguais,
um A. Seno um B.
Exemplos da
classe A
4 4
1 5
6 3
3 7
Exemplos
da classe B
5 6
7 5
4 8
7 7
Problema do Pombo 3
B
a
r
r
a

E
s
q
u
e
r
d
a
B
a
r
r
a

E
s
q
u
e
r
d
a
100
10 20 30 40 50 60 70 80 90 100
10
20
30
40
50
60
70
80
90
Barra direita Barra direita
A regra novamente:
Se o quadrado da soma das duas
barras menor ou igual a 100,
um A. Seno um B.
A regra novamente:
Se o quadrado da soma das duas
barras menor ou igual a 100,
um A. Seno um B.
C
o
m
p
r
C
o
m
p
r
i i
m
e
n
t
o

d
a
s

A
n
t
e
n
a
s
m
e
n
t
o

d
a
s

A
n
t
e
n
a
s
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Gafanhoto
Esperana
Comprimento do Abd Comprimento do Abd men men
C
o
m
p
r
i
m
e
n
t
o

d
a
s

a
n
t
e
n
a
s
C
o
m
p
r
i
m
e
n
t
o

d
a
s

a
n
t
e
n
a
s
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Comprimento do Comprimento do abd abd men men
Esperana
Gafanhoto
Podemos projetar o
exemplo no visto antes
dentro do mesmo espao
que a base de dados.
Acabamos de abstrair os
detalhes do nosso problema
particular. Ser muito mais
fcil conversar sobre pontos
no espao.
Podemos projetar o
exemplo n exemplo n o visto antes o visto antes
dentro do mesmo espao
que a base de dados.
Acabamos de abstrair os
detalhes do nosso problema
particular. Ser muito mais
fcil conversar sobre pontos
no espao.
11 5.1 7.0
??????? ???????
Exemplo n Exemplo n o visto antes o visto antes = =
Classificador Linear Simples
Classificador Linear Simples
Se exemplo n exemplo n o visto antes o visto antes est acima da
linha
Ento
classe Esperana
seno
classe Gafanhoto
Esperana
Gafanhoto
R.A. Fisher
1890-1962
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
O classificador linear simples
definido para espaos dimensionais maiores
podemos visualiz-lo
como sendo um
hiperplano
n-dimensional
interessante pensar no que aconteceria neste exemplo se no
tivssemos a terceira dimenso
No podemos mais obter
acurcia perfeita com o
classificador linear simples
Podemos tentar resolver este
problema usando um
classificador quadrtico
simples ou um classificador
cbico simples
Entretanto, como veremos
mais tarde, esta provavel-
mente uma idia ruim
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
100
10 20 30 40 50 60 70 80 90 100
10
20
30
40
50
60
70
80
90
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Quais dos Quais dos Problemas do Pombo Problemas do Pombo
podem ser resolvidos pelo Classificador podem ser resolvidos pelo Classificador
Linear Simples? Linear Simples?
1) 1) Perfeito Perfeito
2) 2) In In til til
3) 3) Muito bom Muito bom
Problemas que
podem ser resolvidos
por um classificador
linear so chamados
de linearmente
separveis.
Um problema famoso Um problema famoso
R. A. Fishers Iris Dataset.
3 classes
50 exemplos de cada classe
A tarefa classificar as plantas
em uma das 3 variedades usando
comprimento de ptala e largura
de ptala.
Iris Setosa Iris Versicolor Iris Virginica
Setosa
Versicolor
Virginica
Setosa
Versicolor
Virginica
Podemos generalizar o classificador linear relativo a variveis a N
classes, combinando N-1 linhas. Neste caso primeiramente
aprendemos a linha para (perfeitamente) discriminar entre Setosa e
Virginica/Versicolor, ento aprendemos a discriminar
aproximadamente entre Virginica e Versicolor.
Se comp. de ptala > 3.272 (0.325 * comp. de ptala)
Ento classe = Virginica Seno Se larguar de ptala
Acurcia de predio
Velocidade e Escalabilidade
Tempo para construir o modelo
Tempo para usar o modelo
Eficincia com bases de dados armazenadas em discos
Robustez
Com o tratamento de rudo, valores faltantes e
caractersticas irrelevantes, streaming de dados
Interpretabilidade:
Compreenso e percepo fornecidas pelo modelo
Vimos agora um algoritmo de classifica
Vimos agora um algoritmo de classifica

o
o
e estamos prestes a ver mais. Como
e estamos prestes a ver mais. Como
dever
dever

amos compar
amos compar

-
-
los
los
?
?
Acur
Acur

cia da Predi
cia da Predi

o (I)
o (I)
Como estimamos a acurcia do nosso classificador?
Podemos usar a validao cruzada de k-folds
ID do ID do
inseto inseto
Comp. do Comp. do
abdomen abdomen
Comp. das Comp. das
antenas antenas
Classe Classe do do
Inseto Inseto
1 2.7 5.5
Gafanhoto Gafanhoto
2 8.0 9.1
Esperan Esperan a a
3 0.9 4.7
Gafanhoto Gafanhoto
4 1.1 3.1
Gafanhoto Gafanhoto
5 5.4 8.5
Esperan Esperan a a
6 2.9 1.9
Gafanhoto Gafanhoto
7 6.1 6.6
Esperan Esperan a a
8 0.5 1.0
Gafanhoto Gafanhoto
9 8.3 6.6
Esperan Esperan a a
10 8.1 4.7
Esperan Esperan a a
Dividimos o conjunto de dados em k partes (subconjuntos) de tamanhos iguais. O
algoritmo testado k vezes e a cada iterao deixa-se uma das k partes de fora da
construo do classificador, mas usa-se ela para testar o classificador
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Acurcia =
Nmero de classificaes corretas
Nmero de exemplos em nossa base de dados
k = 5
Acur
Acur

cia de Predi
cia de Predi

o (II)
o (II)
Usar a validao cruzada de k-folds uma boa forma de estabelecer quaisquer
parmetros que possamos precisar ajustar no classificador.
Podemos fazer a validao cruzada de k-folds para qualquer conjunto possvel e
escolher o modelo com a maior acurcia. Onde houver um empate escolhemos o
modelo mais simples.
Na verdade, deveramos provavelmente penalizar os modelos mais complexos, mesmo se
eles tiverem maior acurcia, pois modelos mais complexos tm maior probabilidade de
overfitting (discutido mais a frente).
10
7
8
9
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
10
7
8
9
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
10
7
8
9
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
Acuidade = 94% Acuidade = 100% Acuidade = 100%
Acur
Acur

cia de Predi
cia de Predi

o (III)
o (III)
Acurcia =
Nmero de classificaes corretas
Nmero de exemplos na base de dados
Acurcia um nmero nico; podemos entender melhor se
olharmos em uma matriz de confuso. Isso nos d informaes
adicionais teis
Gato Co Porco
Gato 100 0 0
Co 9 90 1
Porco 45 45 10
Classificado como um
Classe verdadeira ...
Precisamos considerar as necessidades de tempo e de
espao para as duas fases distintas de classificao:
Tempo para construir o classificador
No caso do classificador linear mais simples, o tempo necessrio para
ajustar a linha. Esse passo linear no nmero de exemplos.
Tempo para usar o modelo
No caso do classificador linear mais simples, o tempo necessrio para
testar de qual lado da linha o exemplo est. Isso pode ser feito em tempo
constante.
Velocidade e Escalabilidade
Velocidade e Escalabilidade
I
I
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Como veremos, alguns algoritmos de
classificao so muito eficientes em um
aspecto e muito pobres em outro.
Velocidade e Escalabilidade
Velocidade e Escalabilidade
II
II
Para aprendizado com pequenas bases
de dados, esta a idia geral
Porm, para minerao de conjuntos
de dados massivos, no a
complexidade de tempo (da memria
principal) que importa tanto e sim
quantas vezes precisamos percorrer a
base de dados.
Isto ocorre porque para a maioria das operaes de minerao de
dados, o tempo de acesso a disco domina completamente o tempo da
CPU.
Para minerao de dados, os pesquisadores frequentemente relatam o
nmero de vezes que voc deve percorrer a base de dados.
Robustez (I)
Robustez (I)
preciso considerar o que acontece quando temos:
Rudo
Por exemplo, a idade de uma pessoa pode ter sido digitada
erroneamente como 650 ao invs de 65; como isto afeta nosso
classificador? (Isto s importante para construo do classificador, se o
exemplo que queremos classificar tem rudo, no podemos fazer nada).
Valores faltantes
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Por exemplo, suponha que queremos
classificar um inseto, mas s conhecemos
o comprimento do abdmen (eixo X), e
no o comprimento das antenas (eixo Y);
assim mesmo podemos classificar o
exemplo?
Robustez (II)
Robustez (II)
preciso considerar o que acontece quando temos:
Caractersticas irrelevantes
Por exemplo, suponha que queremos classificar pessoas como
Aluno_Grad_Aprovado
Aluno_Grad_Nao_Aprovado
E acontece que acertar mais que 5 em um teste em particular
significa um indicador perfeito para o problema
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
Se tambm usarmos
comprimento_cabelo
como uma
caracterstica, como
isto afetar nosso
classificador?
Robustez (III)
Robustez (III)
preciso considerar o que acontece quando temos:
Transmisso contnua de dados
Para muitos problemas do mundo real, no temos um nico
conjunto de dados fixo. Ao contrrio, o conjunto de dados chega
constantemente, potencialmente para sempre (mercado de
valores, dados de previso de tempo, dados de sensores, etc)
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
Nosso classificador capaz de lidar com
transmisso contnua de dados?
Interpretabilidade
Interpretabilidade
Alguns classificadores oferecem uma caracterstica
bnus. A estrutura do classificador aprendido nos diz
algo sobre o domnio.
Altura
P
e
s
o
Como um exemplo trivial, se tentarmos
classificar o risco de sade de pessoas por
apenas sua altura e peso, podemos ganhar a
seguinte percepo (baseado na observao
de que um nico classificador linear no
funciona bem, mas dois classificadores
lineares funcionam).
Existem duas formas de no se estar
saudvel, estar obeso ou magro
demais.
Classificador Vizinho Mais Pr
Classificador Vizinho Mais Pr

ximo
ximo
Se o exemplo mais prximo de um
exemplo n exemplo n o visto antes o visto antes uma Esperana
a classe Esperana
Seno
a classe Gafanhoto
Esperana
Gafanhotos
Joe Hodges
1922-2000
Evelyn Fix
1904-1965
C
o
m
p
r
i
m
e
n
t
o

d
e

A
n
t
e
n
a
C
o
m
p
r
i
m
e
n
t
o

d
e

A
n
t
e
n
a
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
Comprimento do abdomen Comprimento do abdomen
Esta diviso de espao chamada
de Dirichlet Tessellation (ou
diagrama de Voronoi, ou regies
Theissen).
Podemos visualizar o algoritmo do vizinho mais prximo
em termos de uma superfcie de deciso
Note que no precisamos
realmente construir essas
superfcies, elas so
simplesmente os limites
implcitos que dividem o
espao em regies que
pertencem a cada exemplo.
O alg. do vizinho mais pr O alg. do vizinho mais pr ximo ximo sens sens vel a vel a exce exce es es
A soluo
Podemos generalizar o algoritmo do vizinho mais
Podemos generalizar o algoritmo do vizinho mais
pr
pr

ximo para o algoritmo do k


ximo para o algoritmo do k
-
-
vizinhos mais
vizinhos mais
pr
pr

ximos (KNN).
ximos (KNN). Medimos a distncia at os k exemplos
mais prximos e as deixamos votar. k tipicamente
escolhido como um nmero mpar.
k = 1 k = 3
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10
Suponha que o seguinte
verdadeiro, se a antena de um
inseto maior que 5.5 ele um
Esperana, seno ele um
Gafanhoto.
Usando somente o comprimento
de antena conseguimos
classificao perfeita!
Suponha que o seguinte
verdadeiro, se a antena de um
inseto maior que 5.5 ele um
Esperana, seno ele um
Gafanhoto.
Usando somente o comprimento
de antena conseguimos
classificao perfeita!
O algoritmo do vizinho mais pr O algoritmo do vizinho mais pr ximo ximo sens sens vel a caracter vel a caracter sticas sticas
irrelevantes irrelevantes
Dados de
treinamento
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
6
5
Suponha entretanto, que
adicionemos uma
caracterstica irrelevante, por
exemplo, a massa de um
inseto.
Usando o comprimento da
antena e a massa dos insetos
com o algoritmo 1-NN
obtemos a classificao
errada!
Suponha entretanto, que
adicionemos uma
caracterstica irrelevante, por
exemplo, a massa de um
inseto.
Usando o comprimento da
antena e a massa dos insetos
com o algoritmo 1-NN
obtemos a classificao
errada!
Como amenizamos a sensibilidade dos
Como amenizamos a sensibilidade dos
algoritmos do vizinho mais pr
algoritmos do vizinho mais pr

ximo a
ximo a
caracter
caracter

sticas irrelevantes?
sticas irrelevantes?
Usando mais exemplos de treinamento
Perguntando a um especialista quais caractersticas
so relevantes para a tarefa
Usando testes estatsticos para tentar determinar
quais caractersticas so teis
Procurando sub-conjuntos de caractersticas (no
prximo slide veremos porque isto difcil)
Por que procurar sub Por que procurar sub- -conjuntos de caracter conjuntos de caracter sticas sticas dif dif cil cil
Suponha que voc tenha o seguinte problema de classificao, com
100 caractersticas, e acontea que as Caractersticas 1 e 2 (o X e Y
abaixo) do classificao perfeita, mas todas as outras 98
caractersticas so irrelevantes
Usar todas as 100 caractersticas dar resultados pobres, mas tambm
dar se usarmos somente a Caracterstica 1, e tambm usando
somente a Caracterstica 2! Dos 2
100
1 possveis sub-conjuntos de
caractersticas, somente um realmente funcionar.
Somente
Caracterstica 1
Somente
Caracterstica 2
1 2 3 4
3,4 2,4 1,4 2,3 1,3 1,2
2,3,4 1,3,4 1,2,4 1,2,3
1,2,3,4
Seleo para frente
Eliminao para trs
Busca Bi-direcional
O algoritmo do vizinho mais pr O algoritmo do vizinho mais pr ximo ximo sensivel a unidades de medida sensivel a unidades de medida
Eixo X medido em centmetros
Eixo Y medido em dlares
O vizinho mais prximo ao
exemplo cor-de-rosa
desconhecido vermelha.
Eixo X medido em milmetros
Eixo Y medido em dlares
O vizinho mais prximo ao
exemplo cor-de-rosa
desconhecido azul.
Uma soluo normalizar as unidades para nmeros puros.
Tipicamente as caractersticas so Z-normalizadas para ter uma
mdia de zero e um desvio padro de um. X = (X mean(X))/std(x)
Podemos acelerar o algoritmo do vizinho mais pr Podemos acelerar o algoritmo do vizinho mais pr ximo ximo
jogando fora jogando fora alguns dados. Isto alguns dados. Isto chamado de limpeza de chamado de limpeza de
dados. dados.
Note que isto pode as vezes melhorar a acur Note que isto pode as vezes melhorar a acur cia! cia!
Uma abordagem possvel.
Apagar todos os exemplos
que esto rodeados por
membros das suas prprias
classes.
Tambm podemos acelerar a classificao com indexao
10
1 2 3 4 5 6 7 8 9 10
1
2
3
4
5
6
7
8
9
( ) ( )
p
n
i
p
i i
c q C Q D


=1
,
( ) ( )


=
n
i
i i
c q C Q D
1
2
,
Manhattan (p=1)
Max (p=inf)
Mahalanobis
Euclidiana Balanceada
At At agora assumimos que o algoritmo do vizinho mais pr agora assumimos que o algoritmo do vizinho mais pr ximo usa a ximo usa a
Dist Dist ncia Euclidiana, entretanto, este pode n ncia Euclidiana, entretanto, este pode n o ser o caso o ser o caso
De fato, podemos usar o algoritmo do vizinho mais De fato, podemos usar o algoritmo do vizinho mais
pr pr ximo com quaisquer fun ximo com quaisquer fun es de dist es de dist ncia/similaridade ncia/similaridade
ID ID Name Name Classe Classe
1 Gunopulos
Grego Grego
2 Papadopoulos
Grego Grego
3 Kollios
Grego Grego
4 Dardanos
Grego Grego
5 Keogh
Irland Irland s s
6 Gough
Irland Irland s s
7 Greenhaugh
Irland Irland s s
8 Hadleigh
Irland Irland s s
Por exemplo, Faloutsos grego ou irlands?
Podemos comparar o nome Faloutsos com uma
base de dados de nomes usando a distncia de
edio de seqncias de caracteres
editar_distncia (Faloutsos, Keogh) = 8
editar_distncia (Faloutsos, Gunopulos)
= 6
Com sorte, a semelhana do nome
(particularmente o sufixo) com outros nomes
gregos pode significar que o vizinho mais
prximo tambm um nome grego.
Medidas de distncia especializadas existem para seqncias de
DNA, sries temporais, imagens, grafos, vdeos, conjuntos,
impresses digitais, etc
Peter
Piter
Pioter
Piotr
Substituio (i por e)
Insero (o)
Deleo (e)
Exemplo de Dist
Exemplo de Dist

ncia de
ncia de
Edi
Edi

o
o
possvel transformar qualquer string Q
em uma string C, usando somente
Substituio, Insero e Deleo.
Assuma que cada um destes operadores
tem um custo associado.
A similaridade entre duas strings pode ser
definida como o custo da transformao
mais barata de Q para C.
Note que por agora ignoramos a questo de como encontramos a
transformao mais barata
Quo semelhantes so os
nomes Peter e Piotr?
Assuma a seguinte funo de custo
Substituio 1 Unidade
Insero 1 Unidade
Deleo 1 Unidade
D(Peter,Piotr) 3
P
i
o
t
r
P
y
o
t
r
P
e
t
r
o
s
P
i
e
t
r
o
P
e
d
r
o
P
i
e
r
r
e
P
i
e
r
o
P
e
t
e
r
Apndice Bibliograa
Referncias I
[1] Eamonn Keogh,
Professor, Computer Science & Engineering Department,
University of California - Riverside.
http:
//www.cs.ucr.edu/~eamonn/tutorials.html
[2] Monard, M. C.
Slides da disciplina SCC630 - Inteligncia Articial. ICMC -
USP, 2010.
Joo Lus G. Rosa c 2011 - SCC-630: XI-1. Classicao de Atributos - parte 1 5/5

Você também pode gostar