Введение в обработку естественного языка

Санкт-Петербург, осень 2019

Описание

О программе

Курс познакомит слушателей с несколькими из наиболее часто встречающихся на практике задач и базовых подходов в автоматической обработке текстов. Будут рассмотрены классификация и кластеризация текстов, поиск дубликатов, частеречная разметка, выделение именованных сущностей, векторное представление слов, языковое моделирование и несколько других смежных задач.

Требования к слушателям

  • базовые навыки программирования на Python,
  • знание основ линейной алгебры и классической вероятности или готовность разобраться в них самостоятельно на ходу,
  • интерес к анализу естественного языка и машинному обучению.

Технические требования

  • Python 3.5+
  • pip (и возможность установки пакетов с его помощью)
  • PyTorch, TF (отдельной строкой, так как иногда установка требует неожиданных временных затрат)
  • ваша любимая IDE для написания кода на питоне (notepad, spyder, pycharm, любая другая)

Логистика курса

Занятия раз в неделю: 1-2 лекции по вторникам. Вторая лекция будет проводиться при необходимости, предупреждение об этом будет анонсировано в канале курса в slack CSCenter хотя бы за три дня.

Оценка будет складываться из взвешенной суммы баллов:

  • за выполненные домашние работы; за преподавателями остаётся право снизить оценку за малопонятный код, поэтому рекомендуем ознакомиться с правилами хорошего тона :)
  • за контрольные работы по материалам предыдущих занятий
  • за дополнительное задание (можно делать, можно не делать; высокий балл за курс (т. е. “пятёрка”) может быть получен и без них).

Хорошие книги

Авторы курса также благодарны за критический анализ материалов и рекомендации Д.П. Кирьянову.

Преподаватели

Список лекций

Марковские модели и элементы теории информации

Работа, о которой речь идёт перед лекцией: https://openai.com/blog/unsupervised-sentiment-neuron/

Также приложено доказательство неотрицательности дивергенции Кульбака-Лейблера.