Similaridade semântica para categorizar texto
O principal objetivo da similaridade semântica é medir a distância entre os significados de um par de palavras, frases, sentenças ou documentos. Por exemplo, a palavra “car” é mais semelhante a “bus” do que a “cat”. Neste exercício, você vai encontrar sentenças semelhantes à palavra sauce a partir de um texto de exemplo do Amazon Fine Food Reviews. Você pode usar spacy para calcular a pontuação de similaridade entre a palavra sauce e qualquer sentença na string texts e informar a pontuação da sentença mais semelhante.
Uma string texts já está carregada e contém todos os dados de Text das avaliações. Você usará o modelo em inglês en_core_web_md neste exercício, que já está disponível como nlp.
Este exercício faz parte do curso
Processamento de Linguagem Natural com spaCy
Instruções do exercício
- Use
nlppara gerar contêineresDocpara a palavrasaucee paratextse armazene-os emkeyesentences, respectivamente. - Calcule as pontuações de similaridade da palavra
saucecom cada sentença na stringtexts(arredondadas para duas casas decimais).
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Populate Doc containers for the word "sauce" and for "texts" string
key = ____
sentences = ____
# Calculate similarity score of each sentence and a Doc container for the word sauce
semantic_scores = []
for sent in sentences.____:
semantic_scores.append({"score": round(sent.____(____), 2)})
print(semantic_scores)