2016-10-13 4 views
9

Недавно я начал использовать набор инструментов NLTK для создания нескольких решений с использованием Python.NLTK vs Stanford NLP

Я слышал много об активности сообщества относительно использования stanford NLP. Может ли кто-нибудь сказать мне, в чем разница между НЛТК и НЛП Стэнфорда? Являются ли они двумя разными библиотеками? Я знаю, что у NLTK есть интерфейс для stanford NLP, но кто-нибудь может пролить свет на несколько основных различий или даже более подробно.

Можно ли использовать stanford NLP с помощью Python?

+0

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

+0

Мой опыт ограничен. Беглое исследование показало, что «шаблон» Стэнфорда лучше и быстрее работает при маркировке POS, чем NLTK. Я проделал эту работу около 2 лет назад. –

+0

'pattern' (http://www.clips.ua.ac.be/pattern) не принадлежат Стэнфорду. это от CLIPS от Университета Антверпена ... – alvas

ответ

18

Может ли кто-нибудь сказать мне, в чем разница между НЛТК и НЛП Стэнфорда? Являются ли они двумя разными библиотеками? Я знаю, что у NLTK есть интерфейс к NLP Stanford, но кто-нибудь может пролить свет на несколько основных различий или даже более подробно.

(я предполагаю, что вы имеете в виду "Stanford CoreNLP".)

Это две разные библиотеки.

  • Stanford CoreNLP написана на Java
  • NLTK библиотека Python

Основным функциональным отличием является то, что NLTK имеет несколько версий или интерфейсы к другим версиям инструментов НЛП, в то время как У Stanford CoreNLP есть только их версия. NLTK также поддерживает установку сторонних проектов Java и даже включает в себя instructions for installing some Stanford NLP packages on the wiki.

Оба имеют хорошую поддержку для английского языка, но если вы имеете дело с другими языками:

Сказанное, которое является «лучшим», будет зависеть от вашего конкретного приложения и требуемой производительности (какие функции вы используете, язык, лексику, желаемую скорость и т. Д.).

Можно ли использовать Stanford NLP с использованием Python?

Yes, there are a number of interfaces and packages for using Stanford CoreNLP in Python (независимый от NLTK).

+0

Спасибо за информацию, так же как и библиотека nlkt в python использует ядро ​​StanfordNLP? Является ли Nltk более похожим на интерфейс StanfordNLP? – RData

+2

NLTK - это собственный пакет NLP, который, как раз так, обеспечивает интерфейс для пакетов Stanford NLP, среди прочих. Это не «основано на« Stanford CoreNLP »или что-то в этом роде - если только NLTK не говорит, что функция/модуль/и т. Д. Является интерфейсом к Stanford NLP, это не так. – whrrgarbl