OpenNLP: невозможно найти файл модели для Lemmatizer

Сводка: не удалось найти файл модели, используемый для Lemmatizer (english-lemmatizer.bin)

Подробности: Модели инструментов OpenNLP представляют собой исчерпывающий репозиторий для различные модели, используемые различными компонентами библиотеки Apache OpenNLP. Однако я не могу найти файл модели en-lemmatizer.bin, который используется с лемматизатором. Руководство разработчика Apache OpenNLP предоставляет следующий фрагмент кода для этапа лемматизации:

InputStream dictLemmatizer = null;

try (dictLemmatizer = new FileInputStream("english-lemmatizer.bin")) {

}

Однако, в отличие от других файлов модели, я просто не могу найти местоположение этого файла модели. Любые указатели будут оценены.


person Sandeep    schedule 28.03.2019    source источник


Ответы (2)


Книга Ричарда М. Риза «Обработка естественного языка с помощью Java Cookbook» дает хороший ответ. По какой-то причине en-lemmatizer.bin недоступен для прямой загрузки из Интернета, но его можно создать, выполнив следующие действия:

  1. Загрузите и распакуйте apache-opennlp-1.9.0-bin.tar (https://opennlp.apache.org/download.html)

  2. Перейдите по URL-адресу Обучающий файл Lemmatizer и сохраните текстовое содержимое как en-lemmatizer.dict.

  3. Перейдите в каталог bin (из шага 1, после распаковки) и выполните следующую команду:

opennlp LemmatizerTrainerME -model en-lemmatizer.bin -lang en -data /path/to/en-lemmatizer.dict -encoding UTF-8


Примечание. Будьте готовы обработать следующую ошибку:

Computing event counts... Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

person Sandeep    schedule 12.09.2019

Вам нужен en-lemmatizer.bin, а не english-lemmatizer.txt

person geezer57    schedule 12.04.2019