Tôi có một (lớn) danh sách các câu phân tích cú pháp (mà đã được phân tích bằng cách sử dụng phân tích cú pháp Stanford), ví dụ, câu "Bây giờ bạn có thể được giải trí" có cây sau:Làm thế nào để sử dụng NLTK để tạo câu từ ngữ pháp gây ra?
(ROOT
(S
(ADVP (RB Now))
(, ,)
(NP (PRP you))
(VP (MD can)
(VP (VB be)
(VP (VBN entertained))))
(. .)))
Tôi đang sử dụng tập hợp các cây câu để tạo ra một ngữ pháp sử dụng NLTK:
import nltk
# ... for each sentence tree t, add its production to allProductions
allProductions += t.productions()
# Induce the grammar
S = nltk.Nonterminal('S')
grammar = nltk.induce_pcfg(S, allProductions)
Bây giờ tôi muốn sử dụng grammar
để tạo mới, câu ngẫu nhiên. Hy vọng của tôi là vì ngữ pháp đã được học từ một tập hợp các ví dụ đầu vào cụ thể, sau đó các câu được tạo ra sẽ tương tự về mặt ngữ nghĩa. Tôi có thể làm điều này trong nltk không?
Nếu tôi không thể sử dụng nltk để thực hiện việc này, hãy thực hiện bất kỳ công cụ nào khác có thể lấy (có thể được định dạng lại) grammar
và tạo câu?
Trong cùng một chỗ, xin vui lòng kiểm tra chủ đề này http: //stackoverflow.com/questions/39061349/paraphrasing-using-nltk –