В этой статье вы найдете материалы очных курсов «Deep Learning in NLP», которые запускались командой [DeepPavlov](https://deeppavlov.ai/) в 2018-2019 годах. Статья будет полезна любым специалистам, погружающимися в обработку текста с помощью машинного обучения. Благодарю физтехов, разрабатывающих [открытую библиотеку](https://github.com/deepmipt/DeepPavlov) для разговорного искусственного интеллекта в МФТИ, и Moryshka за разрешение осветить эту тему на Хабре в нашем ods-блоге.

![](https://habrastorage.org/webt/5n/q8/bh/5nq8bhxq5aa1k-eezwelagrrb0g.png)


C 11-го февраля 2020 года стартовал открытый и бесплатный курс «Deep Learning in NLP».
Курс помогает разобраться в NLP от самого начала до архитектуры классического трансформера. После курса Вы сможете продвигаться дальше в этой теме (NLP постоянно развивается), сможете читать и понимать умные папирусы на архиве. Как бонус, Вы сможете понять, при чем здесь вообще «Улица Сезам». Все разборы лекций и дополнительные полезные “ништяки” на семинарах — на русском языке.

![image](https://habrastorage.org/webt/gm/4d/7p/gm4d7pu7287d3fbwwsirfnlcigg.jpeg)
*Рисунок 2. Элмо и GPU — лучшие друзья*

Курс требует общего понимания работы алгоритмов машинного обучения, в частности, нейросетей. Начальные знания библиотек глубокого обучения tensorflow или pytorch приветствуются. Самые простые векторизации BagOfWords, TF-iDF не затронуты, рекомендую самостоятельно ознакомиться. Записанные семинары-разборы на русском:
1. [Представления слов в многомерном пространстве (Word embeddings: w2v, fasttext и GloVe)](https://www.youtube.com/watch?v=juDdkybtTv0&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=3&ab_channel=DeepPavlov)
1. [Нейронные сети прямого распространения (FFNN, backprop)](https://www.youtube.com/watch?v=92Ctk9OzlDg&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=4&ab_channel=DeepPavlov)
1. [Рекуррентные и свёрточные сети в NLP (Language Modeling: RNN. И немного про CNN)](https://www.youtube.com/watch?v=Ms3eOk14Uyc&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=6&ab_channel=DeepPavlov)
1. [Transfer learning (ELMo, ULMFiT)](https://www.youtube.com/watch?v=aPNf1IRwqN0&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=7&ab_channel=DeepPavlov)
1. [Механизм внимания на примере задачи нейронного машинного перевода (Attention, seq2seq на примере NMT)](https://www.youtube.com/watch?v=xVd6ExG-s1g&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=8&ab_channel=DeepPavlov)
1. [Архитектура трансформера (Self-Attention, Transformer)](https://www.youtube.com/watch?v=YQZRsowJZA8&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=9&ab_channel=DeepPavlov)
1. [Question answering](https://www.youtube.com/watch?v=99CymZY-4Tc&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=10&ab_channel=DeepPavlov)
1. [Unsupervised machine translation](https://www.youtube.com/watch?v=Chj8yTm5eGk&list=PLt1IfGj6-_-f55ULcae3v7YuG8p_eUjnk&index=11&ab_channel=DeepPavlov)

Общий формат курса — inverted classroom. Включает в себя самостоятельный просмотр лекций, выполнения тестиков, хождения/просмотра записей семинаров на Youtube, выполнения объемных домашних работ, обсуждение с другими ботающими, финальный проект. Далее подробно про каждый из аспектов:

— *Подготовка к семинарам*. Перед каждым семинаром нужно посмотреть определенные лекции по roadmap. Далее нужно выполнить квиз по прослушанному материалу (советую несколько раз прослушать и разобраться).
— *Семинары*. На семинарах происходит обсуждение материала, который Вы ботали дома. Семинарист ответит на вопросы, разберет некоторые фундаментальные вещи еще раз и может быть разберет вопросы из теста. Общаться вживую — очень полезно. В предыдущих запусках курса после выкладывались записи на Youtube, сейчас мб зарелизят и онлайн трансляции. Семинары для меня были супер полезные ([пример](https://www.youtube.com/watch?v=aPNf1IRwqN0&t=5197s) – transfer learning).
— *Задания с кодом — воркшопы*. Задания объемные. Реализуете руками w2v, backprop в RNN и много другого интересного. В предыдущий запуск весной 2019 года был запущен телеграм-бот для проверки заданий в кооперации (peer-reviewed). Т.е. Вы будете смотреть чужой код, а кто-то другой – ваш.
— *Проекты*. Курс дает возможность почувствовать себя исследователем (модное слово NLP-Researcher). Каждый участник должен сделать свой проект. Проект можно делать и в команде. Дефолтный проект — Question Answering. В нем дают бейзлайн для SQuAD 2.0, требуется его улучшить. Также в прошлый запуск предлагались другие возможные темы. Более того, организаторы всегда шли навстречу и разрешали выбрать свой проект не из их списка. В итоге, получилось [много интересных проектов форме постеров](https://drive.google.com/drive/folders/0BzxbY8E_m4r-fkRWejF4OWFTeUszTVNKUDJxU0plNEhpUGFnN18zOHBDWEhSSlVnemJPd0E).
— *Соревнования*. Также был [inclass competition](https://www.kaggle.com/c/dlinnlp-spring-2019-clf/overview) и в рамках курса – классификация новостей.

**Важные ссылки**

1. Основная площадка — Telegram. Объявления и орг. информация тут: t.me/dlinnlp2020spring; чат чисто весеннего потока 2020 тут: t.me/joinchat/HdGuOk3LL4J3iDqj8x0i6g
1. Юра yorko создал репозиторий с roadmap курса (пока ребята пилят отдельную страничку на своем сайте, …пилят же?) github.com/Yorko/dl_in_nlp_deeppavlov_cs224n_spring2020
1. Общий чат всех предыдущих запусков, где сидят уже 800+ человек (так сказать, залетайте): t.me/dlinnlp_discuss

**Q & A**

1. Где официальный road map? — пока его нет. Только [тут](https://github.com/Yorko/dl_in_nlp_deeppavlov_cs224n_spring2020). Важно следить за официальными объявлениями [тут](https://t.me/dlinnlp2020spring).
1. Смогу ли я проходить курс, если я не из Москвы? — да, сможете. Для этого и выкладываются записи семинаров.

**ODS**

Курс стартует при поддержке [OpenDataScience](https://ods.ai), под эгидой которого уже сформировались 2 мощнейших русскоязычных курса [по ML](https://mlcourse.ai) и [по DL](https://dlcourse.ai). Приглашаем всех интересующихся DS в огромное (~41к участников) русскоязычное (и не только) сообщество. Доступ в ODS дается по инвайтам после подачи заявки на [главной странице](https://ods.ai) с небольшим вступительным тестом. Подаете заявку и скачиваете приложение Slack. Далее ждете письма на почту с приглашением в workspace_ods.

**Отдельная благодарность**

Хочу сказать огромное спасибо Владу Лялину. Этот человек тащил на себе не один запуск курса, вложил уйму времени как в семинары, так и в создание телеграм-бота для упрощения проверки заданий. Сейчас он делает PhD в University of Massachusetts Lowell и стажируется в Google. Пожелаем ему удачи и будем держать за него кулачки. Влад – тащи.

![image](https://habrastorage.org/webt/xb/9d/jd/xb9djdecoqazua7s-mlftssnqv4.jpeg)
*Рисунок 3. Фото c семинара по RNN*

**Заключение**

От лица сообщества ods.ai посмею заявить, что это максимально топ курс, в который стоит ворваться, пока есть возможность.

![](https://habrastorage.org/webt/cg/2v/ad/cg2vado6ai6i0xinnjtyzyndepy.png)
*Рисунок 1. Лого DeepPavlov*