[python] NLTK를 사용해 문맥 자유 문법을 생성하는 방법은 무엇인가요?
먼저, NLTK 패키지를 설치해야 합니다. 터미널에서 다음 명령을 실행하여 패키지를 설치할 수 있습니다.
pip install nltk
NLTK 패키지를 설치한 후, 다음과 같이 코드를 작성하여 문맥 자유 문법을 생성할 수 있습니다.
import nltk
# 문장 샘플
sentences = [
"The cat is chasing the mouse",
"The dog is barking at the cat",
"The mouse is running away from the cat"
]
# 문장을 토큰화
tokens = [nltk.word_tokenize(sentence) for sentence in sentences]
# 문장에서 문법 생성
grammar = nltk.CFG.from_sentences(tokens)
# 문법 출력
print(grammar)
위의 코드에서는 NLTK의 CFG
클래스를 사용하여 문장에서 문법을 생성합니다. 문장을 토큰화하여 각각의 토큰으로 구성된 리스트로 변환한 뒤, 이를 CFG.from_sentences()
메서드에 전달하여 문법을 생성합니다.
생성된 문법은 print(grammar)
문을 통해 출력됩니다.
참고 문서:
- NLTK 문서: https://www.nltk.org/
- NLTK CFG 문서: https://www.nltk.org/_modules/nltk/cfg.html