1) HuggingFace
Платформа Hugging Face Hub позволяет пользователям обмениваться моделями машинного обучения и наборами данных. Там есть и российские разработки.
На платформе Hugging Face можно:
- Создать свою нейросетевую модель. Можно собрать и обучить ИИ под свои задачи, например, сделать генератор картинок в определённом стиле.
- Тестировать чужие модели и сохранять полезные. У платформы есть центральное хранилище, где пользователи могут находить, загружать, делиться и управлять моделями машинного обучения и наборами данных.
- Использовать популярные нейросети. Здесь есть ChatGPT, StableDiffusion, MusicGen, Whisper JAX, FLUX.
- У сервиса несколько тарифных планов: можно пользоваться бесплатно — нужно только зарегистрироваться, для разработчиков и бизнеса есть платные подписки.
Hugging Face, Inc. — американская компания основана в 2016 году Клеманом Делангом, Жюльеном Шомоном и Томасом Вольфом. Компания известна также своей библиотекой Transformers.
2) Natural Language Toolkit (NLTK)
NLTK — пакет библиотек и программ для символьной и статистической обработки естественного языка, написанных на языке программирования Python.
Библиотека предоставляет широкий спектр функций и ресурсов для обработки текста, токенизации, маркировки частей речи, распознавания именованных объектов, анализа настроений и многого другого.
Для установки NLTK нужно открыть командную строку или терминал и выполнить команду: pip install nltk.
После успешной установки NLTK можно импортировать её в скрипт на Python, добавив в начало следующую строку: import nltk.
Некоторые задачи, которые можно решать с помощью NLTK:
- Токенизация. Разбиение текста на более мелкие части, такие как слова или предложения.
- Стемминг. Приведение слов к их базовой или корневой форме путём удаления суффиксов.
- Лемматизация. Получение фактической базовой формы слова — леммы. В отличие от стемминга, лемматизация учитывает структуру и смысл слов, что делает её более точной, но требует больших вычислительных ресурсов.
3) SpaCy
SpaCy — это библиотека с открытым исходным кодом для обработки естественного языка (NLP), написанная на Python и Cython.
Функционал библиотеки позволяет решать широкий спектр задач, например, определение частей речи, выделение именованных сущностей, создание собственных моделей для анализа.
Основные особенности SpaCy:
- поддержка рабочих процессов глубокого обучения, которые позволяют подключать статистические модели из популярных библиотек машинного обучения (TensorFlow, PyTorch или MXNet);
- модели свёрточной нейронной сети для тегирования частей речи, разбора зависимостей, категоризации текста и распознавания именованных сущностей (NER);
- поддержка токенизации для более чем 65 языков, что позволяет пользователям обучать пользовательские модели на своих наборах данных.
Библиотека опубликована под лицензией MIT. Её основные разработчики — Matthew Honnibal и Ines Montani, основатели компании Explosion.
4)Natasha
Natasha — набор открытых инструментов для обработки естественного русского языка. Библиотека решает базовые задачи, в том числе сегментацию на токены и предложения, морфологический и синтаксический анализ, лемматизацию, извлечение именованных сущностей.
<Начал проект Дмитрий Веселов и удачно продолжил и развил Александр Кукушкин, внутри созданной им же для себя лабы. И хотя сам Кукушкин ссылается всегда на Веселова, в СМИ всегда пишут, что он сам проект и создал... Вообще, пиаром науки и технологий занимаются какие-то особенные люди, но есть некое ощущение, что многое из того, что они освещают, они знают весьма условно...но это так отвлеченная реплика...а ВУЗы тратят немалые бюджеты на это творчество и, кстати, на создание таких факультетов, где их готовят.....просто столько всего начиталась последние годы...Скажу проще - мне приятнее почитать блог ученого или айтишника, который пишет, что его интересует или над чем он работает. А лучшие научные журналисты изначально были учеными и занимались этим параллельно - ну мы их всех знаем. Это было лирическое отступление! >
Некоторые особенности работы с Natasha:
- Токенизация и сегментация текста на предложения и токены осуществляются с помощью встроенной библиотеки Razdel.
- Морфологический анализатор Natasha, основанный на модели Slovnet, позволяет извлекать богатую морфологическую информацию о каждом токене, такую как часть речи, род, число и падеж.
- Лемматизация в Natasha производится на основе того же морфологического анализа и использует Pymorphy для приведения слов к их начальной форме.
- Синтаксический анализатор Natasha основан на модели Slovnet и позволяет строить деревья зависимостей для предложений.
- Также есть функционал для извлечения именованных сущностей, таких как имена, локации и организации.