ComeçarComece gratuitamente

Explorando vetores de texto, parte 1

Vamos expandir o método de exploração de vetores de texto que acabamos de aprender, usando os vetores title tf/idf do conjunto de dados volunteer. Nesta primeira parte da exploração de vetores de texto, vamos adicionar à função que aprendemos nos slides. Retornaremos uma lista de números com a função. No próximo exercício, escreveremos outra função para coletar as principais palavras em todos os documentos, extraí-las e usar essa lista para filtrar nosso vetor text_tfidf.

Este exercício faz parte do curso

Pré-processamento para aprendizado de máquina em Python

Ver Curso

Instruções de exercício

  • Adicione parâmetros chamados original_vocab, para tfidf_vec.vocabulary_ e top_n.
  • Ligue para pd.Series() no dicionário com zíper. Isso facilitará a operação.
  • Use a função .sort_values() para classificar a série e dividir o índice em top_n palavras.
  • Chame a função, definindo original_vocab=tfidf_vec.vocabulary_, definindo vector_index=8 para pegar a 9ª linha e definindo top_n=3, para pegar as 3 primeiras palavras ponderadas.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Add in the rest of the arguments
def return_weights(vocab, ____, vector, vector_index, ____):
    zipped = dict(zip(vector[vector_index].indices, vector[vector_index].data))
    
    # Transform that zipped dict into a series
    zipped_series = ____({vocab[i]:zipped[i] for i in vector[vector_index].indices})
    
    # Sort the series to pull out the top n weighted words
    zipped_index = zipped_series.____(ascending=False)[:____].index
    return [original_vocab[i] for i in zipped_index]

# Print out the weighted words
print(return_weights(vocab, ____, text_tfidf, ____, ____))
Editar e executar código