Exercices Projets guidés Classement des résultats
🎉

Bravo!

Avancé 🧠 Fondamentaux 30 XP 0 personnes ont réussi

Classement des résultats

Septieme étape : classer les documents par pertinence, exactement comme Google le fait.

Écris une fonction classer_resultats(documents, requête) qui :
1. Calcule l'IDF sur toute la collection de documents
2. Score chaque document avec TF-IDF pour la requête donnee
3. Retourne une liste de tuples (indice, score) tries par score decroissant
4. Exclut les documents avec un score de 0

Exemple :
docs = ['python est simple', 'java est verbeux', 'python machine learning']
classer_resultats(docs, 'python')
renvoie [(0, ...), (2, ...)] ou [(2, ...), (0, ...)]
(les deux documents contenant 'python', tries par pertinence)
Le document 1 n apparait pas car il ne contient pas 'python'.

Tests (2/4)

Python plus pertinent
docs = ['python est simple', 'java est verbeux', 'python machine learning']
résultats = classer_resultats(docs, 'python')
indices = [r[0] for r in résultats]
assert 1 not in indices
Tri decroissant
docs = ['python est simple', 'java est verbeux', 'python machine learning']
résultats = classer_resultats(docs, 'python')
if len(résultats) >= 2:
    assert résultats[0][1] >= résultats[1][1]

+ 0 tests cachés

Indices (3 disponibles)

solution.py