Najważniejsze termy w klastrach filmów
Masz już gotową macierz rzadką – czas wygenerować centra klastrów i wyświetlić trzy najważniejsze termy w każdym z nich. Użyj metody .todense(), aby przekonwertować macierz rzadką tfidf_matrix na zwykłą macierz, którą funkcja kmeans() będzie mogła przetworzyć. Następnie skorzystaj z metody .get_feature_names(), aby pobrać listę termów z obiektu tfidf_vectorizer. Funkcja zip() w Pythonie łączy dwie listy.
Obiekt tfidf_vectorizer oraz macierz rzadka tfidf_matrix z poprzedniego ćwiczenia są dostępne w tym ćwiczeniu. Funkcja kmeans została już zaimportowana z biblioteki SciPy.
Przy większej liczbie punktów danych klastry byłyby wyraźniej zdefiniowane. Wymaga to jednak większej mocy obliczeniowej, co sprawia, że trudno to osiągnąć w ramach tego ćwiczenia.
To ćwiczenie jest częścią kursu
Analiza skupień w Pythonie
Instrukcje do ćwiczenia
- Wygeneruj centra klastrów za pomocą funkcji
kmeans(). - Wygeneruj listę termów z obiektu
tfidf_vectorizer. - Wyświetl 3 najważniejsze termy każdego klastra.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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(____)