ПОИСК
Быстрый заказ
ОЦЕНКА КУРСАобщая оценка курса:оценка преподавателя: Хочу скидку |
10-дневный практический курс для Data Scientist’ов, специалистов по машинному обучению и Python-разработчиков NLP-приложений, которые хотят освоить продвинутые методы решения задач обработки естественного языка с помощью нейронных сетей.
Курс “NLP с Python” представляет собой прикладные основы обработки естественного языка с помощью Machine Learning, включая всю необходимую теорию и практику по этой области искусственного интеллекта. В программе рассмотрены операции преобразования текстовых данных для дальнейшей обработки нейросетевыми алгоритмами: стемминг, лемматизация, векторизация. Приведены базовые NLP-задачи, которые могут быть решены с помощью методов машинного обучения: классификация и распознавание текстов, анализ звуковой информации. Большое внимание уделено практическому решению задач с использованием методов машинного обучения на языке Python с применением самых передовых нейросетей: BERT, GPT-2. Также курс “NLP с Python” включает изучение особенностей промышленной разработки Data Science решений и их эффективного развертывания в production: фреймворки Flask, Flacon, Django, технологии контейнеризации с помощью Docker, специализированные облачные сервисы. На практике вы самостоятельно создадите, обработаете и проанализируете тексты и звуковые сигналы, а также создадите собственный production-сервис для решения NLP-задач. В результате освоения программы курса вы овладеете не только основными навыками Machine Learning, необходимыми для обработки естественного языка, но и освоите популярные фреймворки и технологии для промышленного развертывания Data Science решений.
Выберите форму обучения,
чтобы увидеть актуальные даты:
РАСПИСАНИЕ ЗАНЯТИЙ
|
Содержание курса
МОДУЛЬ 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 с несколькими нейронными сетями.
Дополнительные разделы:
Теоретическая часть: основные понятия; классификация задач, решаемых с помощью методов 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
Слушатели
Курс предназначен для специалистов по машинному обучению и Python-разработчиков NLP-приложений, которые хотят освоить продвинутые методы решения задач обработки естественного языка с помощью нейронных сетей.
Предварительная подготовка
- основы python;
- основы линейной алгебры;
- основы математической статистики.