Termes principaux dans les clusters de films
Maintenant que vous avez créé une matrice creuse, générez les centroïdes des clusters et affichez les trois termes principaux de chaque cluster. Utilisez la méthode .todense() pour convertir la matrice creuse tfidf_matrix en matrice classique afin que la fonction kmeans() puisse la traiter. Ensuite, utilisez la méthode .get_feature_names() pour obtenir la liste des termes de l’objet tfidf_vectorizer. La fonction zip() en Python associe deux listes.
L’objet tfidf_vectorizer et la matrice creuse tfidf_matrix de l’exercice précédent ont été conservés ici. kmeans a été importé depuis SciPy.
Avec un nombre plus élevé de points de données, les clusters obtenus seraient plus nets. Cependant, cela demande davantage de puissance de calcul, ce qui est difficile à réaliser dans le cadre de cet exercice.
Cet exercice fait partie du cours
Analyse de clusters en Python
Instructions
- Générez les centroïdes des clusters avec la fonction
kmeans(). - Générez la liste des termes à partir de l’objet
tfidf_vectorizer. - Affichez les 3 principaux termes de chaque cluster.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
num_clusters = 2
# Generate cluster centers through the kmeans function
cluster_centers, distortion = ____
# Generate terms from the tfidf_vectorizer object
terms = tfidf_vectorizer.____()
for i in range(num_clusters):
# Sort the terms and print top 3 terms
center_terms = dict(zip(____, ____))
sorted_terms = sorted(____, key=center_terms.get, reverse=True)
print(____)