Есть ли хорошая библиотека обработки естественного языка

Мне нужно реализовать некоторые НЛП в моем текущем модуле. Я ищу хорошую библиотеку, которая может помочь мне здесь. Я наткнулся на "LingPipe", но не мог полностью следить за тем, как его использовать.
В принципе, нам нужно реализовать функцию, в которой приложение может расшифровать инструкции клиента (инструкции по доставке), введенные простым английским языком. Например:

  • Завтра будет завтра в 12:00 завтра
  • Запрос доставки после 10 июня
  • Пожалуйста, не отправляйте до среды.
  • Добавьте еще 10 единиц XYZ к заказу

Ответ 1

LingPipe очень хорошо и хорошо документировано. Вы также можете посмотреть:

Последний из них может быть интересен вам, хотя я не знаю, есть ли какие-либо легкодоступные Java-реализации (и, возможно, это слишком большое количество пушки для вашей проблемы в любом случае: -)

Идея использования DSL для Paul, вероятно, проще и быстрее реализовать и более надежна для использования для ваших клиентов. Я тоже рекомендую сначала изучить это.

Ответ 2

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

В пространстве Java Groovy имеет некоторую поддержку создание DSL.