spaCy로 어휘 중의성 해소하기
WSD는 문장 속에서 단어가 어떤 의미로 쓰였는지 판별하는 고전적인 문제입니다. 단어의 의미를 정확히 파악하는 것은 검색 엔진, 기계 번역, 질의응답 시스템에서 매우 중요해요. 이 연습 문제에서는 품사 태깅(POS tagging)을 활용해 어휘 중의성을 해소하는 방법을 연습해 보겠습니다.
단어 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")