O Que É k-NN
Deslize para mostrar o menu
Vamos começar nossa aventura em classificação com a tarefa mais simples - classificação binária. Suponha que queremos classificar doces como biscoitos/não biscoitos com base em uma única característica: seu peso.
Uma maneira simples de prever a classe de uma nova instância é observar seu vizinho mais próximo. No nosso exemplo, precisamos encontrar um doce cujo peso seja mais semelhante ao da nova instância.
Essa é a ideia por trás do k-Nearest Neighbors (k-NN) - apenas observamos os vizinhos. O algoritmo k-NN assume que coisas semelhantes existem em proximidade próxima. Em outras palavras, coisas semelhantes estão próximas umas das outras. O k em k-NN representa o número de vizinhos considerados ao fazer uma previsão.
No exemplo acima, consideramos apenas 1 vizinho, portanto foi o 1-Nearest Neighbor. Mas geralmente, k é definido como um número maior, pois considerar apenas um vizinho pode ser não confiável:
Se k (número de vizinhos) for maior que um, escolhe-se a classe mais frequente na vizinhança como previsão. Aqui está um exemplo de previsão de duas novas instâncias com k=3:
Como você pode ver, alterar o k pode resultar em previsões diferentes.
Ocasionalmente, o k-NN produz um empate quando várias classes aparecem com a mesma frequência entre os vizinhos mais próximos. A maioria das bibliotecas, incluindo o scikit-learn, resolve empates escolhendo a primeira classe em sua ordem interna – algo importante a se considerar, pois pode afetar sutilmente a reprodutibilidade e a interpretação.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo