K Plus Proches Voisins
Classification k-NN
Enonce
Implémenter k-NN from scratch avec NumPy. Tester sur données 2D synthétiques.
Signature attendue
def knn_predict(X_train, y_train, x_test, k: int) -> int:
📖 Rappel de cours
$d(x,y)=\sqrt{\sum_{i=1}^{p}(x_i-y_i)^2}$
Lazy learning : tout le calcul à la prédiction. Pas d'entraînement.
⚠ Le piège : La normalisation n'est pas facultative : si une variable vaut quelques unités et une autre quelques centaines, la distance euclidienne ne mesure plus que la seconde. Et elle se calcule sur les données d'entraînement seulement, puis s'applique aux données de test — sans quoi l'évaluation est faussée.
← Exercices d'IA et d'apprentissage automatique en Python — CPGE
Exercices du meme theme
La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.