NMF identifierar ämnen i dokument
I videon lärde du dig att när NMF tillämpas på dokument motsvarar komponenterna dokumentens ämnen, och att NMF-särdragen rekonstruerar dokumenten utifrån dessa ämnen. Verifiera detta på egen hand med hjälp av den NMF-modell du byggde tidigare med Wikipedia-artiklarna. Du såg tidigare att det tredje NMF-särdragsvärdet var högt för artiklarna om skådespelarna Anne Hathaway och Denzel Washington. I den här övningen identifierar du ämnet för den motsvarande NMF-komponenten.
NMF-modellen du byggde tidigare finns tillgänglig som model, medan words är en lista med de ord som utgör kolumnetiketterna i ordfrekvensmatrisen.
När du är klar, ta ett ögonblick och fundera på vilket ämne artiklarna om Anne Hathaway och Denzel Washington har gemensamt!
Den här övningen är en del av kursen
Oövervakad inlärning i Python
Övningsinstruktioner
- Importera
pandassompd. - Skapa en DataFrame
components_dffrånmodel.components_, och angecolumns=wordsså att kolumnerna får ordbaserade etiketter. - Skriv ut
components_df.shapeför att kontrollera DataFramens dimensioner. - Använd
.iloc[]på DataFrame:ncomponents_dfför att välja rad3. Tilldela resultatet tillcomponent. - Anropa metoden
.nlargest()påcomponentoch skriv ut resultatet. Det ger de fem ord som har högst värden för den komponenten.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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())