Введение в обработку естественного языка
Санкт-Петербург, осень 2019
Описание
О программе
Курс познакомит слушателей с несколькими из наиболее часто встречающихся на практике задач и базовых подходов в автоматической обработке текстов. Будут рассмотрены классификация и кластеризация текстов, поиск дубликатов, частеречная разметка, выделение именованных сущностей, векторное представление слов, языковое моделирование и несколько других смежных задач.
Требования к слушателям
- базовые навыки программирования на Python,
- знание основ линейной алгебры и классической вероятности или готовность разобраться в них самостоятельно на ходу,
- интерес к анализу естественного языка и машинному обучению.
Технические требования
- Python 3.5+
- pip (и возможность установки пакетов с его помощью)
- PyTorch, TF (отдельной строкой, так как иногда установка требует неожиданных временных затрат)
- ваша любимая IDE для написания кода на питоне (notepad, spyder, pycharm, любая другая)
Логистика курса
Занятия раз в неделю: 1-2 лекции по вторникам. Вторая лекция будет проводиться при необходимости, предупреждение об этом будет анонсировано в канале курса в slack CSCenter хотя бы за три дня.
Оценка будет складываться из взвешенной суммы баллов:
- за выполненные домашние работы; за преподавателями остаётся право снизить оценку за малопонятный код, поэтому рекомендуем ознакомиться с правилами хорошего тона :)
- за контрольные работы по материалам предыдущих занятий
- за дополнительное задание (можно делать, можно не делать; высокий балл за курс (т. е. “пятёрка”) может быть получен и без них).
Хорошие книги
- D. Jurafsky, J. H. Martin. Speech and Language Processing: An Introduction to Natural Language Processing, Speech Recognition, and Computational Linguistics. 2nd edition. Prentice-Hall. 2009.
- Chr. Manning, Pr. Raghavan and H. Schütze. Introduction to Information Retrieval, Cambridge University Press. 2008.
- Chr. Manning, H. Schütze, Foundations of Statistical Natural Language Processing, MIT Press. Cambridge, MA: May 1999.
- Николаев И.С., Митренина О.В., Ландо Т.М. (ред.). Прикладная и КОМПЬЮТЕРНАЯ ЛИНГВИСТИКА. Изд.2 Прикладная и компьютерная лингвистика URSS. 2017.
- Yoav Goldberg. A primer on neural network models for natural language processing. JAIR 2016 (https://arxiv.org/abs/1510.00726).
- Leskovec, J., Rajaraman, A., & Ullman, J. D. (2014). Mining of massive datasets. Cambridge university press.
Авторы курса также благодарны за критический анализ материалов и рекомендации Д.П. Кирьянову.
Преподаватели
Список лекций
Упоминавшиеся работы, которых нет в слайдах.
Unreasonable Effectiveness:
http://karpathy.github.io/2015/05/21/rnn-effectiveness/
Neuron:
Работа, о которой речь идёт перед лекцией: https://openai.com/blog/unsupervised-sentiment-neuron/
Также приложено доказательство неотрицательности дивергенции Кульбака-Лейблера.