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

Контакты:
Павел Браславский
электронная почта: pbras [эт] яндекс [точка] ру, тема [nlp2016]
рассылка: http://bit.ly/iir2014
ведомость

Расписание

Программа курса

Тема лекции Материалы
Введение. Варианты названия дисциплины, определение, особенности, задачи, приложения, методы. Краткая история мировой и советской/российской ОЕЯ. Сожержание и "идеология" курса. Ресурсы. SLP: Ch. 1, FSNLP: Ch. 1
Слайды: Введение
Морфологический анализ. Чем занимается морфология, для чего нужна машинная морфология. Стемминг, лемматизация, частеречная (ЧР) разметка. Алгоритм Портера для английского. Лемматизация для русского языка: mystem, pymorphy2, AOT. Словарь Зализняка как источник данных для лемматизации. Как строить гипотезы для незнакомых слов. Задача ЧР-разметки. Скрытые марковские модели для ЧР-разметки. Источники данных. Алгоритм Витерби. SLP: ch. 3; FSNLP: ch. 9, 10.
Слайды: Морфологический анализ
статьи Зеленков, Сегалович, Титов (2005), Сокирко, Толдова (2005), Ляшевская и др. (2010).
Классический сценарий информационного поиска, особенности задач информационного поиска. Базовые метрики качества поиска: точность, полнота, F1. Морфология в поиске. Частотные свойства терминов в коллекции: законы Хипса и Ципфа. Модель векторного пространства. Взешивание терминов: подход tf.idf. Другие задачи ОЕЯ в поиске. IIR: ch. 8.3, 5.1, 6.2, 6.3; SLP: ch. 23.1
Слайды: ОЕЯ в задачах информационного поиска
+ слайды авторов IIR: 1, 2.
статья Губин, Морозов (2006)
Автоматическое реферирование. Постановка задачи, области применения, примеры. Типы рефератов. Методы реферирования текстовых документов. Постобработка рефератов. Оценка, инициативы по оценке методов автоматического реферирования. Веб-сниппеты (рефераты с учетом запроса): особенности задачи, методы. Оценка веб-сниппетов. IIR: ch. 8.7; SLP: 23.3
Слайды: Автоматическое реферирование
статья и слайды Savenkov, Braslavski, Lebedev (2011)
Языковые модели (Language Models). Области применения, ограничения. N-граммы, оценка вероятностей, доступные большие коллеакции n-грамм. Оценка языковых моделей, перплексия. Сглаживание (smoothing), откат (backoff) и интерполяция (interpolation). Технические приемы при работе с языковыми моделями масштаба Веба, языковые модели с "памятью". Сглаживнаие Лапласа, Гуда-Тьюринга, Кнезера-Нея. SLP: 4
Слайды: Language Modeling
Good-Turing Smoothing Without Tears by William A. Gale
MS Web N-gram Services
Синтаксические анализ (syntactic parsing). Два формализма описания синтаксиса: система составляющих (constituency) и дерево зависимостей (dependency). Контекстно-свободные грамматики (КСГ): возможности и ограничения. Вероятностные КСГ. Алгоритм вероятностного синтаксического разбораа. Оценка результатов разбора. Лексикализация ВКСГ. SLP: 12, 13, 14
слайды: 1, 2, 3, 4
неформальное введение в синтаксические модели на ПостНауке (видео)
Извлечение информации из текстовых документов. Особенности задачи, источники данных. Именованные сущности (NEs), отношения. Основные подходы. Оценка. SLP: 22
слайды J&M@coursera, мои слайды
Статья о FactRuEval 2016, проект @github
Машинный перевод: краткая история, сложности, подходы, приложения. Перевод, основанный на правилах (RBMT) и статистический машинный перевод (СМП, STM). Источники данных для статистического машинного перевода. Выравнивание параллельного корпуса. IBM Models 1, 2. Фразовый СМП. Оценка систем МП: ручная, автоматическая (BLUE). SLP: 25
слайды Jordan Boyd-Graber 1, 2; мои слайды + ссылки на последней странице моих слайдов
Анализ тональности (sentiment analysis): источники данных и различные постановки задачи, примеры приложений. Подход на основе классификации. Сложности анализа тональности: разнообразие форм выражения, ирония и сарказм, порядок и связт оценок. Использование словарей тонально окрашенных слов. Автоматическое пополнение/создание словарей. Обработка отрицаний. Фразы vs. отдельные слова. Аспекты/атрибуты: автоматическое выделение и списки, составленные вручную. Ресурсы для русского языка. слайды: Jurafsky, мои.
book by Pang & Lee
Bing Liu's page
Семантика, разные подходы и определения: логика высказываний, семантический веб, базы знаний, онтологии предметных областей, тезаурусы. Лексическая семантика: омонимы, многозначные слова, синонимы, антонимы, гипонимы/гиперонимы. Семантические словари -- тезаурусы. WordNet: синсеты и отношения. Методы определения семантической близости слов на основе тезауруса. Дистрибутивная семантика: семантическая близость на основе корпуса. Положительная поточечная взаимная информация (PPMI). Вычисления близости на основе структуры словосочетаний. Векторное представление семантики слов на основе на основе нейронных сетей. SLP: 17, 18, 19, 20
слайды Jurafsky
WordNet, YARN
RUSSE, RusVectores
word2vec, GloVe

 

Практические задания

Задание 1. Морфологический анализ

Данные: словарь А.А.Зализняка, акцентуированная парадигма по А. А. Зализняку, веб-интерфейс к словарю А.А.Зализняка; пояснения к словарю А.А.Зализняка, словарь ODICT.

Задача: постройте лемматизатор на основе данных словря Зализняка.
*Добавьте распознавание незнакомых слов (отсутствующих в словаре).
**Реализуйте лемматизатор на основе конечного преобразователя (см., например, ссылки на инструменты).

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

Задание 2. Частеречная разметка (POS tagging)

Данные: подкорпус OpenCorpora со снятой омонимией (отсюда), список тегов.

Задача: постройте теггер на основе скрытых марковских моделей и данных OpenCorpora.
*Дополните теггер гипотезами для незнакомых слов на основе данных словаря Зализняка. Оцените качество разметки.

Срок сдачи заданий 1 и 2: 16 марта 2016.

Задание 3. Автоматическое реферирование

Данные: статьи Газета.ру.

Задача: Построить систему автоматического реферирования (извлечения значимых предложений). Вход: текст + длина реферата в предложениях. Выход: реферат заданной длины (предложения в том же порядке, что и в оригинальном документе)

Варианты решения:
-- на основе машинного обучения (обучение на файлах 001-187);
-- на основе ручного подбора формулы.

Тестовые статьи: 188-207 (длина требуемого реферата совпадает с длиной квазиреферата в файле). Протестируйте результат на новостных статьях других источников. Предложите критерии и методы оценки.

Срок сдачи задания 3: 1 апреля 2016 (серьезно).

Задание A. Синтаксический анализ

На странице в "разделе Russian dependency parsing" содержатся ссылки на парсер, обученную модель для РЯ, ссылка на статью, а также описание данных, на которых проводилось обучение.

Задачи:
-- изменить производительность парсера;
-- измерить качество парсера (20-50 предложений).

Задание 4. Извлечение именованных сущностей и отношений (можно делать в группах)

Решите задачу выделения именованных сущностей -- персон и организаций (часть дорожки 1), а также (* -- по желанию) отношений "Владение организацией" (часть дорожки 3); оцените качество.

Описание: популярно, задания и форматы, данные.

Задание 5. Машинный перевод (можно делать в группах)

Зарегистрируйтесь и скачайте параллельный корпус. Разделите данные на обучающую, настроечную и тестовую выборки.

Постройте модель перевода, оцените качество перевода (BLEU).

Сайт Moses, тьюториал.

Литература

Основная:

Daniel Jurafsky and James H. Martin, Speech and Language Processing, 2nd Edition, 2008. (SLP)
Amazon
Черновик 3-го издания: https://web.stanford.edu/~jurafsky/slp3/

Chris Manning and Hinrich Schutze, Foundations of Statistical Natural Language Processing, MIT Press, 1999. (FSNLP)
http://nlp.stanford.edu/fsnlp/

Christopher D. Manning, Prabhakar Raghavan, and Hinrich Schutze, Introduction to Information Retrieval, Cambridge University Press. 2008. (IIR)
http://nlp.stanford.edu/IR-book/
Русский перевод: http://www.williamspublishing.com/Books/978-5-8459-1623-5.html

Дополнительная:

Стюарт Рассел, Питер Норвиг. Искусственный интеллект: современный подход, 2-е издание.
http://www.williamspublishing.com/Books/5-8459-0887-6.html.

Steven Bird, Ewan Klein, and Edward Loper. Natural Language Processing with Python.
1-е издание (2009): http://www.nltk.org/book_1ed/
2-е издание (в процессе): http://www.nltk.org/book/

Последнее изменение 17.05.2016