• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2021/2022

Математические методы обработки текстов

Статус: Курс по выбору (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 4-й курс, 1-3 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Преподаватели: Турдаков Денис Юрьевич
Язык: русский
Кредиты: 10

Программа дисциплины

Аннотация

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

Цель освоения дисциплины

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

Планируемые результаты обучения

  • Способность решать проблемы в профессиональной деятельности на основе анализа и синтеза
  • Способность оценивать потребность в ресурсах и планировать их использование при решении задач в профессиональной деятельности
  • Способность  Способен работать с информацией: находить, оценивать и использовать информацию из различных источников, необходимую для решения научных и профессиональных задач (в том числе на основе системного подхода)
  • Способность вести исследовательскую деятельность, включая анализ проблем, постановку целей и задач, выделение объекта и предмета исследования, выбор способа и методов исследования, а так-же оценку его качества
  • Способность использовать методы и инструментальные средства исследования объектов профессиональной деятельности
  • Способность обосновать принимаемые проектные решения, осуществлять постановку и выполнение экспериментов по проверке их корректности и эффективности
  • Способность проектировать, конструировать и тестировать программные продукты
  • Способность читать, понимать и выделять главную идею прочитанного исходного кода, документации
  • Способность использовать различные технологии разработки программного обеспечения
  • Способность применять основные методы и инструменты разработки программного обеспечения
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение
    Задачи обработки текста. Многозначность при обработке текста. Проблема понимания. Тест Тьюринга. Китайская комната. Типичная схема решения задач анализа данных
  • Базовые методы обработки текстов
    Регулярные выражения и конечные автоматы. Методы поиска словосочетаний. Общая схема. Методы поиска кандидатов. Проверка статистических гипотез. Методы машинного обучения для обработки текстов. Метод опорных векторов. Логистическая регрессия. Скрытые марковские модели, алгоритм Витерби
  • Современные методы обработки текстов
    Модель нейрона МакКаллока-Питтса. Персептрон. Обучение искусственной нейронной сети. Рекуррентные нейронные сети. Векторные представления слов. Дистрибутивная гипотеза. Локальные и глобальные модели векторов слов (word2vec, GloVe). Проблема редких слов, модели FastText и CharCNN.
  • Задачи обработки текстов
    Сегментация текста: задачи токенизации и определения границ предложений. Задача определения языка тек-ста. Задача определения частей речи и морфологического анализа. Задача нормализации слов. Грамматическая омонимия. Синтаксический анализ. Поверхностный синтаксический анализ. Дерево составляющих. Генерация текста по формальной грамматике. Разбор предложения по грамма-тике составляющих. Алгоритм Кока-Янгера-Касами. Дере-во зависимостей. Разбор предложения на основе переходов. Проективность деревьев разбора. Методы разбора для непроективных деревьев. Нейронные сети для синтаксического анализа. Синтаксический разбор на основе Stack LSTM. Графовые методы синтаксического анализа. Оценка качества построенных деревьев разбора.
  • Семантический анализ текстов
    Лексическая семантика. WordNet. Значения слов. Разрешение лексической многозначности. Алгоритмы классификации. Самонастройка. Методы, основанные на словарях и тезаурусах. Варианты алгоритма Леска. Методы оценки качества. Привязка к базам знаний. Алгоритм Milne-Witten Задача языкового моделирования. Нейросетевые язы-ковые модели (ELMo, GPT, BERT).
  • Прикладное применение методов анализа текстов
    Информационный поиск. Ранжирование документов. Векторная модель. Взвешивание терминов. Индексирование. Инвертированный индекс. Вопросно-ответные системы: общая архитектура. Об-работка запроса. Извлечение фрагментов текста. Обработка ответа. Автоматическое реферирование: общая архитектура. Машинный перевод. Классические подходы. Статистический машинный перевод. Модель зашумленного ка-нала. Модель перевода на основе фраз. Выравнивание фраз. Декодирование. Выравнивание слов. Модель IBM Model 1. Тренировка моделей выравнивания. Модели кластеризации. Иерархическая кластеризация. Метод К-средних. Тематическое моделирование. Вероятностная латентная семантическая модель. Латентное размещение Дирихле. Робастные модели.
Элементы контроля

Элементы контроля

  • неблокирующий Индивидуальное практическое задание (домашнее задание)
  • неблокирующий Экзамен
Промежуточная аттестация

Промежуточная аттестация

  • Промежуточная аттестация (3 модуль)
    0.5 * Индивидуальное практическое задание (домашнее задание) + 0.5 * Экзамен
Список литературы

Список литературы

Рекомендуемая основная литература

  • Bird, S., Loper, E., & Klein, E. (2009). Natural Language Processing with Python. O’Reilly Media.
  • Ian Goodfellow, Yoshua Bengio, & Aaron Courville. (2016). Deep Learning. The MIT Press.

Рекомендуемая дополнительная литература

  • Введение в информационный поиск, Маннинг, К. Д., Рагхаван, П., 2014
  • Искусственный интеллект : современный подход, Рассел, С., Норвиг, П., 2006
  • Программируем коллективный разум, Сегаран, Т., Слинкина, А., 2008