Я работаю над проектом, который требует от меня добавления тегов POS во входную строку. Я также собираюсь использовать структуру грамматических зависимостей, сгенерированную анализатором Стэнфорда, для последующей обработки.
На что следует указать, прежде чем я перейду к своей проблеме.
- Для POS-тегов я использую http://nlp.stanford.edu/software/tagger.shtml (версия 3.3.1)
- Для генерации грамматической зависимости я использую http://nlp.stanford.edu/software/lex-parser.shtml#Download (версия 3.3.1)
Я включил обе эти jar-файлы в свой путь к классу. (Включив, я использую maven для извлечения stanford-jar-анализатора из репозитория maven и включения jar-файла POStagger, используя шаги, упомянутые ниже)
Теперь проблема в том, что всякий раз, когда я пытаюсь получить теги POS для входной строки, я получаю следующую ошибку.
Exception in thread "main" java.lang.NoSuchMethodError: edu.stanford.nlp.tagger.maxent.TaggerConfig.getTaggerDataInputStream(Ljava/lang/String;)Ljava/io/DataInputStream;
Моя интуиция подсказывает, что это связано с тем, что в банке парсера Stanford также есть пакет Maxent, содержащий класс TaggerConfig. Каждый раз, когда я запрашиваю POS-теги для строки, программа смотрит в банку парсера Stanford, а не в банку Stanford POStagger, отсюда и возникает ошибка.
Я использую maven и не могу найти банку POStagger в Maven central, поэтому я включил ее в свой локальный репозиторий maven, используя инструкции на http://charlie.cu.cc/2012/06/how-add-external-libraries-maven/.
Я был бы очень признателен, если бы кто-нибудь мог указать на какое-либо решение этой проблемы