Método k-Nearest Neighbor Aplicado a Base de Dados Iris
Michel Alves dos Santos ∗
Dezembro de 2011
Resumo
Neste trabalho s...
lizando como conjunto de treinamento a base de
dados Iris.
2 k-Nearest Neighbor
Este método foi descrito primeiramente nos...
3.1 Comportamento da Amostra
O comportamento geométrico da base de da-
dos iris pode ser facilmente visualizado através
da...
Próximos SlideShares
Carregando em…5
×

kNN Algorithm

496 visualizações

Publicada em

Neste trabalho são apresentados alguns resultados da aplicação da estratégia k-Nearest-Neighbor à popular base de dados Iris, introduzida por Sir Ronald Aylmer Fisher em 1936 como um exemplo de análise discriminante. Os dados contêm quatro características de três espécies de flores Iris, da família das Iridáceas: comprimento da sépala, largura da sépala, comprimento da pétala e largura da pétala. Baseado na combinação desses quatro atributos, Fisher desenvolveu um modelo discriminante linear para distinguir cada uma das espécies. O classificador empregado neste trabalho utiliza esses quatro atributos para construção de uma medida de dispersão e proximidade que classifique corretamente os 3 tipos de flores: Iris-Virginica, Iris-Versicolor e Iris-Setosa. A base de dados contém 150 amostras, sendo 50 de cada uma das classes.

Publicada em: Educação
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

kNN Algorithm

  1. 1. Método k-Nearest Neighbor Aplicado a Base de Dados Iris Michel Alves dos Santos ∗ Dezembro de 2011 Resumo Neste trabalho são apresentados alguns re- sultados da aplicação da estratégia k-Nearest Neighbor à popular base de dados Iris, intro- duzida por Sir Ronald Aylmer Fisher em 1936 como um exemplo de análise discriminante. Os dados contêm quatro características de três es- pécies de flores Iris, da família das Iridáceas: comprimento da sépala, largura da sépala, com- primento da pétala e largura da pétala. Ba- seado na combinação desses quatro atributos, Fisher desenvolveu um modelo discriminante li- near para distinguir cada uma das espécies. O classificador empregado neste trabalho utiliza esses quatro atributos para construção de uma medida de dispersão e proximidade que classi- fique corretamente os 3 tipos de flores: Iris- Virginica, Iris-Versicolor e Iris-Setosa. A base de dados contém 150 amostras, sendo 50 de cada uma das classes. Figura 1: Sir Ronald Aylmer Fisher (1890 — 1962) foi um estatístico, biólogo evolutivo e geneticista in- glês, descrito por Anders Hald como ‘um gênio que criou praticamente sozinho as fundações para a mo- derna ciência estatística’. Complementando a me- dida de informação própria para medir incerteza so- bre espaços desordenados, Fisher criou uma medida alternativa de informação apropriada para medir in- certeza sobre espaços ordenados. Ao lado, gráfico de distribuição para a largura da sépala dentro da classe iris-versicolor. ∗Bacharelando em Ciência da Computação, Universi- dade Federal do Estado de Alagoas (UFAL). E-mail: mi- chel.mas@gmail.com. Disciplina: Inteligência Artificial II. Docente Responsável: Aydano Pamponet Machado. 1 Introdução Classificadores baseados em árvores de deci- são, redes neurais, redes bayesianas, são caracte- rizados pelo fato de utilizarem os dados de trei- namento para construírem um modelo de clas- sificação, que uma vez encontrado e testado, es- tará pronto para ser utilizado na categorização de qualquer novo objeto. O processo de encon- trar o modelo é lento, mas uma vez encontrado, o ato de classificar um novo objeto é realizado de forma rápida. Tais classificadores são chama- dos de Classificadores Apressados (Eager Clas- sifiers). Existem diversos métodos de classificação, amplamente utilizados na prática, que diferem dos métodos anteriormente citados pelo fato de não utilizarem os dados de treinamento para produzirem um modelo de classificação. O processo de classificação utilizado por estes classificadores, ditos preguiçosos, pode ser des- crito suscintamente da seguinte forma: a cada novo objeto que se quer classificar, utiliza-se os dados de treinamento para verificar quais são os objetos nesta base de dados que mais se asseme- lham ao novo objeto que se quer classificar. O objeto será classificado dentro da classe mais co- mum a que pertencem os objetos mais similares a ele. Assim, a classificação é feita por analogia. Nenhum modelo de classificação é criado. Ao in- vés disto, a cada novo objeto a ser classificado, os dados de treinamento são escaneados. Obviamente, classificadores preguiçosos são computacionalmente dispendiosos. Eles reque- rem técnicas eficientes de armazenamento e são adequados para implementação em ambientes de computação paralela. Uma qualidade de tais classificadores é que suportam aprendizado in- cremental. Dois exemplos de classificadores pre- guiçosos são o k-Nearest Neighbor (k vizinhos mais próximos) e o Case-based Reasoning (raci- ocínio baseado em casos). Nesta artigo, iremos discutir somente o k-Nearest Neighbor e alguns resultados obtidos através de sua aplicação uti- 1
  2. 2. lizando como conjunto de treinamento a base de dados Iris. 2 k-Nearest Neighbor Este método foi descrito primeiramente nos anos 1950. Mas foi somente a partir dos anos 60, quando computadores mais potentes surgiram, que o método ganhou popularidade. Ele tem sido muito usado, desde então, principalmente em reconhecimento de padrões. 2.1 Descrição do Método Suponhamos um conjunto D de tuplas de trei- namento. Cada elemento de D é uma tupla (x1, x2, . . . , xn, c), onde c é a classe à qual per- tence a tupla (x1, . . . , xn). A tupla (x1, . . . , xn) pode ser vista como um ponto num espaço n- dimensional. Seja Y = (y1, . . . , yn) uma nova tupla, ainda não classificada. A fim de classificá- la, calcula-se as distâncias de Y a todas as tu- plas de treinamento e considera-se as k tuplas de treinamento mais próximas de Y . Dentre estas k tuplas, verifica-se qual a classe que aparece com mais frequência. A tupla Y será classifi- cada dentro desta classe mais frequente. 2.2 Cálculo de Distâncias A distância entre duas tuplas é calculada uti- lizando uma noção de distância, por exemplo, a distância euclidiana: d(X, Y ) = n i=1 (xi − yi)2 (1) Geralmente, é preciso normalizar os valores de cada atributo, a fim de que todos localizem-se num mesmo intervalo de variação, não havendo muita discrepância entre os valores dos diferen- tes atributos, que poderia influir tendenciosa- mente no cálculo da distância. O processo de normalização é simples; seja v um valor do atri- buto A que aparece na tupla Y . Para normali- zar v consideramos o valor v ∈ [0, 1] calculado como: v = v − minA maxA − minA (2) onde minA e maxA são os valores mínimos e máximos que pode assumir o atributo A. Por exemplo, seja A o atributo Renda-Mensal, e suponhamos que a renda mensal mínima é R$300,00 e a máxima é R$ 20.000,00. O valor de R$ 1200,00 é normalizado para 0, 045. Vale a pena lembrar que dependendo da na- tureza dos dados outras medidas de distân- cia podem ser adotadas, tais como Manhattan, Mahalanobis-L1, Mahalanobis-L2, etc. 2.3 Valor Ideal de k Como determinar o melhor valor de k? O melhor valor de k pode ser determinado expe- rimentalmente. Começando-se com k = 1, e utilizando-se um conjunto de testes, para esti- mar o taxa de erro do classificador. Para cada k, classifica-se as tuplas do conjunto de testes e verifica-se quantas tuplas foram bem classifica- das. O valor de k que dá a menor taxa de erro será o escolhido. Normalmente, os valores de k escolhidos são 1, 2, 3 e √ n, onde n é o tamanho da base de treinamento. 2.4 Complexidade Assintótica Seja n o tamanho da base de treinamento e k = 1. Para classificar uma nova tupla são ne- cessários O(n) comparações. Ordenando e ar- mazenando as tuplas de treinamento numa ár- vore de busca (B-tree) por exemplo, o número de comparações pode ser reduzido para O(logn). Técnicas de computação paralela reduzem o nú- mero de comparações a uma constante, indepen- dente do valor de n. 3 Resultados Antes de tudo iremos apresentar alguns gráfi- cos que exibem o comportamento geométrico e estátistico das amostras ou tuplas pertencentes a base de dados iris e posteriormente apresen- taremos os resultados obtidos através da nossa implementação. Figura 2: Da esquerda para direita: setosa, versi- color e virginica. Baseado no Modelo Discriminante Linear de Fisher, este conjunto de dados tornou-se um caso de teste típico para muitas técnicas de clas- sificação em aprendizado de máquina tais como as Máquinas de Suporte Vetorial. 2
  3. 3. 3.1 Comportamento da Amostra O comportamento geométrico da base de da- dos iris pode ser facilmente visualizado através das seguintes ferramentas: Gráfico Acumulativo em Faixas, Diagrama de Pares e Diagrama de Pontos por Classe. qqqq Sepal.LengthSepal.WidthPetal.LengthPetal.Width 0 2 4 6 8 Boxplot Atributos Sepal.Length Sepal.Width Petal.Length Petal.Width Figura 3: Através do gráfico acumulativo em faixas podemos verificar onde se concetram as medidas de um determinado conjunto de atributos. Sepal.Length 2.0 2.5 3.0 3.5 4.0 q q qq q q q q q q q qq q q q q q q q q q q q q q q qq qq q q q qq q q q qq q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q qq q q q q q q qqq q q q q qq q q q q q q q q q q q q q qq q q q qq qq q q q q q q q q q q q q q qq q q qq q q q q q qqq q q q q q q qq q q q q q q q qq q qq q q q q q q q q q qq qq qq q q q qq q q q qq qq qq q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q qq q q qq q q q q q q qq q q q q qqq q q q q q q q q q q q q q qq q qq qq qq q q q q q q q qq q q q q qq q q qq q q q q q qqq q q q q 0.5 1.0 1.5 2.0 2.5 4.55.56.57.5 q q qq q q q q q q q qq q q q q q q q q q q q q q q qq qq q q q qq q q q qq qq qq q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q qq q q q q q q qqq q q q qqq q q q q q q q q q q q q q qq q q q qq qq q q q q q q q qq q q q q qq q q qq q q q q q q qq q q q q 2.02.53.03.54.0 q q q q q q q q q q q q qq q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q qq q q q q q q q qq q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q qq q q q q q q q q q Sepal.Width q q q q q q qq q q q q qq q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q qq q q q q q q q qq q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q qqq q q q q q q q q q q q q q q qq q q q q qq q q q q qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q qq q q q q q q q qq q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q qq q q q q q q qq q q q q q q q q q q q q q q q qq q q q q q q q q q qq q q q q q q qq q q q q q q q q qqq q q q q qq q qq q q q q qq q q q q q q q qq qq qq qq qq q qqq q qqq q q q q q qq q q q q qq q q q q q q q q q qq q q q q q q q q q q q q q qq q q q q q q qq q q q q qqq q q q q q q q q q q q q q q q q qq q q q q q q q q q q q qq q q q q q q q q qq q q q qq q q q q q q q qq q q q q qqq q qq q q q q qq q q q q q q q q qqq qq q qqq q qqq q qq q q q q q q qq q q q q qq q q q q q q q q q qq q q q q q q q qq q q q q qq q q q q q q qq q q q q q qqq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q qq q q q q q q q Petal.Length 1234567 qqq qq q qqqqqq q qq q qq q q q q q q q q qqq qq qqqq qqqq q qqq q q q q qqq q q q q qq q q q q q q q q q qq q q q q q q q qq q q q q qq q q qq q q qq q q q q qqqq q q q q q q q q q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q qq q q q qq q q q q q q q 4.5 5.5 6.5 7.5 0.51.01.52.02.5 qqqq q q q qq q qq qq q qq q qq q q q q q q q qqqq q q qqq q q q q qq q q q q qq qq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qqq q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q q q q q q qqq q q q q q q q q q qq q q q q q q q q q q q qq qq q q q qq q qq qq q qq q qq q q q q qq q qqqq q q qqq q q q q qq q q q q qq qq q qq q q q q q q q q q q q q q q q q q q q q q q qq q q q q q q q q q q q qq q q q q q q qq q q q q q q q q q qq q q q q q q q q q q q q qq q q qq q q q q q q q q q q qq q q q q q q q q q q q 1 2 3 4 5 6 7 qqqqq q q qq q qq qq q qq qqq q q q q qq q qqqq q q qqqq q qq qq q q q q qqqq q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q qqq q q q q q q qq q q q q q q q q q qq q q q q q q q q q q q q q q q q qqq q q q q q q q q q qq q q q q q q q q q q q Petal.Width Conjunto de Dados Iris − Diagrama de Pares Figura 4: Através do diagrama de pares podemos executar um confronto entre as medidas dos atri- butos. Como o próprio nome sugere, esse confro- tamento é feito em uma combinação dois a dois. No diagrama apresentados os pontos em vermelho representam a classe setosa, os verdes a classe ver- sicolor e os amarelos a classe virginica. Scatter Plot Matrix Sepal Length qqqq q q q q q q q qq q q q q q q q q q q q qq qqq qq q q q qq q q q qq q q qq q q q q q qqqq q q q q q q q qq q qq q q q q q q q q qqqqq qq qq q qq q q q qq qq qq q q q q q qqqq q q q q q q q qq q qq q q q q q q q q qqqqq qq qq q qq q q q qq qq qq q q q q q q q qq q q qq q q q q qq q q q q qq q qq qq q qqq qq q qq qq qq q qq q q q q q q q q q Sepal Width q q qq q q qq q q q q qq q q q q qq q qq qq q qqq qq q qq qq qq q qq q q q q q q q q q q q qq q q qq q q q q qq q q q q qq q qq qq q qqq qq q qq qq qq q qq q q q q q q q q q qqqqqqqqq q qqqq qqqq qqqq q qqqqqqqq qqqqq qqq qqqq qq qqq qq qqqq qqqqqq qqqq q qqqqqqq q qqq qqqqqq qqqqqqq qqq qqq q qq qq Petal Length qqqqqqqqqqqqqqqqqqqqqq q qqqqqqqqqqqqqqqqqqqq qq qqqqq qqqqq qqqq q qqqq q qqq qqq q q q qq q qqqq q qqqq qqq qqqq q qqqq qq qqqq q qqqqq qqqq q qqqqqq q q q qq q qqqq q qqqqqqq qqq q q qq qq qq qqqqq qqqqqqqqqq qqqqqq q q q qq q qqqq q qqqqqqqqqqq q qqqqqq Petal Width setosa Sepal Length q q q q q q q q q qq qq q q q qq q q qqqq qqqq q qqq qq q q q q qqq q q q qqq q q q q q q q q q q q q qq qqq q q qq q q qq qq qqqq q qqq q q q q q q qqq q q q qqq q q q q q q q q q q q q qq qq q q q qq q q qqqq qqqq q qqq q q q q q q qqq q q q qqq q q q qq q q qq q q q q q q q qq qq q q q q q q qqq q qq q qq qq q q q q q qq q q q q qq q q q Sepal Width qqq q qq q q q q q q q qq qq q q q q q q qqq q qq q qq q q q q q q q qq q q q q qqq q q qqq q qq q q q q q q q qq qq q q q q q q qqq q qq q qq q q q q q q q qq q q q q qqq q q qq q q qq q q q qq qq q q qqqq q q q qqqqqq q qqqq q q q qqqqq q q q qqq q q q qqq q qq q q q qq qq q q qqqq q q q qqqqqq q qqqq q q qqq qqq q q q qqqq q q Petal Length qqq q qqq q q qq qq q q qqq q q q q qqqqqq q qqqq q qqqqqqqq q q qqqq q q qq q q q q q q qq q q q qq qq q q q q q q qqqq q q qqq q qq q q qqqq q q q qqq q q q qqq q q q q q qq q q q qqqq q q q q q q qqqq q q qqq q qq qq q qqq q q q qqqq q q qqq q q q q q qq q q q qqqq q q q q q q qqqq q q qqq q qqqq qqqq q q q qqqq q q Petal Width versicolor Sepal Length q q q qq q q q q q qq q qq qq qq q q q q q q q qq q qq q qqq q qq q qqq q qqq q q q q q q q qq q q q q q qq q qq qq qq q q q q q q q qq q qq q qqq q qq q qqq q qqq qq q q q q q q q q q q q q qq q q q qq qq q q q q q q q qq q qq q qqq q qq q qqq q qqq qq q q q q qqq q q q q q q q q q q q q q q q q q qq q q q q q q q q qq q q q qq qqq q qq q q q q q Sepal Width q q qqqq q q q q q q q q q q q q q q q q qq qq q q q q q q qq q q q qqqqq q qq q q q q q q q qq qq q q q q q q q q q q q q q q q qqq qq q q q q q q qq q q q qqqqq q qq q q q q q q q qqq q q q q q qqq qq qq qq q q q q q q q qq q qq q q q q q qq q qq qq qq qqqqq q q qqq q q q q q qqq qq qq qq q q q q q qq qq qqq q q q q q qq q qq qq qq qq q qq Petal Length q q qq q q q q q q qqq q qqq qq q q q q q qq qq qqqq q q q q qq q qq qq qq qqqqq q q q q q q q qq q qq qq q q q qq q q q q q q qqq q q q q q qq qq qq q qq q q q q qq q q q q q q qq q qq q qq qq q q q qq q q qq q q qqq q q q q q qq q q qq q qq q q q q q q q q q q q q qq q qq q qq qq qq q qq q q q q q q qqq q q qq q qq qq qq q qq q q q q qq q q Petal Width virginica Figura 5: Diagrama de pontos por classe. O uso deste conjunto de dados na análise de clusters não é usual, uma vez que o mesmo contém apenas dois clusters com separação óbvia. Um deles contém a espécie setosa, enquanto o outro contém tanto vir- ginica quanto versicolor e não é separável sem as informações de espécie utilizadas por Fisher. Isso faz com que o conjunto seja um bom exemplo para explicar a diferença entre as técnicas com e sem su- pervisão: o modelo linear discriminante de Fisher só pode ser obtido quando as classes são conhecidas. 3.2 Comportamento do Método O método apresentou um comportamento ge- ral estável com o já esperado esforço computa- cional acentuado, anteriormente previsto, ocor- rendo devido a série de operações necessárias para a classificação. Mais informações a res- peito do comportamento do método podem ser obtidas através dos arquivos anexos e da imple- mentação do mesmo utilizando-se a linguagem R. Para maiores informações consulte nossas re- ferências bibliográficas. Referências Beyer, K., Goldstein, J., Ramakrishnan, R. & Shaft, U. (1999), When is ‘nearest neighbor’ meaning- ful?, in ‘In Int. Conf. on Database Theory’, pp. 217–235. Fisher, R. A. (1936), ‘The use of multiple measure- ments in taxonomic problems’, Annual Eugenics 7, 179–188. Gates, G. W. (1972), ‘The reduced nearest neighbor rule’, IEEE Transactions on Information Theory pp. 431–433. 3

×