O apredizado baseado em instâncias é a teoria por trás do algoritmo kNN (nearest neighbours),

Algoritmo kNN

K-Nearest Neighbours (K-vizinhos mais próximos).

Setando o valor de K, o algoritmo vai procurar pelas "K" classificações mais próximas da predição que queremos fazer. Em um contexto 2D (dois atributos e uma classificação), seria como a imagem abaixo:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/97e4443a-5f61-4eb8-8ddd-f0fd6b5c4356/knn.png

Ponto importante

A maioria dos métodos analisa os dados, durante o treinamento, e constrói um modelo, descartando os dados. Já os métodos baseados em instãncia armazenam os dados do treinamento (logo, não existe de fato um treinamento, mas sim uma comparação com os dados treinados). Métodos assim são chamados de "lazy".

Entendendo o cálculo de distância

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/7ddbd02e-0bd4-4d61-9dfb-5f00cc30e466/knn-algoritmo.png

Para saber a distãncia de cada valor do dataset, o algoritmo faz o cálculo de distãncia euclidiana.

Quebrando o algoritmo:

Limpando os valores do dataset

O kNN trabalha melhor se tivermos valores de atributos baixos, para isso usamos a normalização e padronização.