Бакалавриат
2026/2027





Языки программирования для обработки естественного языка
ID 1162978
Статус:
Курс обязательный (Тексты, языки и цифровые инструменты)
Кто читает:
Департамент иностранных языков
Где читается:
Санкт-Петербургская школа гуманитарных наук и искусств
Когда читается:
2-й курс, 3, 4 модуль
Охват аудитории:
для своего кампуса
Преподаватели:
Енина Анна Дмитриевна
Язык:
русский
Кредиты:
5
Контактные часы:
72
Программа дисциплины
Аннотация
Курс направлен на формирование системных знаний о современных языках программирования (с фокусом на Python), используемых для решения прикладных задач компьютерной лингвистики. В рамках курса формируются навыки программирования для обработки текстовых данных: от токенизации и фильтрации до морфологической и синтаксической разметки. Для успешного освоения учебной дисциплины студенты должны знать грамматические категории и уровни лингвистического анализа, а также знать основные типы представления данных в Python и уметь совершать базовые операции над ними.
Цель освоения дисциплины
- Знакомство с языками программирования и основными задачами обработки естественного языка.
- Овладение навыками программирования на языке Python для сбора, анализа и обработки текстовых данных на разных уровнях лингвистического анализа.
Планируемые результаты обучения
- Перечисляет основные языки программирования, типы данных и специфические методы работы с ними, логические операторы, а также модули и библиотеки Python в контексте актуальных задач обработки естественного языка.
- Объясняет принципы работы алгоритмов для решения задач профессиональной деятельности.
- Осознанно выбирает алгоритмы, а также модули и библиотеки Python в зависимости от текущих целей, применяя их к сырым текстовым данным для решения профессиональных задач.
- Тестирует и сравнивает различные способы нормализации, токенизации, морфологического и синтаксического анализа текстовых данных.
- Оценивает скрипты с точки зрения эффективности, точности и адекватности работы алгоритма в зависимости от поставленной профессиональной задачи.
- Разрабатывает комплексные скрипты на Python, интегрирующие несколько этапов лингвистического анализа для решения задач в области обработки текстовых данных.
Содержание учебной дисциплины
- 1. Введение: задачи компьютерной лингвистики и языки программирования для их решения.
- 2. Нормализация текста и регулярные выражения
- 3. Токенизация и работа с N-граммами
- 4. Морфологический анализ (Часть 1)
- 5. Морфологический анализ (Часть 2)
- 6. Контрольная работа
- 7. Синтаксический анализ
- 8. Семантический анализ (Введение)
- 9. Интеграция и оценка качества
- 10. Другие задачи обработки текстовых данных
- 11. Контрольная работа
- 12. Защита проектов
Элементы контроля
- Домашние работыДомашние работы подразумевают написание скриптов (.py, .ipynb), а также парное ревью скриптов.
- Контрольные работыПромежуточные письменные работы любых видов (тестовые задания по пройденному материалу + написание программного кода на Python). В каждом модуле проводится 2 контрольных работы.
- ПроектИтоговый элементом контроля является представление и защита проекта. Допускаются индивидуальные и групповые проекты. Защита проекта проводится в течение 10 календарных дней до сессии. Все текущие оценки округляются до десятых долей в течение 3-4 модулей. Итоговая оценка за курс округляется до целого числа только в конце курса, после итогового проекта.
Промежуточная аттестация
- 2026/2027 4th module0.3 * Контрольные работы + 0.3 * Домашние работы + 0.4 * Проект
Список литературы
Рекомендуемая основная литература
- Основы Python. Научитесь мыслить как программист, Дауни, А., 2021
- Программирование на языке высокого уровня Python - Ружников В. А., Вержаковская М. А. - Поволжский государственный университет телекоммуникаций и информатики - - - 2019 - русский - https://e.lanbook.com/book/223337 - ЛАНЬ - 223337
Рекомендуемая дополнительная литература
- Введение в программирование на Python - Северенс Ч. - Национальный Открытый Университет "ИНТУИТ" - - - 2016 - русский - https://e.lanbook.com/book/100703 - ЛАНЬ - 100703
- Изучаем программирование на Python, Бэрри, П., 2017