Sto prototipando un'applicazione e ho bisogno di un modello linguistico per calcolare la perplessità su alcune frasi generate.
Esiste un modello di linguaggio addestrato in Python che posso usare facilmente? Qualcosa di semplice come
model = LanguageModel('en')
p1 = model.perplexity('This is a well constructed sentence')
p2 = model.perplexity('Bunny lamp robert junior pancake')
assert p1 < p2
Ho esaminato alcuni framework ma non sono riuscito a trovare quello che volevo. So di poter usare qualcosa come:
from nltk.model.ngram import NgramModel
lm = NgramModel(3, brown.words(categories='news'))
Questo utilizza una buona distribuzione di probabilità turing su Brown Corpus, ma stavo cercando un modello ben realizzato su alcuni grandi set di dati, come il set di dati di parole 1b. Qualcosa di cui posso davvero fidarmi dei risultati per un dominio generale (non solo notizie)