Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/msamuelsons/classificacao-de-flores

Esse modelo demonstra como usar o algoritmo K-Nearest Neighbors (KNN) para classificar as amostras de flores no conjunto de dados Iris.
https://github.com/msamuelsons/classificacao-de-flores

colab-notebook ipython-notebook iris-classification pandas sklearn

Last synced: about 1 month ago
JSON representation

Esse modelo demonstra como usar o algoritmo K-Nearest Neighbors (KNN) para classificar as amostras de flores no conjunto de dados Iris.

Awesome Lists containing this project

README

        

# Classificação das Espécies de Flores Iris com K-Nearest Neighbors (KNN): Um Estudo Utilizando o Conjunto de Dados Iris
Esse modelo demonstra como usar o algoritmo K-Nearest Neighbors (KNN) para classificar as amostras de flores no conjunto de dados Iris.

# K-Nearest Neighbors (KNN)

O algoritmo K-Nearest Neighbors (KNN) é um método de aprendizado de máquina supervisionado usado tanto para classificação quanto para regressão. É considerado um dos algoritmos mais simples, mas ainda é amplamente utilizado devido à sua eficácia em muitos cenários. O KNN é um algoritmo baseado em instância, o que significa que ele não aprende explicitamente um modelo a partir dos dados, mas em vez disso, faz previsões diretamente com base nas semelhanças entre as instâncias.

## Funcionamento

O funcionamento básico do KNN é bastante simples. Dado um conjunto de dados de treinamento com exemplos rotulados (características e suas classes correspondentes), o algoritmo KNN faz previsões para novos exemplos com base nas classes das instâncias vizinhas mais próximas. A métrica de proximidade usada geralmente é a distância euclidiana ou outras métricas de distância, como a distância de Minkowski.

## Etapas Principais

1. **Escolher o Valor de K:** O "K" em KNN refere-se ao número de vizinhos mais próximos que serão considerados ao fazer uma previsão para um novo exemplo. O valor de K é um parâmetro crítico, pois afeta diretamente a natureza das previsões.

2. **Calcular Distâncias:** Para fazer uma previsão para um novo exemplo, o KNN calcula as distâncias entre o novo exemplo e todos os exemplos de treinamento.

3. **Selecionar Vizinhos:** Os K exemplos de treinamento mais próximos (com base nas distâncias calculadas) são selecionados como vizinhos.

4. **Votação ou Média:** No caso de classificação, as classes dos K vizinhos são contadas e a classe mais comum é atribuída como a previsão para o novo exemplo. No caso de regressão, os valores alvo dos K vizinhos são usados para calcular uma média ou ponderação para prever o valor alvo do novo exemplo.

## Considerações

- **Sensibilidade a Escala:** O KNN é sensível à escala das características, por isso é uma prática comum normalizar ou padronizar os dados antes de aplicar o algoritmo.

- **Overfitting vs. Underfitting:** Um valor muito baixo de K pode levar a um overfitting, onde o modelo se ajusta demais aos dados de treinamento. Um valor muito alto de K pode levar a um underfitting, onde o modelo é muito simplificado.

- **Trade-off Velocidade-Precisão:** À medida que o valor de K aumenta, a previsão se torna mais suave, mas a complexidade computacional também aumenta.

O KNN é um algoritmo versátil e pode ser usado em uma variedade de tarefas, desde classificação de documentos até previsão de valores numéricos. No entanto, seu desempenho pode ser afetado por conjuntos de dados com muitas características ou ruído. Portanto, a seleção adequada de K e a preparação cuidadosa dos dados são essenciais para obter resultados confiáveis com o KNN.