Độ tương đồng ngữ nghĩa để phân loại văn bản
Mục tiêu chính của độ tương đồng ngữ nghĩa là đo khoảng cách giữa ý nghĩa ngữ nghĩa của một cặp từ, cụm từ, câu hoặc tài liệu. Ví dụ, từ “car” giống “bus” hơn là “cat”. Trong bài tập này, bạn sẽ tìm các câu giống với từ sauce từ một văn bản ví dụ trong Amazon Fine Food Reviews. Bạn có thể dùng spacy để tính điểm tương đồng giữa từ sauce và từng câu trong chuỗi texts đã cho, rồi báo cáo điểm của câu giống nhất.
Một chuỗi texts đã được nạp sẵn, chứa toàn bộ dữ liệu Text của các đánh giá. Bạn sẽ dùng mô hình tiếng Anh en_core_web_md cho bài này, đã có sẵn dưới tên nlp.
Bài tập này là một phần của khóa học
Xử lý ngôn ngữ tự nhiên với spaCy
Hướng dẫn bài tập
- Dùng
nlpđể tạoDoccho từsaucevà chotexts, lưu lần lượt vàokeyvàsentences. - Tính điểm tương đồng giữa từ
saucevà từng câu trong chuỗitexts(làm tròn đến hai chữ số).
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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)