Есть ли альтернатива для удаленного модуля 'nltk.model.NGramModel'?

Я пытался найти альтернативу в течение двух дней подряд и не мог найти ничего подходящего. Я в основном пытаюсь получить вероятностную оценку синтезированного предложения (синтезированного путем замены некоторых слов из исходного предложения, выбранного из корпусов).

Я пробовал Collocations, но оценки, которые я получаю, не очень полезны. Поэтому я попытался использовать концепцию языковой модели, но обнаружил, что из-за некоторых ошибок из NLTK была удалена, казалось бы, полезная модульная "модель".

Было бы здорово, если бы кто-нибудь мог сообщить мне о каком-то альтернативном способе получения реализации модели ngram в python или, еще лучше, предложить мне другой способ решить проблему "забивания" предложения.

Ответ 1

В соответствии с эта открытая проблема в реплике nltk, NGramModel в настоящее время не находится в master из-за некоторых ошибок. Их текущее решение - установить код из ветки модели. Это примерно на 8 месяцев отстает от мастера, поэтому вы можете пропустить другие функции и исправления ошибок.

pip install https://github.com/nltk/nltk/tarball/model

Соответствующий код здесь, в ветке модели. Вы можете скопировать это в свой локальный код, если вы не хотите использовать устаревшую ветвь. Если вы действительно заботитесь об этом, вы можете попытаться исправить выдающиеся ошибки и отправить запрос на перенос.