Które artykuły są podobne do artykułu o Cristiano Ronaldo?
W tej lekcji pokazano, jak używać cech NMF i podobieństwa kosinusowego do znajdowania podobnych artykułów.
Zastosuj tę metodę do swojego modelu NMF dla popularnych artykułów Wikipedii – znajdź artykuły najbardziej podobne do artykułu o piłkarzu Cristiano Ronaldo. Cechy NMF uzyskane wcześniej są dostępne jako nmf_features, a titles to lista tytułów artykułów.
To ćwiczenie jest częścią kursu
Uczenie nienadzorowane w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj
normalizezsklearn.preprocessing. - Zastosuj funkcję
normalize()donmf_features. Zapisz wynik jakonorm_features. - Utwórz DataFrame
dfznorm_features, używająctitlesjako indeksu. - Za pomocą akcesora
.loc[]obiektudfwybierz wiersz'Cristiano Ronaldo'. Przypisz wynik do zmiennejarticle. - Zastosuj metodę
.dot()obiektudfdoarticle, aby obliczyć podobieństwo kosinusowe każdego wiersza względemarticle. - Wyświetl wynik metody
.nlargest()obiektusimilarities, aby zobaczyć najbardziej podobne artykuły. Ten krok jest już wykonany – kliknij Prześlij odpowiedź, aby zobaczyć wynik!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Perform the necessary imports
import pandas as pd
from ____ import ____
# Normalize the NMF features: norm_features
norm_features = ____
# Create a DataFrame: df
df = ____
# Select the row corresponding to 'Cristiano Ronaldo': article
article = df.loc[____]
# Compute the dot products: similarities
similarities = ____
# Display those with the largest cosine similarity
print(similarities.nlargest())