Similaritate semantică pentru categorizarea textului
Obiectivul principal al similarității semantice este măsurarea distanței dintre semnificațiile a două cuvinte, expresii, propoziții sau documente. De exemplu, cuvântul „car" este mai similar cu „bus" decât cu „cat". În acest exercițiu, vei identifica propoziții similare cu cuvântul sauce dintr-un text exemplu din Amazon Fine Food Reviews. Poți folosi spacy pentru a calcula scorul de similaritate dintre cuvântul sauce și fiecare propoziție dintr-un șir de caractere texts dat, apoi vei raporta scorul propoziției celei mai similare.
Un șir texts este preîncărcat și conține datele din câmpul Text ale recenziilor. Vei folosi modelul de limba engleză en_core_web_md, disponibil deja ca nlp.
Acest exercițiu face parte din cursul
Procesarea limbajului natural cu spaCy
Instrucțiuni pentru exercițiu
- Folosește
nlppentru a genera containereDocpentru cuvântulsauceși pentrutexts, stocându-le înkey, respectivsentences. - Calculează scorurile de similaritate dintre cuvântul
sauceși fiecare propoziție din șirultexts(rotunjite la două zecimale).
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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)