開始使用免費開始

使用 spaCy 進行詞義消歧(Word-sense Disambiguation)

WSD(詞義消歧)是經典問題,用來判斷一句話裡某個單字所使用的語義。在搜尋引擎、機器翻譯與問答系統中,正確判斷單字的語義非常關鍵。這個練習中,你會練習使用詞性標註(POS tagging)來做詞義消歧。

有兩個包含單字 jam 的句子,但語義不同。你的任務是辨識對應的詞性標記,藉此協助判斷在給定句子中 jam 的語義。

兩個句子已放在 texts 清單中。en_core_web_sm 模型已載入為 nlp 可供你使用。

本練習屬於課程

使用 spaCy 的自然語言處理

檢視課程

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

texts = ["This device is used to jam the signal.",
         "I am stuck in a traffic jam"]

# Create a list of Doc containers in the texts list
documents = [____ for t in texts]

# Print a token's text and POS tag if the word jam is in the token's text
for i, doc in enumerate(documents):
    print(f"Sentence {i+1}: ", [(____, ____) for token in doc if "jam" in token.text], "\n")
編輯並執行程式碼