Практический Курс «NLP с Python» для Data Scientist’ов, специалистов по машинному обучению и Python-разработчиков NLP-приложений, которые хотят освоить продвинутые методы решения задач обработки естественного языка с помощью нейронных сетей.
NLP (Natural Language Processing, NLP) или обработка естественного языка — это целое направление искусственного интеллекта и математической лингвистики, направленное на анализ (компьютерное понимание) текста и речи, а также их грамотный синтез (генерацию нового). NLP-технологии нужны не только для распознавания живого языка средствами искусственного интеллекта. Они дают возможность адекватного взаимодействия человека с вычислительными системами.
Классическими NLP-задачами считаются следующие:
- определение эмоциональной окраски (тональности) текста,
- вопросно-ответные системы,
- классификация текстов,
- построение выводов по тексту;
- распознавание речи;
- анализ текста, включая извлечение данных, информационный поиск и анализ высказываний;
- генерация текстов;
- синтез речи;
- машинный перевод;
- автоматическое реферирование, аннотирование и упрощение текстовой информации.
Сегодня большинство этих задач решается с помощью современных методов Machine Learning — нейросетевых алгоритмов, которые обладают свойством самообучаемости и способны решать проблемы в условиях неполноты и изменчивости входной информации.
Соотношение теории к практике 50/50
Продолжительность курса 40 академических часов, проводится в течение 10 дней.
Курс «NLP с Python» представляет собой прикладные основы обработки естественного языка с помощью Machine Learning, включая всю необходимую теорию и практику по этой области искусственного интеллекта. В программе рассмотрены операции преобразования текстовых данных для дальнейшей обработки нейросетевыми алгоритмами: стемминг, лемматизация, векторизация. Приведены базовые NLP-задачи, которые могут быть решены с помощью методов машинного обучения: классификация и распознавание текстов, анализ звуковой информации. Большое внимание уделено практическому решению задач с использованием методов машинного обучения на языке Python с применением самых передовых нейросетей: BERT, GPT-2. Также курс «NLP с Python» включает изучение особенностей промышленной разработки Data Science решений и их эффективного развертывания в production: фреймворки Flask, Flacon, Django, технологии контейнеризации с помощью Docker, специализированные облачные сервисы.
На практике вы самостоятельно создадите, обработаете и проанализируете тексты и звуковые сигналы, а также создадите собственный production-сервис для решения NLP-задач. В результате освоения программы курса вы овладеете не только основными навыками Machine Learning, необходимыми для обработки естественного языка, но и освоите популярные фреймворки и технологии для промышленного развертывания Data Science решений.
Требования к предварительному уровню подготовки слушателей:
- основы 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
Программа читается совместно с Школа Больших Данных.
В конце обучения на курсе проводится итоговая аттестация в виде теста или на основании оценок за практические работы, выполненных в процессе обучения
В современном мире сложно обойтись без информационных технологий и их производных - компьютеров, мобильных телефонов, интернета и т.д., особенно в крупных компаниях и государственных организациях, работающих с большим количеством людей, а не только с парой VIP-клиентов, как это может быть в случае небольшой компании. А там, где есть большое количество контрагентов, заявителей и т.д. - не обойтись без баз данных, необходимых для обработки информации. Естественно, что времена гроссбухов и карточек, памятных многим по библиотекам, давно прошли, сегодня используются персональные компьютеры и электронные базы данных.
Сегодня невозможно представить работу крупнейших компаний, банков или государственных организаций без использования баз данных и средств Business Intelligence. Базы данных позволяют нам хранить и получать доступ к большим объемам информации, а система управления базами данных (СУБД) — осуществлять менеджмент доступных хранилищ информации.
В Учебном центре « Интерфейс» Вы научитесь эффективно использовать системы управления базами данных: быстро находить нужную информацию, ориентироваться в схеме базы данных, создавать запросы, осуществлять разработку и создание баз данных.
Обучение позволит Вам не только получить знания и навыки, но и подтвердить их, сдав соответствующие экзамены на статус сертифицированного специалиста . Опытные специалисты по СУБД Microsoft SQL Server или Oracle могут быть заинтересованы в изучении систем бизнес-аналитики. Это задачи достаточно сложные, использующие громоздкий математический аппарат, но они позволяют не только анализировать происходящие процессы, но и делать прогнозы на будущее, что востребовано крупными компаниями. Именно поэтому специалисты по бизнес-аналитике востребованы на рынке, а уровень оплаты их труда весьма и весьма достойный, хотя и квалифицированным специалистам по базам данных, администраторам и разработчикам, жаловаться на низкий уровень дохода тоже не приходится. Приходите к нам на курсы и получайте востребованную и высокооплачиваемую профессию. Мы ждем Вас!
В конце обучения на курсах проводится итоговая аттестация в виде теста или путём выставления оценки преподавателем за весь курс обучения на основании оценок, полученных обучающимся при проверке усвоения изучаемого материала на основании оценок за практические работы, выполненные в процессе обучения.
Учебный центр "Интерфейс" оказывает консалтинговые услуги по построению моделей бизнес-процессов, проектированию информационных систем, разработке структуры баз данных и т.д.
- Нужна помощь в поиске курса?
Наша цель заключается в обеспечении подготовки специалистов, когда и где им это необходимо. Возможна корректировка программ курсов по желанию заказчиков! Мы расскажем Вам о том, что интересует именно Вас, а не только о том, что жестко зафиксировано в программе курса. Если вам нужен курс, который вы не видите на графике или у нас на сайте, или если Вы хотите пройти курс в другое время и в другом месте, пожалуйста, сообщите нам, по адресу mail@interface.ru или shopadmin@itshop.ru
- Поговорите со своим личным тренинг-менеджером!
Мы предоставляет Вам индивидуальное обслуживание. Если у вас есть потребность обсудить, все вопросы касательно обучения, свяжитесь, пожалуйста c нами по телефонам: +7 (495) 925-0049, + 7 (495) 229-0436. Или любым другим удобным для Вас средствами связи, которые Вы можете найти на сайтах www.interface.ru или www.itshop.ru
|