Математические методы анализа текстов (курс лекций) / осень 2020
Материал из MachineLearning.
(→Программа курса) |
(→Программа курса) |
||
(19 промежуточных версий не показаны.) | |||
Строка 28: | Строка 28: | ||
==Правила сдачи курса== | ==Правила сдачи курса== | ||
- | * В курсе будет | + | * В курсе будет 5 практических задания по 10 баллов без учёта бонусов. |
* В конце курса — устный экзамен, оцениваемый по 10-ти балльной шкале. | * В конце курса — устный экзамен, оцениваемый по 10-ти балльной шкале. | ||
* По всем заданиям мягкий дедлайн, за 1 день штрафа назначается штраф 1 балл. | * По всем заданиям мягкий дедлайн, за 1 день штрафа назначается штраф 1 балл. | ||
Строка 34: | Строка 34: | ||
===Правила выставления итоговой оценки=== | ===Правила выставления итоговой оценки=== | ||
- | Студенты, набравшие за практические задания больше | + | Студенты, набравшие за практические задания больше 50 баллов, получают автоматом максимальную оценку. |
Для остальных итоговая оценка по 10-ти балльной шкале вычисляется по следующей формуле: | Для остальных итоговая оценка по 10-ти балльной шкале вычисляется по следующей формуле: | ||
- | <tex>round(0.7 \times D / | + | <tex>round(0.7 \times D / 5 + 0.3 \times E) \times \mathbb{I}[E >= 3] </tex>, где |
<tex>D</tex> — оценка за дз, <tex>E</tex> — оценка за экзамен, <tex>round</tex> — математическое округление. | <tex>D</tex> — оценка за дз, <tex>E</tex> — оценка за экзамен, <tex>round</tex> — математическое округление. | ||
Есть дополнительные условия для получения каждой из оценок: | Есть дополнительные условия для получения каждой из оценок: | ||
- | * удовлетворительно (3, 4) — | + | * удовлетворительно (3, 4) — 2 сданных задания на положительную оценку |
- | * хорошо (5, 6, 7) — | + | * хорошо (5, 6, 7) — 3 сданных задания на положительную оценку |
- | * отлично (8, 9, 10) — | + | * отлично (8, 9, 10) — 4 сданных задания на положительную оценку |
===Правила сдачи экзамена === | ===Правила сдачи экзамена === | ||
Строка 56: | Строка 56: | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
| лекция 1 | | лекция 1 | ||
- | | 02.09 | + | | 02.09 |
| Организация курса, правила игры. | | Организация курса, правила игры. | ||
Строка 76: | Строка 76: | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
| лекция 2 | | лекция 2 | ||
- | | | + | | 09.09 |
| Векторные представления слов | | Векторные представления слов | ||
- | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/02_word_embeddings | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/02_word_embeddings/word_embeddings.pdf презентация] |
| [https://www.youtube.com/watch?v=9ny2v6-KT84&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=4&t=0s видео] | | [https://www.youtube.com/watch?v=9ny2v6-KT84&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=4&t=0s видео] | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/01_word_embeddings задание по эмбеддингам] |
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | лекция 3 |
- | | | + | | 15.09 |
- | | | + | | Задача разметки последовательностей (tagging). Примеры задач. |
- | | | + | |
- | | | + | Модель Linear-CRF, её упрощения и обобщения. |
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/03_tagging_crf/tagging_crf.pdf презентация] | ||
+ | | [https://www.youtube.com/watch?v=B72No9_jSm4&feature=youtu.be видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | семинар 1 |
- | | | + | | 16.09 |
- | | | + | | Введение в нейросети. Библиотека pytorch. |
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/seminars/01_nn_pytorch/nn_notes.pdf записи (нейросети)] | ||
+ | |||
+ | [https://github.com/mmta-team/mmta_fall_2020/blob/master/seminars/01_nn_pytorch/pytorch_bases.ipynb ноутбук (pytorch)] | ||
- | + | [https://github.com/mmta-team/mmta_fall_2020/blob/master/seminars/01_nn_pytorch/food_cbow.ipynb ноутбук (cbow на pytorch)] | |
- | + | ||
- | | | + | | [https://www.youtube.com/watch?v=5LXdNkoL45U&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=6 видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
| лекция 4 | | лекция 4 | ||
- | | | + | | 23.09 |
- | | | + | | |
+ | Модели рекуррентных нейронных сетей: RNN, LSTM. | ||
- | + | Применение LSTM для разметки последовательности. | |
- | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/04_tagging_rnn/tagging_rnn.pdf слайды] | |
- | Применение | + | | [https://www.youtube.com/watch?v=KlJ-lSDAkeA&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=6 видео] |
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/02_tagging задание по разметке] |
- | | | + | |
- | | | + | |
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
| лекция 5 | | лекция 5 | ||
- | | | + | | 30.09 |
| Машинный перевод. Подход Sequence-to-sequence. | | Машинный перевод. Подход Sequence-to-sequence. | ||
Строка 120: | Строка 124: | ||
Архитектура transformer. | Архитектура transformer. | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/05_machine_translation_transformers/machine_translation_transformers.pdf слайды] |
+ | | [https://www.youtube.com/watch?v=aTCxhBNEdk0&feature=youtu.be видео] | ||
| | | | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | | семинар 2 | ||
+ | | 06.10 | ||
+ | | Разбор первого практического задания. | ||
+ | |||
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/seminars/02_first_task_analysis/first_task_tips_and_tricks.pdf слайды] | ||
+ | | [https://youtu.be/sTxF3mnTvWY видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
| лекция 6 | | лекция 6 | ||
- | | | + | | 13.10 |
- | | Задача | + | | Задача языкового моделирования. |
- | + | Статистические и нейросетевые языковые модели. | |
- | | | + | |
- | | | + | Задача генерации естественного языка. |
+ | |||
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/06_language_modeling/lm_slides.pdf слайды] | ||
+ | | [https://www.youtube.com/watch?v=ME0nfTyT0cw&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=9 видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
Строка 137: | Строка 153: | ||
| лекция 7 | | лекция 7 | ||
| ??? | | ??? | ||
- | | Transfer learning в NLP | + | | Контекстуальные векторные представления слов. |
+ | |||
+ | Transfer learning в NLP. | ||
Модель BERT и её модификации. | Модель BERT и её модификации. |
Версия 16:48, 13 октября 2020
В курсе рассматриваются основные задачи и математические методы обработки естественного языка.
Курс читается:
- студентам кафедры «Математические методы прогнозирования» ВМК МГУ с 2016 года
- студентам кафедры «Интеллектуальные системы» ФУПМ МФТИ с 2018 года
От студентов требуются знание курса машинного обучения, основ глубинного обучения, а также языка программирования Python.
Содержание |
Объявления
Нет
Контакты
- Преподаватели курса: Воронцов К.В., Апишев М.А., Попов А.С., Хрыльченко К.Я.
- В этом семестре занятия будут проводиться онлайн в TBA
- По всем конструктивным вопросам пишите в telegram-чат
- Репозиторий со всеми материалами: ссылка
- Видеозаписи лекций: ссылка
- Короткая ссылка на страницу курса: https://clck.ru/QcKga
- Постоянная ссылка для просмотра лекций в Zoom: ссылка
Правила сдачи курса
- В курсе будет 5 практических задания по 10 баллов без учёта бонусов.
- В конце курса — устный экзамен, оцениваемый по 10-ти балльной шкале.
- По всем заданиям мягкий дедлайн, за 1 день штрафа назначается штраф 1 балл.
- За любой найденный плагиат задание обнуляется у всех студентов с найденным плагиатом. При повторном обнаружении плагиата могут следовать более жёсткие санкции. Плагиатом считается явное заимствование кода у другого студента или из открытых источников без указания источника.
Правила выставления итоговой оценки
Студенты, набравшие за практические задания больше 50 баллов, получают автоматом максимальную оценку. Для остальных итоговая оценка по 10-ти балльной шкале вычисляется по следующей формуле:
, где
— оценка за дз, — оценка за экзамен, — математическое округление.
Есть дополнительные условия для получения каждой из оценок:
- удовлетворительно (3, 4) — 2 сданных задания на положительную оценку
- хорошо (5, 6, 7) — 3 сданных задания на положительную оценку
- отлично (8, 9, 10) — 4 сданных задания на положительную оценку
Правила сдачи экзамена
TBA
Программа курса
№ | Дата | Тема | Материалы | Видео | Д/З |
---|---|---|---|---|---|
лекция 1 | 02.09 | Организация курса, правила игры.
Введение в обработку текстов (Natural Language Processing). Предобработка, выделение признаков и классификация . | |||
лекция 2 | 09.09 | Векторные представления слов | презентация | видео | задание по эмбеддингам |
лекция 3 | 15.09 | Задача разметки последовательностей (tagging). Примеры задач.
Модель Linear-CRF, её упрощения и обобщения. | презентация | видео | |
семинар 1 | 16.09 | Введение в нейросети. Библиотека pytorch. | записи (нейросети) | видео | |
лекция 4 | 23.09 |
Модели рекуррентных нейронных сетей: RNN, LSTM. Применение LSTM для разметки последовательности. | слайды | видео | задание по разметке |
лекция 5 | 30.09 | Машинный перевод. Подход Sequence-to-sequence.
Механизм внимания в подходе sequence-to-sequence. Архитектура transformer. | слайды | видео | |
семинар 2 | 06.10 | Разбор первого практического задания. | слайды | видео | |
лекция 6 | 13.10 | Задача языкового моделирования.
Статистические и нейросетевые языковые модели. Задача генерации естественного языка. | слайды | видео | |
лекция 7 | ??? | Контекстуальные векторные представления слов.
Transfer learning в NLP. Модель BERT и её модификации. | |||
лекция 8 | ??? | Задача классификации текстов.
Дизайн индустриальной ML-системы. | |||
лекция 9 | ??? | Тематическое моделирование и тематический поиск. | |||
лекция 10 | ??? | Синтаксический разбор и его применение в практических задачах. | |||
лекция 11 | ??? | Информационный поиск.
NLP в рекомендательных системах. | |||
лекция 12 | ??? | Диалоговые и вопросно-ответные системы. | |||
лекция 13 | ??? | TBA | |||
лекция 14 | ??? | TBA |
|
Страницы прошлых лет
2018 (ФУПМ МФТИ), 2018 (ВМК МГУ)
Дополнительные материалы
Литература
- Dan Jurafsky and James H. Martin Speech and Language Processing (3rd ed. draft)
- Stewen Bird et. al. Natural Language Processing with Python. 2-nd edition. 2016.
- Большакова Е.И., Воронцов К.В., Ефремова Н.Э., Клышинский Э.С., Лукашевич Н.В., Сапин А.С. Автоматическая обработка текстов на естественном языке и анализ данных. НИУ ВШЭ, 2017.
- Yoav Goldberg et. al. Neural Network Methods in Natural Language Processing
- LxMLS summer school Practical guide on NLP in Python
Другие курсы по NLP