сравнить библиотеку NER от Stanford coreNLP, SpaCy и Google cloud - PullRequest
0 голосов
/ 22 ноября 2018

Я хочу узнать персона имя из текста.Но я запутался, какую библиотеку НЛП я должен использовать для NER.Я обнаружил следующую лучшую библиотеку NLP для NER 1. Stanford coreNLP 2. Spacy 3. Облако Google.

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

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

Вы спрашиваете, какая библиотека даст наиболее точные результаты, не требуя при этом слишком больших вычислительных мощностей.Поле обработки естественного языка (NLP) быстро меняется.Чтобы показать это, мы можем взглянуть на текущее состояние (SOTA) для распознавания именованных объектов (NER). На этой странице Github есть хорошая сводка для набора данных CONLL03 NER. Я скопирую ее здесь и буду использовать названия компаний, поскольку их легче запомнить:

  1. Zalando .Оценка F1: 0,931.Дата: 24 июня 2018 года
  2. Google .Оценка F1: 0,928.Дата: 31 октября 2018 года
  3. Стэнфорд / Google Brain .Оценка F1: 0,926.Дата: 22 сентября 2018 года

Основываясь на этом списке, мы видим, что новый SOTA получается каждые несколько месяцев.Таким образом, «самая точная система (библиотека)» также должна обновляться каждые несколько месяцев.Производительность ваших данных зависит не только от системы, но и от следующих факторов:

  • Используемый алгоритм. Возможно, Google опубликовал исследование SOTA, но не реализовал его,Единственный способ убедиться в этом - это постоянно тестировать все системы.
  • Размер обучающих данных. Хотя чем больше, тем лучше, некоторые алгоритмы могут обрабатывать несколько примеров ( обучение в несколько шагов)) лучше.
  • Домен. Алгоритм мог бы лучше подходить для обработки формального правительственного текста вместо менее формального текста Википедии.
  • Язык данных. Поскольку большинство исследований сосредоточено на показе SOTA на общедоступных наборах данных, они часто оптимизированы для английского языка.То, как они работают на других языках, может отличаться.

TL; DR : просто выберите систему, которая кажется вам простой в реализации и имеет достаточную точность.Выбор системы на основе точности нетривиален и требует частого переключения системы.

0 голосов
/ 22 ноября 2018

spaCy имеют промышленную силу с точки зрения НЛП и, очевидно, быстрее и точнее с точки зрения NER.Это также связано с многоязычными моделями.Проверьте spaCy

Также AllenNLP поставляется с современной моделью NER, но немного сложна в использовании.Проверьте AllenNLP demo

Если платный доступ не является проблемой, я бы предложил использовать облачный естественный язык Google (конечно, это быстрее и точнее).

У меня естьлично использовал spaCy и AllenNLP.Я бы сказал, пойти с spaCy, если вы хотите начать с.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...