Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Spacy ( / сек р s ˙I / spay- SEE ) является открытым исходным код библиотеки программного обеспечения для продвинутых обработки естественного языка , написанная на языках программирования Python и Cython . [3] [4] Библиотека издается под лицензией MIT, и ее основными разработчиками являются Мэтью Хоннибал и Инес Монтани , основатели компании-разработчика программного обеспечения Explosion.

В отличие от NLTK , который широко используется для обучения и исследований, spaCy фокусируется на предоставлении программного обеспечения для производственного использования. [5] [6] Spacy также поддерживает глубокие учебные рабочие процессы , которые позволяют подключать статистические модели обученных популярных машин обучения библиотек как TensorFlow , PyTorch или MXNet через свою собственную библиотеку машинного обучения Thinc. [7] [8] Используя Thinc в качестве бэкэнда, spaCy предлагает модели сверточной нейронной сети для тегирования части речи , анализа зависимостей , категоризации текста иПризнание именованных лиц (NER). Готовые статистические модели нейронных сетей для выполнения этой задачи доступны для 17 языков, включая английский, португальский, испанский, русский и китайский, а также существует многоязычная модель NER. Дополнительная поддержка токенизации для более чем 65 языков позволяет пользователям обучать пользовательские модели на своих собственных наборах данных. [9]

История [ править ]

  • Версия 1.0 была выпущена 19 октября 2016 г. и включала предварительную поддержку рабочих процессов глубокого обучения за счет поддержки настраиваемых конвейеров обработки. [10] Он также включал средство сопоставления правил, поддерживающее аннотации сущностей , и официально задокументированный обучающий API.
  • Версия 2.0 была выпущена 7 ноября 2017 года и представила модели сверточной нейронной сети для 7 разных языков. [11] Он также поддерживает настраиваемые компоненты конвейера обработки и атрибуты расширений, а также имеет встроенный обучаемый компонент классификации текста .
  • Версия 3.0 была выпущена 1 февраля 2021 года и представила современные трубопроводы на базе трансформаторов . [12] Он также представил новую систему конфигурации и рабочий процесс обучения, а также подсказки типов и шаблоны проектов. В этой версии больше не поддерживается Python 2 .

Основные особенности [ править ]

  • Неразрушающая токенизация
  • Поддержка «альфа-токенизации» более 65 языков [13]
  • Встроенная поддержка обучаемых компонентов конвейера, таких как распознавание именованных сущностей , теги частей речи , синтаксический анализ зависимостей , классификация текста , связывание сущностей и т. Д.
  • Статистические модели для 17 языков [14]
  • Многозадачное обучение с предварительно обученными трансформаторами, такими как BERT
  • Поддержка пользовательских моделей в PyTorch, TensorFlow и других фреймворках.
  • Современная скорость и точность [15]
  • Готовая к производству система обучения
  • Встроенные визуализаторы синтаксиса и именованных сущностей
  • Простая упаковка модели, развертывание и управление рабочим процессом

Расширения и визуализаторы [ править ]

Визуализация дерева синтаксического анализа зависимостей, созданная с помощью визуализатора DISPLACY

spaCy поставляется с несколькими расширениями и визуализациями, которые доступны в виде бесплатных библиотек с открытым исходным кодом:

  • Thinc: библиотека машинного обучения, оптимизированная для использования ЦП и глубокого обучения с вводом текста.
  • sense2vec: библиотека для вычисления сходства слов, основанная на Word2vec и sense2vec. [16]
  • DISPLACY: визуализатор дерева синтаксического анализа зависимостей с открытым исходным кодом, созданный с помощью JavaScript , CSS и SVG .
  • DISPLACY ENT : визуализатор именованных сущностей с открытым исходным кодом, созданный с помощью JavaScript и CSS .

Ссылки [ править ]

  1. ^ "Представляем spaCy" . Explosion.ai . Проверено 18 декабря 2016 .
  2. ^ «Выпуск v3.0.0: конвейеры на основе трансформаторов, новая система обучения, шаблоны проектов, пользовательские модели, улучшенный API компонентов, подсказки типов и многое другое · Explosion / spaCy» . GitHub . Проверено 2 февраля 2021 .
  3. ^ Choi et al. (2015). Это зависит: сравнение анализатора зависимостей с помощью веб-инструмента оценки .
  4. ^ "Новый искусственный интеллект Google не может понять эти предложения. Вы можете?" . Вашингтон Пост . Проверено 18 декабря 2016 .
  5. ^ «Факты и цифры - spaCy» . spacy.io . Проверено 4 апреля 2020 .
  6. ^ Птица, Стивен; Кляйн, Юэн; Лопер, Эдвард; Болдридж, Джейсон (2008). «Междисциплинарное обучение с помощью инструментария естественного языка» (PDF) . Труды третьего семинара по вопросам обучения компьютерной лингвистике, ACL : 62. doi : 10.3115 / 1627306.1627317 . ISBN  9781932432145. S2CID  16932735 .
  7. ^ «PyTorch, TensorFlow и MXNet» . thinc.ai . Проверено 4 апреля 2020 .
  8. ^ "взрыв / тонкий" . GitHub . Проверено 30 декабря 2016 .
  9. ^ "Модели и языки | Документация по использованию spaCy" . spacy.io . Проверено 10 марта 2020 .
  10. ^ "взрыв / спаСи" . GitHub . Проверено 8 февраля 2021 .
  11. ^ "взрыв / спаСи" . GitHub . Проверено 8 февраля 2021 .
  12. ^ "взрыв / спаСи" . GitHub . Проверено 8 февраля 2021 .
  13. ^ "Модели и языки - spaCy" . spacy.io . Проверено 8 февраля 2021 .
  14. ^ "Модели и языки | Документация по использованию spaCy" . spacy.io . Проверено 8 февраля 2021 .
  15. ^ "Тесты | Документация по использованию spaCy" . spacy.io . Проверено 8 февраля 2021 .
  16. ^ Траск и др. (2015). sense2vec - быстрый и точный метод устранения неоднозначности слов при встраивании нейронных слов .

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • Реализация Spacy Library