Top-Terme in Film-Clustern
Jetzt, da du eine Sparse-Matrix erstellt hast, generiere Clusterzentren und gib die drei wichtigsten Terme in jedem Cluster aus. Verwende die Methode .todense(), um die Sparse-Matrix tfidf_matrix in eine normale Matrix zu konvertieren, damit die Funktion kmeans() sie verarbeiten kann. Verwende anschließend die Methode .get_feature_names(), um eine Liste der Terme im Objekt tfidf_vectorizer zu erhalten. Die Python-Funktion zip() verbindet zwei Listen.
Das Objekt tfidf_vectorizer und die Sparse-Matrix tfidf_matrix aus der vorherigen Aufgabe wurden für diese Übung übernommen. kmeans wurde aus SciPy importiert.
Mit einer höheren Anzahl an Datenpunkten wären die gebildeten Cluster klarer definiert. Das erfordert jedoch Rechenleistung und ist in einer Übung hier schwer umzusetzen.
Diese Übung ist Teil des Kurses
Cluster Analysis in Python
Anleitung zur Übung
- Erzeuge Clusterzentren mit der Funktion
kmeans(). - Erzeuge eine Liste der Terme aus dem Objekt
tfidf_vectorizer. - Gib die drei Top-Terme jedes Clusters aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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(____)