Углубленный курс по текстам (Natural Language Processing)
Константин Слепов
Этот курс для тех, кто уже знаком с устройством и принципом работы нейросетей и хочет специализироваться на работе с естественным языком.
Чему Вы научитесь:
- Пройдя курс, вы сможете решать широкий спектр задач, начиная от классификации текста, заканчивая NER и переводом предложений
- В каждом занятии будет рассказываться продвинутая теория, чтобы вы могли свободно изменять архитектуру и стратегию решения задачи, если она значительно отличается от типовой
- Также в курсе будут даваться полезные практические советы, которые, если разбираться самому, приходят с опытом лишь через длительное время и после множества экспериментов
1. Введение в рекуррентные сети
Содержание занятия: Введение в программу курса. Повторение основ рекуррентных сетей: предпосылки к созданию, преимущества над полносвязными сетями, базовый алгоритм работы.
Работа с переносом обучения в рекуррентных сетях. Рассмотрение популярных предобученных моделей для анализа текстов. Мини-проект: обнаружение факта сравнения машины с другими марками в отзывах.
Работа с переносом обучения в рекуррентных сетях. Рассмотрение популярных предобученных моделей для анализа текстов. Мини-проект: обнаружение факта сравнения машины с другими марками в отзывах.
2. Embeddings и языковые модели
Содержание занятия: Знакомство с векторной абстракцией слов. Рассмотрение математических свойств векторов, которые можно использовать при работе с embeddings. Вывод CosineDistanceLoss.
Разбор word2vec, fasttest, glove. Сравнение языковых моделей и предобученных embeddings в переносе обучения. Мини-проект: извлечение хэштегов из текста комментария.
3. Gensim, pymorphyРазбор word2vec, fasttest, glove. Сравнение языковых моделей и предобученных embeddings в переносе обучения. Мини-проект: извлечение хэштегов из текста комментария.
Содержание занятия: Продолжение работы с языковыми моделями. Сбор своей собственной тематической модели с помощью Gensim. Сравнение точности предсказаний нейросети при использовании embeddings, предобученных на разных темах. Разбор методов работы с текстами, написанными на отличном от английского языках. Морфологический анализ текста с помощью pymorphy2 для предобработки текста.
4. Углубление в рекуррентные сетиСодержание занятия: Рассмотрение устройства и смысла популярных рекуррентных слоев: LSTM (и модификации), GRU. Сравнение режимов работы рекуррентных нейросетей. Изучение работы моделей на тензорном уровне. Цель занятия - научиться понимать, как движутся данные по рекурретной нейросети в keras, необходимые размерности на входе и выходе в различных режимах работы нейросети, за что отвечает каждая ось во входных и выходных тензорах. Теоретическая часть занятия в будушем позволит многократно ускорить создание проекта со своим датасетом и своей архитектурой. Рассмотрение задачи Named Entity Recognition. Мини-проект: применение NER на мировых новостях.
5. Свёрточные сетиСодержание занятия: Разбор второго подхода для анализа текстов- сверточные сети: устройство, почему этот подход работает. Сравнение качества работы моделей на основе CNN и RNN.
Рассмотрение сверточных нейросетей, созданных изначально для компьютерного зрения, со стороны NLP. Object detection в текстах. Мини-проект: object detection в отзывах по автомобилям.
6. Seq2SeqРассмотрение сверточных нейросетей, созданных изначально для компьютерного зрения, со стороны NLP. Object detection в текстах. Мини-проект: object detection в отзывах по автомобилям.
Содержание занятия: Изучение преобразования последовательность-последовательность. Рассмотрение составных частей seq2seq модели: encoder и decoder. Разбор задач seq2seq и готовых реализаций по этим задачам. Мини-проект: написание своего чат-бота, отвечающего на вопросы.
7. Преобразование изображений в текст и наоборотСодержание занятия: Окончательное стирание грани между изображениями и текстами. Извлечение смысла из изображения и текста с последующим преобразованием: поиск изображения по тексту, создание изображения с помощью генеративной сети со смыслом текста в качестве условия, создание текстового описания по изображению.
8. Механизм attentionСодержание занятия: Изучение понятия "внимания" в нейросетях. Разбор принципов работы attention в задачах seq2seq. Сравнение качества работы нейросетей с attention и без. Мини-проект: создание своего переводчика.
9. TransformersСодержание занятия: Разбор усовершенствованного механизма attention под названием transformer. Построение базовой версии трансформера. Изучение структуры и возможностей state-of-art реализаций transformer: BERT, GPT-2, T5. Мини-проект: извлечение краткого сымсла: написание abstract части по научной статье.
10. Sentence extractionСодержание занятия: Разбор поиска предложений с необходимым смыслом в тексте с помощью рекуррентных нейросетей. Мини-проект: выделение предложений в новости, в которых идет речь о заранее определенном человеке.
11. LeakGanСодержание занятия: Изучение научной статьи и написание нейросети по ней с нуля с глубоким разбором теоретической части. Решение задачи генерации текста с помощью GAN. Генерация текста, успешно проходящая тест Тьюринга.
Разбор ансамбля CNN+RNN нейросетей для решения сложных задач обработки\генерации текста. Кастомизация работы Keras с помощью низкоуровнего кода на TensorFlow 2.0.
Разбор ансамбля CNN+RNN нейросетей для решения сложных задач обработки\генерации текста. Кастомизация работы Keras с помощью низкоуровнего кода на TensorFlow 2.0.
https://neural-university.ru/kurs_nlp