Математические методы анализа текстов (курс лекций) / осень 2020
Материал из MachineLearning.
(→Программа курса) |
(Отмена правки № 102714 участника Arti lehtonen (обсуждение)) |
||
(31 промежуточная версия не показана) | |||
Строка 45: | Строка 45: | ||
* хорошо (5, 6, 7) — 3 сданных задания на положительную оценку | * хорошо (5, 6, 7) — 3 сданных задания на положительную оценку | ||
* отлично (8, 9, 10) — 4 сданных задания на положительную оценку | * отлично (8, 9, 10) — 4 сданных задания на положительную оценку | ||
+ | |||
+ | Если после сдачи экзамена студенту не хватает баллов на положительную оценку, он отправляется на "пересдачу". Студент должен досдать домашние задания, которые он не сдавал в течение семестра, чтобы набрать баллы для получения минимальной удовлетворительной оценки. Домашние задания проверяются без учёта штрафа. | ||
===Правила сдачи экзамена === | ===Правила сдачи экзамена === | ||
- | + | Программа экзамена находится здесь: [https://github.com/mmta-team/mmta_fall_2020/blob/master/exam_program.pdf программа] | |
==Программа курса== | ==Программа курса== | ||
+ | |||
+ | === Лекции === | ||
+ | |||
{|class = "standard" | {|class = "standard" | ||
! № !! Дата !! Тема !! Материалы !! Видео !! Д/З | ! № !! Дата !! Тема !! Материалы !! Видео !! Д/З | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 1 |
| 02.09 | | 02.09 | ||
| Организация курса, правила игры. | | Организация курса, правила игры. | ||
Строка 75: | Строка 80: | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 2 |
| 09.09 | | 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 задание по эмбеддингам] | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/01_word_embeddings задание по эмбеддингам] | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 3 |
| 15.09 | | 15.09 | ||
| Задача разметки последовательностей (tagging). Примеры задач. | | Задача разметки последовательностей (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 видео] | | [https://www.youtube.com/watch?v=B72No9_jSm4&feature=youtu.be видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 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 |
- | | | + | | 30.09 |
| Машинный перевод. Подход Sequence-to-sequence. | | Машинный перевод. Подход Sequence-to-sequence. | ||
Строка 120: | Строка 116: | ||
Архитектура 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 видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 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 видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 7 |
- | | | + | | 20.10 |
| Контекстуальные векторные представления слов. | | Контекстуальные векторные представления слов. | ||
Строка 142: | Строка 141: | ||
Модель BERT и её модификации. | Модель BERT и её модификации. | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/07_transfer_learning/slides_transfer_learning.pdf слайды] |
- | | | + | | [https://www.youtube.com/watch?v=_WBbB4RVe60&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=10 видео] |
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/03_transfer_learning задание по берту] |
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 8 |
- | | | + | | 28.10 |
| Задача классификации текстов. | | Задача классификации текстов. | ||
Дизайн индустриальной ML-системы. | Дизайн индустриальной ML-системы. | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/08_classification/classification_slides.pdf слайды] |
- | | | + | | [https://www.youtube.com/watch?v=MlnvQ3v-0cw видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 9 |
- | | | + | | 03.11 |
- | | Тематическое моделирование и | + | | Тематическое моделирование и его приложения. |
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/09_topic_modeling/tm_slides.pdf слайды] | ||
+ | | [https://www.youtube.com/watch?v=-qvYF6oUxsI&feature=youtu.be видео] | ||
+ | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/04_topic_modeling задание по тем. моделированию] | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | | 10 | ||
+ | | 11.11 | ||
| | | | ||
- | | | + | Диалоговые и вопросно-ответные системы. |
+ | |||
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/10_dialog_and_qa/dialog_qa_slides.pdf слайды] | ||
+ | | [https://www.youtube.com/watch?v=ILsna6L71DU&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=13 видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 11 |
- | | | + | | 17.11 |
| Синтаксический разбор и его применение в практических задачах. | | Синтаксический разбор и его применение в практических задачах. | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/11_syntax/syntax_slides.pdf слайды] |
- | | | + | | [https://www.youtube.com/watch?v=qvLkJ_CDJZE&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=14 видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 12 |
- | | | + | | 24.11 |
| Информационный поиск. | | Информационный поиск. | ||
NLP в рекомендательных системах. | NLP в рекомендательных системах. | ||
+ | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/12_search_and_recommendations/search_recsys_slides.pdf слайды] | ||
+ | | [https://www.youtube.com/watch?v=mVCKWbEbBY8&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=15 видео] | ||
+ | | [https://github.com/mmta-team/mmta_fall_2020/tree/master/tasks/05_generation задание по генерации] | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | | 13 | ||
+ | | 01.12 | ||
+ | | Автоматическая суммаризация текстов. | ||
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/13_summarization/summarization_slides.pdf слайды] |
- | | | + | | [https://www.youtube.com/watch?v=Y2AUbER2FsE&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=16 видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
+ | |} | ||
+ | |||
+ | === Семинары === | ||
+ | |||
+ | {|class = "standard" | ||
+ | ! № !! Дата !! Тема !! Материалы !! Видео !! Д/З | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 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 видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 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 видео] |
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
|- <!-- Новое занятие --> | |- <!-- Новое занятие --> | ||
- | | | + | | 3 |
- | | | + | | 21.10 |
- | | | + | | Разбор второго практического задания. |
- | | | + | | [https://github.com/mmta-team/mmta_fall_2020/blob/master/tasks/02_tagging/tagging_postprocessing_notes.pdf конспект] |
- | | | + | [https://github.com/mmta-team/mmta_fall_2020/blob/master/seminars/03_second_task_analysis/notes_crf.pdf записи] |
+ | | [https://www.youtube.com/watch?v=uVb48NzMKic&list=PLVF5PzSHILHRQO45w7fEqmy7t9xWUGfB-&index=11 видео] | ||
| | | | ||
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
+ | |||
Строка 218: | Строка 247: | ||
==Страницы прошлых лет== | ==Страницы прошлых лет== | ||
- | [[Математические методы анализа текстов (курс лекций) / осень | + | * [[Математические методы анализа текстов (курс лекций) / осень 2019]] ВМК & МФТИ |
- | + | * [[Математические методы анализа текстов (курс лекций, К.В.Воронцов, А.А.Потапенко)]] — 2018 (ФУПМ МФТИ) | |
- | [[Математические методы анализа текстов (курс лекций, К.В.Воронцов, А.А.Потапенко) | + | * [[Математические методы анализа текстов (ВМиК МГУ) / 2018]] — 2018 (ВМК МГУ) |
- | + | * [[Математические методы анализа текстов (ВМиК МГУ) / 2017]] — 2017 (ВМК МГУ) | |
- | [[Математические методы анализа текстов (ВМиК МГУ) / 2017 | + | |
==Дополнительные материалы== | ==Дополнительные материалы== |
Текущая версия
В курсе рассматриваются основные задачи и математические методы обработки естественного языка.
Курс читается:
- студентам кафедры «Математические методы прогнозирования» ВМК МГУ с 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 сданных задания на положительную оценку
Если после сдачи экзамена студенту не хватает баллов на положительную оценку, он отправляется на "пересдачу". Студент должен досдать домашние задания, которые он не сдавал в течение семестра, чтобы набрать баллы для получения минимальной удовлетворительной оценки. Домашние задания проверяются без учёта штрафа.
Правила сдачи экзамена
Программа экзамена находится здесь: программа
Программа курса
Лекции
№ | Дата | Тема | Материалы | Видео | Д/З |
---|---|---|---|---|---|
1 | 02.09 | Организация курса, правила игры.
Введение в обработку текстов (Natural Language Processing). Предобработка, выделение признаков и классификация . | |||
2 | 09.09 | Векторные представления слов | презентация | видео | задание по эмбеддингам |
3 | 15.09 | Задача разметки последовательностей (tagging). Примеры задач.
Модель Linear-CRF, её упрощения и обобщения. | презентация | видео | |
4 | 23.09 |
Модели рекуррентных нейронных сетей: RNN, LSTM. Применение LSTM для разметки последовательности. | слайды | видео | задание по разметке |
5 | 30.09 | Машинный перевод. Подход Sequence-to-sequence.
Механизм внимания в подходе sequence-to-sequence. Архитектура transformer. | слайды | видео | |
6 | 13.10 | Задача языкового моделирования.
Статистические и нейросетевые языковые модели. Задача генерации естественного языка. | слайды | видео | |
7 | 20.10 | Контекстуальные векторные представления слов.
Transfer learning в NLP. Модель BERT и её модификации. | слайды | видео | задание по берту |
8 | 28.10 | Задача классификации текстов.
Дизайн индустриальной ML-системы. | слайды | видео | |
9 | 03.11 | Тематическое моделирование и его приложения. | слайды | видео | задание по тем. моделированию |
10 | 11.11 |
Диалоговые и вопросно-ответные системы. | слайды | видео | |
11 | 17.11 | Синтаксический разбор и его применение в практических задачах. | слайды | видео | |
12 | 24.11 | Информационный поиск.
NLP в рекомендательных системах. | слайды | видео | задание по генерации |
13 | 01.12 | Автоматическая суммаризация текстов. | слайды | видео |
Семинары
№ | Дата | Тема | Материалы | Видео | Д/З |
---|---|---|---|---|---|
1 | 16.09 | Введение в нейросети. Библиотека pytorch. | записи (нейросети) | видео | |
2 | 06.10 | Разбор первого практического задания. | слайды | видео | |
3 | 21.10 | Разбор второго практического задания. | конспект | видео |
|
Страницы прошлых лет
- Математические методы анализа текстов (курс лекций) / осень 2019 ВМК & МФТИ
- Математические методы анализа текстов (курс лекций, К.В.Воронцов, А.А.Потапенко) — 2018 (ФУПМ МФТИ)
- Математические методы анализа текстов (ВМиК МГУ) / 2018 — 2018 (ВМК МГУ)
- Математические методы анализа текстов (ВМиК МГУ) / 2017 — 2017 (ВМК МГУ)
Дополнительные материалы
Литература
- 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