Я создал MLE
модель языка биграмм для текста, однако я не знаю, как применить ее к тестовым данным:
Вот моя попытка:
pp1 = model.perplexity([('users','never')])
text = "users never"
ll = list(bigrams(text.split()))
print(list(ll))
pp2 = model.perplexity('users never')
pp3 = model.perplexity(ll)
print("pp:",pp1, " pp2", pp2, " pp3", pp3)
И это вывод:
pp: 3.0000000000000004 pp2 inf pp3 3.0000000000000004
Кажется, что ввод perplexity
должен быть последовательностью биграммы.
Однако, когда я пытаюсь использовать эту логику в другой модели, обученной большему количеству данных, я получаю ошибку division by zero
, если я использую ее как последовательность bigram
, но число, если я использую необработанный текст. Поэтому я не уверен, какой метод является правильным для оценки моей модели по тестовым данным, необработанному тексту или последовательности биграмм.