Instance-
Instance-Based Learning Exemplo IBL
3 4
1
Algoritmo IBL1 Algoritmo IBL1
c1 c1 c3 c1 c1 c3
c4 c4
c4 c4
c1 c1
c2 c2 c2 c2
Novo Exemplo
c4 c4
c3 c3
c2 c2
Exemplos Armazenados Exemplos Armazenados
7 8
9 10
2
Algoritmo IBL2 Algoritmo IBL2
c1 c1
c1 Mesma classe
que o mais
próximo, não
armazena
13 14
classe diferente
c1 c1 c1 que o mais
próximo,
armazena
c1 classe diferente
c1
c2 c2
que o mais
próximo,
armazena
15 16
c1 c1 c1 c1
c1 c1
c2 c2
c3 classe diferente c3
que o mais classe diferente
próximo, c2 que o mais
armazena próximo,
armazena
17 18
3
Algoritmo IBL2 Algoritmo IBL2
c1 c1 c1 c1
c1 Mesma classe
c1
c2 c2 c2 c2
que o mais
próximo, não
armazena c4 classe diferente
que o mais
c3 c3 próximo,
c2 c2 armazena
19 20
c1 c1 c3 classe diferente c1 c1 c3
que o mais
próximo,
armazena
c4
c1 c1
c2 c2 c2 c2
c4 c4
c3 c3
c2 c2 Mesma classe
que o mais
próximo, não
armazena
21 22
c1 c1 c3 c1 c1 c3
c4 c4
c4 c4
c1 c1
c2 c2 c2 c2
c4 c4
c3 c3
c2 classe diferente c2
que o mais
próximo,
armazena
23 24
4
IBL3 IBL1 x IBL2 x IBL3
Idem ao IBL2 exceto: IBL1 fortemente relacionado com K-
Mantém um registro do número de classificações
corretas e incorretas para cada exemplo vizinhos mais próximos (K-NN, K-Nearest
armazenado Neighbors), K=1
Este registro mantém o desempenho de IBL2 e IBL3 usam métodos de
classificação daquele exemplo
IBL3 avalia cada exemplo, utilizando um teste de esquecimento de exemplos (exemplos que
significância para determinar quais exemplos são não melhoram a precisão do classificador)
bons classificadores e quais são ruídos
Exemplos com ruído são descartados
¿Tolerante a ruídos
¿Usa menos memória que IBL2
25 26
5
Algoritmo K-NN Exemplo: Classificação
Assuma os seguintes exemplos de treinamento
c1 c1 c3 x1 = 〈1,2,7,8,+〉
c4
x2 = 〈1,3,7,6,-〉
Classifique x3 = 〈1,2,7,6〉
c1 c4
Calcular distância entre x3 e cada um dos exemplos de
c2 c2 treinamento
Novo Exemplo dist(x1, x3) = 2
c4 dist(x2, x3) = 1
c3
Classifique (rotule) x3 baseado nos K vizinhos mais
c2
Exemplos Armazenados próximos, onde K=1
Classe 1 x3 é classificado como – uma vez que é mais próximo a x2
31 32
3 vizinhos 7 vizinhos
mais próximos mais próximos
2x,1o 3x,4o
35 36
6
KNN: Regressão, K=1 KNN: Regressão, K=3
37 38
39 40
41 42
7
Fronteiras, K=10 Fronteiras
43 44
45 46
47 48
8
Fronteiras, K=1 Fronteiras, K=5
49 50
51 52
53 54
9
Fronteiras, K=10 Fronteiras (Árvore de Decisão)
55 56
57 58
Normalização Normalização
Considerando a distância Euclidiana, mais utilizada nas De forma a evitar ruídos, é também comum:
aplicações, um problema ocorre quando um dos atributos
assume valores em um intervalo relativamente grande, dividir pelo desvio-padrão ao invés do intervalo ou
podendo sobrepujar os demais atributos “cortar” o intervalo por meio da remoção de uma
Por exemplo, se uma aplicação tem apenas dois atributos pequena porcentagem (e.g. 5%) dos maiores e
A e B e A varia entre 1 e 1000 e B entre 1 e 10, então a menores valores daquele atributo e somente então
influência de B na função de distância será sobrepujada definir o intervalo com os dados remanescentes
pela influência de A Também é possível mapear qualquer valor fora do intervalo
Portanto, as distâncias são freqüentemente para os valores mínimo ou máximo para evitar valores
normalizadas dividindo a distância de cada atributo pelo normalizados fora do intervalo [0,1]
intervalo de variação (i.e. diferença entre valores máximo
e mínimo) daquele atributo Conhecimento do domínio pode freqüentemente
Assim, a distância para cada atributo é normalizada para ser utilizado para decidir qual método é mais
o intervalo [0,1] apropriado
59 60
10
x i = ( xi ,1 , xi , 2 , xi ,3 , L, xi , m ) x i = ( xi ,1 , xi , 2 , xi , 3 , L , xi , m )
Métricas x j = ( x j ,1 , x j , 2 , x j ,3 , L, x j ,m )
Métricas x j = ( x j ,1 , x j , 2 , x j , 3 , L , x j ,m )
61 62
x i = ( xi ,1 , xi , 2 , xi ,3 , L , xi ,m ) x i = ( xi ,1 , xi , 2 , xi ,3 , L , xi , m )
Métricas x j = ( x j ,1 , x j , 2 , x j ,3 , L , x j , m )
Métricas x j = ( x j ,1 , x j , 2 , x j ,3 , L , x j , m )
Correlação Pearson:
Remove efeitos de magnitude;
O método mais simples para atributos
intervalo [-1.0, 1.0]
-1.0 = inversamente
categóricos é o seguinte
correlacionado, 0.0 = sem
correlação, 1.0 = perfeitamente 1 se xi,r ou x j ,r são desconhecidos
correlacionado
No exemplo, as linhas azul e overlap( xi,r , x j ,r ) = 1 se xi,r ≠ x j ,r
vermelha têm alta correlação,
mesmo que a distância entre as 0 se x = x
linhas seja significante i,r j ,r
m
m m
∑x
r =1
x j , r − ∑ xi , r ∑ x j , r / m
i ,r
r =1 r =1
dist Pearson ( x i ,x j ) = m
m 2 m
m 2 m
distCat (x i , x j ) = ∑ overlap( xi , r , x j ,r )
∑ xi , r − (∑ xi ,r ) / m ∑ x j , r − (∑ x j , r ) 2 / m
2
r =1
r =1 k =1 r =1 r =1
63 64
11
Métricas Métricas
Usando VDM, dois valores são considerados Como vimos, a distância Euclidiana é inapropriada para atributos
nominais e VDM é inapropriada para atributos contínuos
próximos se eles possuem mais classificações Assim, nenhuma das métricas vistas é suficiente para uso em uma
similares (i.e. maior correlação com a classe), aplicação heterogênea, ou seja, uma com ambos atributos nominais e
contínuos
desconsiderando qualquer ordem que eles A Heterogeneous Value Difference Metric (HVDM) é uma função de
possam ter distância heterogênea
Para atributos contínuos, HVDM divide a diferença absoluta entre os
Por exemplo, se um atributo possui três valores atributos pelo desvio padrão do atributo (como 95% dos valores de
vermelho, verde e azul e a aplicação consiste em uma distribuição normal estão entre 2 desvios-padrões, os valores
são divididos por 4 desvios-padrões para mapear em um intervalo de
identificar se um objeto é ou não uma maçã, tamanho 1)
vermelho e verde serão considerados mais Para atributos discretos, HVDM pode utilizar VDM com q=1, q=2
(mas, na prática, a raiz quadrada não é tirada pois a função HVDM
próximos entre si do que vermelho e azul, uma eleva os valores ao quadrado novamente) ou uma função utilizada
em redes neurais Radial Basis
vez que vermelho e verde têm correlação similar
com a classe
67 68
Calculando Similaridade
HVDM
m
dist HDVM ( x i , x j ) = ∑ dist ( xi ,r , x j ,r ) 2
Numérica
Xr
r =1
se xi ,r ou x j ,r
1
são desconhecidos Tradicionalmente no intervalo [0.0, 1.0]:
dist X r ( xi ,r , x j ,r ) = norm - vdm( xi ,r , x j ,r ) se X r é nominal
norm- diff ( x , x )
i ,r j ,r se X r é contínuo 0.0 = sem similaridade, 1.0 = identidade
xi , r − x j , r Similaridade = 1.0 - distância
norm - diff ( xi ,r , x j ,r ) =
4 × std - dev( X r )
k
N ( X r , xi , r , C s ) N ( X r , x j , r , Cs )
norm - vdm1( xi , r , x j , r ) = ∑ −
s =1 N ( X r , xi , r ) N ( X r , x j ,r )
2
k
N ( X r , xi ,r , Cs ) N ( X r , x j ,r , C s )
norm - vdm2( xi , r , x j , r ) = ∑
s =1 N ( X r , xi , r )
−
N ( X r , x j ,r )
2
k
N ( X r , xi , r , Cs ) N ( X r , x j ,r , C s )
norm - vdm3( xi , r , x j , r ) = k × ∑ −
s =1 N ( X r , xi , r ) N ( X r , x j ,r )
69 70
Calculando Similaridade
Maldição da Dimensionalidade
Booleana/Categórica
Dados dois vetores booleanos Correlação = (A+D)/(A+B+C+D)
X e Y, seja A o número de O número de pontos necessários para
atributos onde ambos vetores
assumem 1, etc. como
Coef. Jaccard = A / (A+B+C+D) manter uma determinada precisão
Utilizado quando a ausência de
mostrado abaixo
um valor verdadeiro não (densidade espacial) cresce
Dois métodos para similaridade significa similaridade
são dados ao lado Exemplo:
exponencialmente com o aumento na
Podem ser generalizados para
dados categóricos
Suponha que estamos
realizando um trabalho de
dimensão (acréscimo de novos atributos)
filogenética estrutural e X[j] é
verdadeiro se o organismo tem Alternativamente, em altas dimensões, os
asas
1
Y[j]
0 Dois organismos não são mais pontos tendem a ser tornar eqüidistantes
similares se ambos não têm
1 A B asas uns dos outros
X[j] Dessa forma, o coeficiente de
0 C D Jaccard é mais natural que o
coeficiente de correlação neste
caso
71 72
12
Maldição da Dimensionalidade Maldição da Dimensionalidade
10 pontos, igualmente espaçados, intervalo [0,1] Cada atributo adicional aumenta uma dimensão, assumindo não mais
de 10 valores possíveis para cada atributo:
0.4
Vantagens
Não requer nenhum mecanismo de raciocínio
0.3
0.2
Não se baseia em abstrações de conceitos
0.1 É capaz de modelar fronteiras (problemas/conceitos)
0
complexas
0 20 40 60 80 100 120 140 160 180 200
13
Resumo
Desvantagens
Necessidade de definir similaridade métrica para objetos no
universo
Métricas apropriadas de distância
Representação não é inteligível aos humanos
Para a classificação de um novo exemplo, todos os dados de
treinamento devem estar disponíveis
Computacionalmente dispendioso em altas dimensões
Indexação eficiente dos exemplos de treinamento
A métrica de distância pode se tornar enganadora se todos os
atributos são considerados
Em altas dimensões, todos os pontos encontram-se quase na mesma
distância entre si
Tratamento para atributos irrelevantes
(K-NN) Escolha de K é desconhecida
uso de cross-validation para determinar K
79
14