Бакалавриат
2021/2022





Программирование и лингвистические данные
Статус:
Курс обязательный (Фундаментальная и компьютерная лингвистика)
Направление:
45.03.03. Фундаментальная и прикладная лингвистика
Кто читает:
Школа лингвистики
Где читается:
Факультет гуманитарных наук
Когда читается:
3-й курс, 2 модуль
Формат изучения:
с онлайн-курсом
Онлайн-часы:
40
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Мороз Георгий Алексеевич
Язык:
русский
Кредиты:
3
Контактные часы:
2
Программа дисциплины
Аннотация
Курс знакомит студентов с основами работы в R и RSrudio, с основными типами данных, методами сбора, обработки и трансформации данных, формирует умение преобразовывать и визуализировать данные, тренирует навык самостоятельного анализа данных.
Цель освоения дисциплины
- В результате освоения дисциплины студент должен уметь: 1) публиковать свои данные на веб-сайте; 2) пользоваться редактором Notepad++ и программами сравнения текстов для ручной обработки текстовых данных; строить алгоритмы для решения практических задач; 3) использовать средства языка Python для реализации алгоритмов, в частности, специфических для компьютерной лингвистики; 4) пользоваться консолью unix, работать с файловой системой, ставить пакеты; 6) пользоваться англоязычной документацией языка Python. Дисциплина входит в базовую часть профессионального цикла (модуль «Программирование»).
- Овладение навыками программирования на языке Python
- знакомство с основами работы в R и RStudio
- Овладение навыками применения регулярных выражений при работе с текстом
- знакомство с основными типами данных (таблицы, тексты, изображение с текстом)
- Получение опыта применения языка Python для решения задач, возникающих при автоматической обработке текстов
- знакомство с основными методами сбора, обработки и трансформации данных
- знакомство с основными методами визуализации и представления данных
- знакомство с основными методами регрессионного анализа
Планируемые результаты обучения
- владеет методам анализа строк
- владеет методами визуализации данных
- владеет методами обработки данных
- владеет основами программирования на R
- знает лингвистические пакеты на R
- знает чем наука о данных отличается от машинного обучения и статистики.
- Понимает критерии солгасия
- применяет корреляционный и регрессионный анализы
- применяет метод логистической регресии
- применяет основные фриквентисткие тесты
- Знать основные конструкции языка Python
- знать основные типы лингвистических ресурсов
- Знать особенности изменяемых и неизменяемых типов данных
- Знать синтаксис и особенности работы регулярных выражений
- иметь представление об основных форматах представления текста, кодировке текста
- иметь представление, какие типы лингвистической информации и какие уровни описания языка отражает лингвистический ресурс
- Уметь выполнять основные операции с использованием регулярных выражений: поиск, замена, разделение
- уметь выполнять основные операции с текстовыми данными (сортировки, фильтрация, индексирование, выделение подстроки, сводные таблицы)
- Уметь запускать программы на Python в IDLE и командной строке
- Уметь искать и устанавливать модули с помощью pip
- Уметь писать функции и тестировать их работу
- уметь пользоваться инструментами разметки корпуса (ELAN, UDpipe, акцентуаторы)
- Уметь пользоваться модулем collections
- уметь пользоваться полнофункциональными текстовыми и табличными редакторами
- уметь пользоваться различными типами поисковых корпусных систем
- Уметь преобразовывать строки в различные типы данных
- Уметь применять словари и списки для работы с данными
- Уметь производить основные операции с файлами: чтение, запись, изменение
- Уметь производить основные операции с файловой системой: поиск файлов и директорий, получение содержимого директории, обход директорий, копирование и перемещение файлов и папок
- Уметь работать с модулем re
- Уметь разделять программу на модули и использовать чужие модули для своих нужд
- Уметь разделять программу на релевантные функции
- уметь размечать пользовательские корпусные данные на различных лингвистических и текстовом уровнях
- Уметь решать прикладные задачи с применением условных конструкций
- Уметь решать прикладные задачи с применением циклов
- уметь собирать и корректно интепретировать частотную информацию из корпуса
- владеет модулями скачивания из интернета и обработки текстовых данных
- знает и использует различные типы данных и различные методы
- знает и использует различные форматы данных
- научился создавать веб-приложения и выкладывать их
- овладел модулями взаимодействия с внешними серверами
- овладел модулями визуализации данных
- овладел модулями компьютерной обработки текстовых данных
- умеет выбирать подходящий для задачи формат графика, умеет правильно оформлять графические элементы
Содержание учебной дисциплины
- Начало работы с Python. Базовые арифметические операции. Переменные
- Введение в R и Rstudio
- Сбор и обработка текстовых данных с помощью Python
- Управляющие конструкции в Python
- Форматы и хранение лингвистических данных
- Трансформация данных
- Управляющие конструкции в Python (продолжение)
- Визуализация данных
- Форматы и хранение лингвистических данных (продолжение)
- Циклы и индексы в Python
- Структуры данных и стандартные методы Python
- Работа со строками и регулярными выражениями
- Структуры данных в Python
- Введение в создание веб-приложений
- Работа с текстами
- Работа с файлами
- Обработка естественного языка
- Работа со временем
- Работа с файлами (продолжение)
- Работа с геоданными
- Обработка естественного языка (продолжение)
- Функции в Python
- Основы статистического анализа в R
- Взаимодействие с внешними сервисами. API.
- Модули Python
- Визуализация данных
- Введение в quarto
- Регулярные выражения
- Работа с файловой системой
- Лингвистические ресурсы
- Основы анализа и обработки текста
- Основы анализа и обработки текста (продолжение)
- Методы и инструменты создания корпусов.
Элементы контроля
- Контрольные работыПересдается в течение недели после окончания пропуска по уважительной причине, но не позднее 10 дней до сессии, если преподавателем не указано иное.
- Домашние заданияПересдается в течение недели после окончания пропуска по уважительной причине, но не позднее 10 дней до сессии, если преподавателем не указано иное.
- Тесты
- ПроектПересдается в течение недели после окончания пропуска по уважительной причине, но не позднее 10 дней до сессии, если преподавателем не указано иное.
- ЭкзаменПо общим правилам пересдачи экзамена, пропущенного по уважительной причине.
- Экзамен по КИЛИПересдается в течение недели после окончания пропуска по уважительной причине, но не позднее 10 дней до сессии.
- проектЭкзамен проходит в письменной форме. Студент загружает свой проект в репозиторий на платформе github. Процедура пересдачи аналогична процедуре сдачи.
- домашние заданияоценка за домашние задания, которая считается так: О д/з= 0,0375 * (О д/з1 + О д/з2 + О д/з3 + О д/з4 + О д/з5 + О д/з6 + О д/з7 + О д/з10 + О д/з11 + О д/з12) + 0,075 * (О д/з8 + О д/з9 + О д/з13)
- квизыусреднённая оценка за мини-квизы, проводимые в начале занятий
- Промежуточные тесты
- Финальный тест
- Промежуточные тесты
- Финальный тест
Промежуточная аттестация
- 2019/2020 учебный год 1 модуль0.6 * Домашние задания + 0.3 * Экзамен по КИЛИ + 0.1 * Тесты
- 2019/2020 учебный год 4 модуль0.1 * Домашние задания + 0.2 * Контрольные работы + 0.3 * Проект + 0.2 * Экзамен + 0.2 * Тесты
- 2020/2021 учебный год 4 модуль0.3 * проект + 0.1 * квизы + 0.6 * домашние задания
- 2021/2022 учебный год 2 модуль0.4 * Финальный тест + 0.6 * Промежуточные тесты
Список литературы
Рекомендуемая основная литература
- Wickham, H., & Grolemund, G. (2016). R for Data Science : Import, Tidy, Transform, Visualize, and Model Data (Vol. First edition). Sebastopol, CA: Reilly - O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1440131
- Основы алгоритмизации и программирования на Python : учеб. пособие / С.Р. Гуриков. — М. : ФОРУМ : ИНФРА-М, 2020. — 343 с. — (Среднее профессиональное образование). - Режим доступа: http://znanium.com/catalog/product/1042452
- Федоров, Д. Ю. Программирование на языке высокого уровня Python : учебное пособие для среднего профессионального образования / Д. Ю. Федоров. — 2-е изд. — Москва : Издательство Юрайт, 2019. — 161 с. — (Профессиональное образование). — ISBN 978-5-534-11961-9. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/446505 (дата обращения: 28.08.2023).
Рекомендуемая дополнительная литература
- Mailund, T. (2017). Beginning Data Science in R : Data Analysis, Visualization, and Modelling for the Data Scientist. New York: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1484645
- Основы алгоритмизации и программирования на Python : учеб. пособие / С.Р. Гуриков. — М. : ФОРУМ : ИНФРА-М, 2017. — 343 с. — (Высшее образование: Бакалавриат). - Режим доступа: http://znanium.com/catalog/product/772265
- Регулярные выражения, Фридл, Дж., 2008