Выпуск spaCy 1.0, библиотеки для обработки информации на естественном языке
20 октября 2016 года
Компания Explosion AI, специализирующаяся на разработках, связанных с искусственным интеллектом и машинным обучением, представила первый значительный выпуск свободной библиотеки spaCy, в которой воплощены в рабочий код результаты последних достижений в области распознавания текста на естественном языке ( NLP, Natural Language Processing). Библиотека написана на языке Cython (расширение Python, позволяющее использовать вставки на языке Си), совместима с CPython 2.6+/3.3+ на платформах Unix/Linux, macOS и Windows, и распространяется под лицензией MIT. Языковые модели пока подготовлены только для английского и немецкого языков (размер каждой модели около 500Мб).
Библиотека рассчитана на применение в конечных продуктах, снабжена исчерпывающей документацией и предоставляет целостный API, для которого гарантируется обратная совместимость. Большинство имеющихся разработок в области NLP представляют собой исследовательские проекты, реализующие сразу несколько альтернативных алгоритмов, но не готовые для поставки конечному потребителю. В spaCy обеспечена поддержка только одного алгоритма, демонстрирующего наибольшую эффективность. В случае появления более эффективного алгоритма библиотека будет переведена на него, но этот перевод останется незаметным для завязанных на библиотеку приложений и не повлияет на API. Особенностью spaCy также является архитектура, рассчитанная на обработку документов целиком, без предварительной обработки в препроцессорах, разбивающих документ на фразы.
По производительности spaCy значительно превосходит проекты ClearNLP, CoreNLP, MATE и Turbo, и тратит на обработку документа менее 50 мс. Ценой высокой скорости является незначительное снижение точности - spaCy отстаёт по точности на 2% от наиболее эффективной альтернативной релизации, но работает на порядок быстрее. Например, spaCy при точности в 91.8% выполняет обработку 13963 слов в секунду, в то время как библиотека MATE при точности в 92.5% обрабатывает 550 слов в секунду, а библиотека Turbo при точности в 92.4% обрабатывает 349 слов в секунду.
Основные возможности spaCy:
- Разбор зависимостей на основе меток (точность 91.8% в тесте OntoNotes 5);
- Распознавание именованных сущностей (точность 82.6% в тесте OntoNotes 5);
- Пометка частей речи (точность 87.1% в тесте OntoNotes 5);
- Легко используемые векторы расстановки слов;
- Присвоение всем строкам цифровых идентификаторов;
- Экспорт массивов данных для обработки в библиотеке NumPy;
- Сохранение выравнивания как в исходной строке, что упрощает расчёт разметки;
- Наличие простых орфографических функций;
- Отсутствие препроцессора, spaCy обрабатывает текст как есть;
- Поддержка подключения механизмов глубинного машинного обучения.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.