[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) 문을 통해 출력됩니다.

참고 문서: