Aan de slagGa gratis aan de slag

NMF leert onderwerpen van documenten

In de video heb je geleerd dat wanneer NMF wordt toegepast op documenten, de componenten overeenkomen met onderwerpen, en dat de NMF-features de documenten vanuit die onderwerpen reconstrueren. Controleer dit zelf voor het NMF-model dat je eerder met de Wikipedia-artikelen hebt gebouwd. Eerder zag je dat de 3e NMF-featurewaarde hoog was voor de artikelen over de acteurs Anne Hathaway en Denzel Washington. Identificeer in deze oefening het onderwerp van de bijbehorende NMF-component.

Het NMF-model dat je eerder hebt gebouwd is beschikbaar als model, terwijl words een lijst is met de woorden die de kolommen van de woordfrequentie-array labelen.

Als je klaar bent, sta dan even stil bij het onderwerp dat de artikelen over Anne Hathaway en Denzel Washington gemeen hebben!

Deze oefening maakt deel uit van de cursus

Unsupervised Learning in Python

Cursus bekijken

Oefeninstructies

  • Importeer pandas als pd.
  • Maak een DataFrame components_df van model.components_ en zet columns=words zodat de kolommen door de woorden gelabeld zijn.
  • Print components_df.shape om de afmetingen van de DataFrame te controleren.
  • Gebruik de .iloc[]-toegangsfunctie op de DataFrame components_df om rij 3 te selecteren. Ken het resultaat toe aan component.
  • Roep de methode .nlargest() aan op component en print het resultaat. Dit geeft de vijf woorden met de hoogste waarden voor die component.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Import pandas
import pandas as pd

# Create a DataFrame: components_df
components_df = ____

# Print the shape of the DataFrame
print(components_df.shape)

# Select row 3: component
component = ____

# Print result of nlargest
print(component.nlargest())
Code bewerken en uitvoeren