AttributeError: объект «модуль» не имеет атрибута «sentence_bleu»

В документации nltk.translate я ясно вижу, что это

nltk.translate.bleu_score.sentence_bleu

функция доступна для использования. Но когда я использую его для своего сценария, он показывает следующую ошибку:

AttributeError: 'module' object has no attribute 'sentence_bleu'

Пожалуйста, подскажите, какую ошибку я делаю? или что-то, что я пропустил между ними.

Для справки ниже приведен мой пример кода:

import nltk 
hypothesis = ['It', 'is', 'a', 'cat', 'at', 'room']
reference = ['It', 'is', 'a', 'cat', 'inside', 'the', 'room']
BLEUscore = nltk.translate.bleu_score.sentence_bleu([reference], hypothesis)

Эта ошибка возникла из-за версии NLTK. Этот модуль поддерживается в NLTK 3.3 и выше. Посмотрите здесь

Моя версия NLTK была 3.1.


person SilentFlame    schedule 14.06.2018    source источник
comment
Вы можете ознакомиться с документацией nltk.translate по адресу nltk.org/api/nltk. .translate.html   -  person SilentFlame    schedule 14.06.2018
comment
Во-первых, у вас есть версия 3.3 или более поздняя версия NLTK?   -  person abarnert    schedule 14.06.2018
comment
У меня NLTk 3.1, о, я вижу. Проблема в версии. @abarnert спасибо за помощь. :)   -  person SilentFlame    schedule 14.06.2018
comment
вы пытались сделать из nltk.translate.bleu_score импорт предложения_bleu   -  person InAFlash    schedule 14.06.2018
comment
Я не знаю уверенно, что это проблема (вы можете проверить документы 3.1, хотя я не знаю, как их найти), но учитывая, что в документах верхнего уровня ничего не говорится о модуле translate, кроме экспериментальных функций для машинный перевод. Эти интерфейсы подвержены изменениям. кажется хорошей ставкой, что они изменились между версиями 3.1 и 3.3.   -  person abarnert    schedule 14.06.2018
comment
@InAFlash Я перепробовал все возможные варианты. Похоже, что проблема связана с версией NLTK, как указано в комментарии abarnert выше.   -  person SilentFlame    schedule 14.06.2018
comment
@abarnert позвольте мне взглянуть. :)   -  person SilentFlame    schedule 14.06.2018
comment
@SilentFlame, да, я тоже думаю, что проблема с версией. я только что проверил, и у меня 3.3, и я смог импортировать с помощью команды, которую я упомянул в предыдущем комментарии.   -  person InAFlash    schedule 14.06.2018
comment
Кстати, вы должны отредактировать ссылку на документы в своем вопросе, а не только в качестве комментария.   -  person abarnert    schedule 14.06.2018
comment


Ответы (1)


Проблема в версии NLTK. Установите последнюю версию, используя:

pip install nltk==3.5
person Aditya Mohan    schedule 05.05.2020