Quais artigos são semelhantes a "Cristiano Ronaldo"?
No vídeo, você aprendeu a usar os recursos do NMF e a similaridade de cosseno para encontrar artigos semelhantes.
Aplique isso ao seu modelo NMF para artigos populares da Wikipédia, encontrando os artigos mais semelhantes ao artigo sobre o jogador de futebol Cristiano Ronaldo. Os recursos de NMF que você obteve anteriormente estão disponíveis como nmf_features
, enquanto titles
é uma lista dos títulos dos artigos.
Este exercício faz parte do curso
Aprendizado não supervisionado em Python
Instruções de exercício
- Importe
normalize
desklearn.preprocessing
. - Aplique a função
normalize()
anmf_features
. Armazene o resultado comonorm_features
. - Crie um DataFrame
df
a partir denorm_features
, usandotitles
como um índice. - Use o acessor
.loc[]
dedf
para selecionar a linha de'Cristiano Ronaldo'
. Atribua o resultado aarticle
. - Aplique o método
.dot()
dedf
aarticle
para calcular a similaridade de cosseno de cada linha comarticle
. - Imprima o resultado do método
.nlargest()
desimilarities
para exibir os artigos mais semelhantes. Isso foi feito para você, então clique em "Enviar resposta" para ver o resultado!
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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())