Implémenter et tester
Exercice · informatique (tronc commun des prépas scientifiques), chapitre 19 — Algorithmique de l'apprentissage : voisins et moyennes
Énoncé
Écrire une fonction evaluer(entrainement, test, k) qui prend en entrée un jeu d'entraînement, un jeu de test et le paramètre , et renvoie sous forme de dictionnaire la matrice de confusion ainsi que le taux de réussite global.
Corrigé
def evaluer(entrainement: list, test: list, k: int) -> tuple:
confusion = {}
for point, vraie in test:
predite = knn(entrainement, point, k)
couple = (vraie, predite)
confusion[couple] = confusion.get(couple, 0) + 1
# Sommer les prédictions correctes (diagonale de la matrice)
correctes = sum(v for (vrai, pred), v in confusion.items() if vrai == pred)
taux_reussite = correctes / len(test)
return confusion, taux_reussiteLes autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.