Бакалавриат
2020/2021
Программирование для лингвистов
Статус:
Курс по выбору (Фундаментальная и прикладная лингвистика)
Направление:
45.03.03. Фундаментальная и прикладная лингвистика
Где читается:
Факультет гуманитарных наук (Нижний Новгород)
Когда читается:
3-й курс, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
4
Контактные часы:
40
Программа дисциплины
Аннотация
Основная часть курса посвящена углубленному изучению программирования на языке Python, алгоритмов и регулярных выражений, практических лингвистических задач. В результате освоения дисциплины студент должен: • Знать встроенные структуры данных языка Python(списки, словари, множества, кортежи и др.); • Уметь составлять и реализовывать алгоритмы на языке питон; • Уметь применять полученные знания для решения практических задач • Иметь навыки работы со средами разработки для языка Python (PyCharm, ipython, ipython notebook, PyScripter, Spyder)
Цель освоения дисциплины
- Цель курса — научить студентов применять компьютерные технологии (в первую очередь, язык программирования Python) для решения возникающих на практике лингвистических задач (автоматическая обработка и анализ текстовых данных, поиск информации и др.)
Планируемые результаты обучения
- Уметь составлять алгоритмы и оценивать сложность алгоритма
- Знать принципы работы компиляторов и интепретаторов
- Уметь использовать базовые алгоритмы анализа текстов
Содержание учебной дисциплины
- Тема 1. Введение в алгоритмыПонятие алгоритма. Формальное представление алгоритма. Машина Тьюринга. Оценка сложности алгоритма. Базовые алгоритмы
- Тема 2. Компиляторы, интерпретаторыЗнакомство со средой разработки. Способы ввода-вывода. Арифметические выражения. Переменные. Операции с целым и вещественным числом. Условные переходы. Циклы. Цикл for. Цикл while. Строки. Файловый ввод-вывод. Списки. Встроенные контейнеры (туплы, множества,словари). Встроенные функции. Объявление функций. Рекурсивный вызов
- Тема 3. Алгоритмы анализа текстаБазовые алгоритмы анализа текстов. Аннотация, Разметка, Корпус, Документ, Приложение. Annotation Diff. Метрики сравнения аннотаций. Recall, Precision. Error rate. F-Мера. Corpus Quality Assurance. Corpus Benchmark. Использование Java в правой части выражений JAPE. Разработка Java-приложения на основе технологии Gate Embedded. Разработка обрабатывающего ресурса CREOLE (a Collection of REusable Objects for Language Engi-neering)
Список литературы
Рекомендуемая основная литература
- Hetland, M. L. (2014). Python Algorithms : Mastering Basic Algorithms in the Python Language (Vol. Second edition). [New York, N.Y.]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1174465
Рекомендуемая дополнительная литература
- Kurdi, M. Z. (2017). Natural Language Processing and Computational Linguistics 2 : Semantics, Discourse and Applications. London, UK: Wiley-ISTE. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1642577