Tôi đang tạo mẫu cho một ứng dụng và tôi cần một mô hình ngôn ngữ để tính toán sự bối rối trên một số câu được tạo.
Có mô hình ngôn ngữ được đào tạo nào trong python tôi có thể dễ dàng sử dụng không? Một cái gì đó đơn giản như
model = LanguageModel('en')
p1 = model.perplexity('This is a well constructed sentence')
p2 = model.perplexity('Bunny lamp robert junior pancake')
assert p1 < p2
Tôi đã xem xét một số khung nhưng không thể tìm thấy những gì tôi muốn. Tôi biết tôi có thể sử dụng một cái gì đó như:
from nltk.model.ngram import NgramModel
lm = NgramModel(3, brown.words(categories='news'))
Điều này sử dụng phân phối xác suất bảo mật tốt trên Brown Corpus, nhưng tôi đã tìm kiếm một số mô hình được chế tạo tốt trên một số tập dữ liệu lớn, như tập dữ liệu 1b words. Một cái gì đó mà tôi thực sự có thể tin tưởng vào kết quả cho một tên miền chung (không chỉ tin tức)