Математические методы анализа текстов (ВМиК МГУ) / 2018
Материал из MachineLearning.
|
Курс посвящен методам анализа текстов на основе статистики и машинного обучения.
Курс читается магистрам 1го года кафедры «Математические методы прогнозирования» ВМК МГУ.
Обработка естественного языка (Natural Language Processing) - широкая область на стыке лингвистики и компьютерных технологий. Сегодня здесь решается огромное число задач, например, классификация текстов, определение тональности, машинный перевод, распознавание речи, обработка запросов в поиске. В ходе курса слушатели познакомятся с основными методами и применят их на практике.
Контакты
- Лекции и семинары проходят по пятницам 12-50 - 14-25, 14-35 - 16-10 в ауд.505.
- Лектор: Виктор Китов
- Семинарист: Мурат Апишев
- Почта курса (семинары, задания): nlp.msu@gmail.com.
- Здесь вы в любой момент можете оставить анонимный отзыв или предложение.
Программа курса
- Токенизация, коллокации, регулярные выражения, языковые модели
- Определение частей речи, скрытая марковская модель, модель максимальной энтропии, тэггер Брилла.
- Классификация текстов, tf-idf, метод ближайших центроидов, модели Бернулли и мультиномиальная; регуляризация, отбор признаков; анализ тональности.
- Тематические модели.
- Нейросети (обратное распространение ошибки, функции активации, инициализация весов, оптимизация); векторные представления слов: word2vec (CBOW, skip-gram), glove.
- Регулярные языки, transduser, типы грамматик, контекстно-свободные грамматики; синтаксические анализаторы; алгоритм Кока-Янгера-Касами, вероятностные грамматики, вероятностный алгоритм Кока-Янгера-Касами
- Детали обучения нейросетей: дропаут, батч-нормализация, рекуррентные нейронные сети; задача NER.
- RNN, LSTM, GRU; CNN
- Вопросно-ответные системы, автоматическая суммаризация, PageRank
- WordNet, проблема лексической неоднозначности, алгоритм Леска; проверка орфографии
Лекции
Токенизация, коллокации, регулярные выражения.
Скрытая марковская модель для дискретных признаков.
Скрытая марковская модель с дискретными выходами.
Сверточные нейросети для анализа текстов.
Применения рекуррентных нейросетей.
Семинары
Дата | Тема | Материалы | ||
---|---|---|---|---|
Семинар 1 | 9.02.2018 | Правила курса, получение данных, предобработка текста, извлечение коллокаций | Слайды | |
Семинар 2 | 17.02.2018 | Языковые модели, статистический машинный перевод, задача выравнивания | Слайды | |
Семинар 3 | 12.03.2018 | Классификация текстов, инструменты (Vowpal Wabbit, FastText), задача анализа тональности | Слайды | |
Семинар 4 | 23.03.2018 | Тематическое моделирование | Слайды | |
Семинар 5 | 30.03.2018 | Векторные представления слов + доклады | Слайды | |
Семинар 6 | 06.04.2018 | Доклады | ||
Семинар 7 | 20.04.2018 | Информационный поиск | Слайды | |
Семинар 8 | 20.04.2018 | Глубинное обучение в обработке текстов | Слайды |
Задания
Дедлайн | Баллы | Тема | Материалы | |
---|---|---|---|---|
Лабораторная 1 | 21:00 8 марта 2018 | 10 баллов | Языковое моделирование и распознавание языка. | Ipython-ноутбук с заданием + данные. |
Лабораторная 2 | 21:00 29 марта 2018 | 10 баллов | Определение частей речи и
выделение именованных сущностей. | Ipython-ноутбук с заданием. |
Лабораторная 3 | 21:00 15 апреля 2018 | 15 баллов | Задача выравнивания в машинном переводе. | Материалы задания. |
Лабораторная 4 | 21:00 2 мая 2018 | 15 баллов | Векторные представления слов, тематические модели, анализ тональности. | Данные Формулировка задания. |
Результаты проверки
Студенты | Лабораторная № 1 | Лабораторная № 2 | Лабораторная № 3 | Лабораторная № 4 | Доклад + выступление | Итог |
---|---|---|---|---|---|---|
Амир Мирас | 8.5 | 8.3 | ||||
Белобородов Дмитрий | 9.5 | 10 | 5+5 | |||
Бобров Евгений | 7 | 6.4 | 5+5 | |||
Бобров Роман | 5 | 10.5 | ||||
Гарипов Тимур | 9 | 10.5 | 5 | |||
Драпак Степан | 8.5 | 11 | ||||
Каюмов Эмиль | 9.3 | 9.2 | ||||
Коваленко Павел | 8 | 10.3 | ||||
Лунин Дмитрий | 8.4 | 8.8 | ||||
Николаев Владимир | 7.4 | 8.4 | 5+5 | |||
Пиджакова Анна | 5.7 | 5.3 | ||||
Полыковский Даниил | 8.5 | 9.5 | 5+5 | |||
Попов Артём | 9.5 | 12 | 5+5 | |||
Таскынов Ануар | 5.5 | 10.9 | 5+5 | |||
Трубицын Юрий | 3.5 | 1 | ||||
Ходырева Виктория | 9 | 5.3 | ||||
Шолохова Татьяна | 9 | 10.8 | 5 |
Оценка за курс
Оценка за курс определяется оценкой за экзамен (0,3,4 или 5) и результатами работы в семестре (от 0 до 60 баллов включительно). Оценивание производится по следующей схеме:
- 50+ баллов - автомат, при условии выполнения всех 4 лаб и написании реферата (выступление обязательным не является).
- 40-49 баллов - итоговая оценка равна оценке за экзамен плюс 1 балл
- 30-39 баллов - итоговая оценка равна оценке за экзамен
- 20-29 баллов - итоговая оценка равна оценке за экзамен минус 1 балл
- 19- баллов - недопуск к экзамену (в этом случае нужно будет дополнительно решать задания до получения суммарного числа баллов >=20)
На экзамене будут вопросы по теоретическому минимуму и по основному материалу. Незнание ответов на вопросы теоретического минимума приводит к пересдаче, количество баллов за семестровую работу при этом никак не учитывается. На самой пересдаче правила аналогичны основному экзамену.
Литература
Stanford: Deep learning in natural language processing. Spring 2016.
Stanford: Deep learning in natural language processing. Winter 2017.
Juravsky, Manning - Video lectures on natural language processing.
Speech and Language Processing. Dan Jurafsky and James H. Martin. 3-rd edition, draft.
Speech and Language Processing. Dan Jurafsky and James H. Martin. 2-nd edition. 2009.
Natural Language Processing with Python. Stewen Bird et. al. 2-nd edition. 2016.
Питон и библиотеки
- Anaconda - дистрибутив питона с предустановленными научными библиотеками
- A Crash Course in Python for Scientists
- Numpy
- Matplotlib
- Scipy Lecture Notes
- Pandas
- Scikit-learn