Все курсы

Курс введение в Natural Language Processing

Курс PNLP «NLP с Python»

Код курса Даты начала курса Стоимость обучения Длительность обучения Формат обучения
PNLP
01 апреля 2024
22 июля 2024
18 ноября 2024
90 000 руб. 40 ак.часов Дистанционный
Регистрация

10-дневный практический курс для Data Scientist’ов, специалистов по машинному обучению и Python-разработчиков NLP-приложений, которые хотят освоить продвинутые методы решения задач обработки естественного языка с помощью нейронных сетей.

Что такое NLP и при чем здесь машинное обучение

NLP (Natural Language Processing, NLP) или обработка естественного языка — это целое направление искусственного интеллекта и математической лингвистики, направленное на анализ (компьютерное понимание) текста и речи, а также их грамотный синтез (генерацию нового). NLP-технологии нужны не только для распознавания живого языка средствами искусственного интеллекта. Они дают возможность адекватного взаимодействия человека с вычислительными системами.

Классическими NLP-задачами считаются следующие:

  • определение эмоциональной окраски (тональности) текста,
  • вопросно-ответные системы,
  • классификация текстов,
  • построение выводов по тексту;
  • распознавание речи;
  • анализ текста, включая извлечение данных, информационный поиск и анализ высказываний;
  • генерация текстов;
  • синтез речи;
  • машинный перевод;
  • автоматическое реферирование, аннотирование и упрощение текстовой информации.

Сегодня большинство этих задач решается с помощью современных методов Machine Learning — нейросетевых алгоритмов, которые обладают свойством самообучаемости и способны решать проблемы в условиях неполноты и изменчивости входной информации.

Программа курса

КАК ПОСТРОЕН ОБРАЗОВАТЕЛЬНЫЙ КУРС
по обработке естественного языка в Python

Продолжительность: 10 дней, 40 академических часов.

Соотношение теории к практике 50/50

Курс «NLP с Python» представляет собой прикладные основы обработки естественного языка с помощью Machine Learning, включая всю необходимую теорию и практику по этой области искусственного интеллекта. В программе рассмотрены операции преобразования текстовых данных для дальнейшей обработки нейросетевыми алгоритмами: стемминг, лемматизация, векторизация. Приведены базовые NLP-задачи, которые могут быть решены с помощью методов машинного обучения: классификация и распознавание текстов, анализ звуковой информации. Большое внимание уделено практическому решению задач с использованием методов машинного обучения на языке Python с применением самых передовых нейросетей: BERT, GPT-2. Также курс «NLP с Python» включает изучение особенностей промышленной разработки Data Science решений и их эффективного развертывания в production: фреймворки Flask, Flacon, Django, технологии контейнеризации с помощью Docker, специализированные облачные сервисы.

На практике вы самостоятельно создадите, обработаете и проанализируете тексты и звуковые сигналы, а также создадите собственный production-сервис для решения NLP-задач. В результате освоения программы курса вы овладеете не только основными навыками Machine Learning, необходимыми для обработки естественного языка, но и освоите популярные фреймворки и технологии для промышленного развертывания Data Science решений.

Успешно окончив курс “NLP с Python” в нашем лицензированном учебном центревы получите сертификат о повышении квалификации установленного образца.

Требования к предварительному уровню подготовки слушателей:

  • основы  python;
  • основы линейной алгебры;
  • основы математической статистики.

Программа курса "NLP с Python"

Модуль 1. Введение в NLP

Теоретическая часть: основные понятия; классификация задач, решаемых с помощью методов NLP, стандартный pipeline обработки текстовых данных (очистка, стемминг, лемматизация, классические представления текстовых данных: Bow, Tf-Idf). Обзор алгоритмов стемминга и лемматизации. Популярные библиотеки для работы с текстовыми данными (nltk, spacy, gensim, TextBlob).

Практическая часть: первичный анализ текстовых данных, предобработка текстовых данных, построение простейшей модели бинарной классификации на примере задачи определения спама в смс сообщениях.

Домашняя работа: улучшение простейшей модели классификации. Использование различных подходов к обработке текстовых данных и различных моделей машинного обучения.

Модуль 2. Embeddings

Теоретическая часть: векторные представления слов/текста. Алгоритмы обучения векторных представлений: word2vec, Glove. Векторные представления текста: doc2vec. Embedding своими руками с помощью SVD разложения. Предобученные векторные представления для английского и русского языка.

Практическая часть: обучение векторного представления слов и его использование в задаче множественной классификации на примере датасета  20 News groups.

Домашняя работа: улучшение результатов работы построенной модели с использованием предобученных векторных представлений.

Модуль 3. Применение свёрточных нейронных сетей в NLP

Теоретическая часть: сверточные нейронные сети, параметры сверточных нейронных сетей, параметры обучения сверточных нейронных сетей, архитектура сверточных нейронных сетей в NLP. Ответ на вопроc когда использовать сверточные сети, а когда классические модели машинного обучения в NLP.

Практическая часть: использование сверточных нейронных сетей на примере задачи классификации твитов (датасет Рубцовой).

Домашняя работа: улучшение качества работы построенной модели.

Модуль 4. Рекуррентные нейронные сети

Теоретическая часть: архитектура RNN, CRNN, LSTM, GRU. Нейронные сети с attention. Задачи класса sequence to sequence. Машинный перевод. Архитектура нейронных сетей для машинного перевода.

Практическая часть: пишем нейронную сеть для машинного перевода “from scratch”.

Домашняя работа: тюнинг нейронной сети/обучение своей нейронной сети на другой паре языков.

Модуль 5. Работа со звуковой информацией

Теоретическая часть: физическая природа звука, оцифровка звукового сигнала. Виды цифровых представлений звукового сигнала (ряды, изображения). Speech to text / text to speech, подходы к решению. SOTA нейронные сети для Speech to text.

Практическая часть: пишем рекуррентную нейронную сеть классификации музыкальных жанров (речевых команд).

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

Модуль 6. SOTA нейронные сети в NLP

Теоретическая часть: предобученные нейронные сети в NLP, обзор архитектур нейронных сетей Bert и GPT-2. Режимы работы Bert и GPT-2. Использование Bert в задаче определения близких по смыслу текстов.

Практическая часть: решение задачи определения близких по смыслу текстов. Использование подхода без учителя. Использование Bert.

Домашняя работа: решение задачи с помощью GPT-2.

Модуль 7. Key word extraction / text summarization

Теоретическая часть: подходы к решению задач key word extraction, text summarization. Алгоритм PageRank. Архитектуры нейронных сетей для задач key word extraction и text summarization

Практическая часть: пишем нейронную сеть для key word extraction.

Домашняя работа: пишем нейронную сеть для text summarization.

Модуль 8. Named Entity Recognition

Теоретическая часть: подходы к решению задач NER. Condition Random Fields. Нейронные сети для решения задачи NER.

Практическая часть: решаем NER c помощью CRF.

Домашняя работа: пишем нейронную сеть для NER.

Модуль 9. Использование нейронных сетей в production

Теоретическая часть: сериализация/десериализация объектов в Python, фреймворки Flask, Flacon, Django. Контейнеризация, Docker. Использование сервиса с нейронной сетью в облаке, AWS. Специализированные серверы для использования нейронных сетей (tensorflow serving, torchServe)

Практическая часть: создание API с нейронной сетью с использованием специализированных серверов.

Домашняя работа: создание API с несколькими нейронными сетями.

Дополнительные разделы:

  • VAE (variational autoencoders) for NLP
  • text semantic segmentation
  • natural language inference
  • text generation

Программа курса «PNLP: NLP — обработка естественного языка с Python»

Скачать программу курса «NLP — обработка естественного языка с Python» в формате pdf

Укажите e-mail, на который будет оправлена ссылка для скачивания файла:

Кто проводит курс

prepod-oleg-konorev.jpg
Преподаватель Школы Больших Данных

Конорев Олег

Академия Федеральной службы безопасности Российской Федерации (Москва, 2012)
Профессиональные компетенции:
  • Руководитель группы Data Science в НИИ “Квант”, Москва
  • Computer vision (CV) – решение задач по классификации и детектировании объектов на фото и видео, идентификации человека,  сегментации изображений и распознаванию текста с библиотеками OpenCV, Tensorflow API и архитектурами нейронных сетей  Yolo, SSD, fRCNN, U-net и пр.
  • Natural language processing (NLP) – решение задач по классификации текстов, извлечению именованных сущностей (NER) и ключевых слов с библиотеками gensim, nltk, fasttext, spacy и др. Построение различных архитектур на основе искусственных нейронных сетей с использованием различных представлений слов (Embedding, Word2Vec) и готовых нейросетевых решений (Bert, fastai)
  • Time series analysis – решение задач обработки, анализа и классификации аудио сигналов с библиотеками librosa, ffmpeg и различных архитектур нейронных сетей, а также предсказание значений временных рядов (time series forecasting) в приложении к котировкам активов с использованием классических решений (ARMA, ARIMA) и моделей на базе сверточных нейронных сетей (CNN), рекуррентных нейронных сетей (LSTM,GRU) и их комбинаций.
  • Проекты сегментации сигналов с различных датчиков и приборов и распознавания речи (speech-to-text) с облачными сервисами Yandex и Google.
prepod-ermilov-dmitrij-mihajlovich.jpg
Преподаватель Школы Больших Данных

Ермилов Дмитрий

Академия Федеральной службы безопасности Российской Федерации (Москва, 2012)
Профессиональные компетенции:
  • Ведущий Data Scientist в ФГУП “Центр информационных технологий”, Москва
  • Руководитель программ в Университете искусственного интеллекта, Москва.
  • Кандидат наук (2017 год, Московский государственный университет им. М.В. Ломоносова, Москва)

География наших клиентов

  • Москва
  • Санкт-Петербург
  • Нижний Новгород
  • Екатеринбург
  • Казань
  • Краснодар
  • Красноярск
  • Перьм
  • Челябинск
  • Новосибирск
  • Томск
  • Тверь
  • Саратов
  • Самара
  • Ростов-на-Дону
  • Хабаровск
  • Волгоград
  • Калуга
  • Якутск
  • Севастополь
  • Тольяти
  • Владивоссток
  • Тюмень
  • Южно-Сахалинск
  • Уфа
  • Ставрополь
  • Минск
  • Алматы
  • Астана
  • Ташкент
  • Душанбе
  • Бешкек
Если у Вас остались вопросы Вы можете позвонить к нам по телефону +7 (495) 414-11-21  или заполнить форму обратной связи на сайте.
Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.
Поиск по сайту