Je prototype une application et j'ai besoin d'un modèle de langage pour calculer la perplexité sur certaines phrases générées.
Existe-t-il un modèle de langage formé en python que je peux facilement utiliser? Quelque chose de simple comme
model = LanguageModel('en')
p1 = model.perplexity('This is a well constructed sentence')
p2 = model.perplexity('Bunny lamp robert junior pancake')
assert p1 < p2
J'ai regardé certains cadres mais je n'ai pas trouvé ce que je voulais. Je sais que je peux utiliser quelque chose comme:
from nltk.model.ngram import NgramModel
lm = NgramModel(3, brown.words(categories='news'))
Cela utilise une bonne distribution de probabilité de Turing sur Brown Corpus, mais je cherchais un modèle bien conçu sur un grand ensemble de données, comme l'ensemble de données 1b words. Quelque chose que je peux réellement faire confiance aux résultats pour un domaine général (pas seulement des nouvelles)