• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Программирование и лингвистические данные

2019/2020
Учебный год
RUS
Обучение ведется на русском языке
3
Кредиты
Статус:
Курс обязательный
Когда читается:
2-й курс, 1, 2, 4 модуль

Преподаватели


Глазунов Евгений Владимирович


Клезович Анна Геннадьевна

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

Аннотация

Язык программирования Python является одним из самых простых в освоении и популярных языков программирования. Данный язык является мощным инструментом анализа данных и может повысить эффективность практически любой деятельности в науке и индустрии. С помощью языка Python можно автоматизировать рутинные операции и обрабатывать объемы данных, на несколько порядков превышающие объемы, доступные для обработки вручную или с помощью электронных таблиц. С использованием онлайн-курса "Python для извлечения и обработки данных" [URL: https://courses.openedu.ru/courses/course-v1:hse+PYTHON_HSE+special_2020/]. Консультации преподавателей будут проходить в Zoom. Консультации будут проводиться за несколько недель до экзамена. Время и ссылка будут опубликованы на вики-странице курса - https://tinyurl.com/uq3sjz2
Цель освоения дисциплины

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

  • В результате освоения дисциплины студент должен уметь: a. публиковать свои данные на веб-сайте; b. пользоваться редактором Notepad++ и программами сравнения текстов для ручной обработки текстовых данных; c. строить алгоритмы для решения практических задач; d. использовать средства языка Python для реализации алгоритмов; e. пользоваться консолью unix, работать с файловой системой, ставить пакеты; f. подключаться к серверу по ssh; g. пользоваться англоязычной документацией языка Python; Настоящая дисциплина входит в базовую часть профессионального цикла (модуль «Программирование»). При изучении дисциплины используются знания и навыки, полученные в результате освоения дисциплины «Компьютерные инструменты лингвистического исследования» (1 курс).
Планируемые результаты обучения

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

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

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

  • Сбор и обработка текстовых данных с помощью Python
    Модуль urllib. Язык разметки HTML. Язык разметки XML. Модули html и lxml. Краулеры и создание веб-корпусов. Bootstrap.
  • Форматы и хранение лингвистических данных
    Введение в SQL. Работа с базами данных в Python. Формат JSON.
  • Форматы и хранение лингвистических данных (продолжение)
    Введение в SQL. Работа с базами данных в Python. Формат JSON.
  • Структуры данных и стандартные методы Python
    Структуры данных: кортежи (tuples), множества (sets), словари (dictionaries). Генераторы списков и словарей. Обработка исключений.
  • Введение в создание веб-приложений
    Создание HTML-форм. Запросы GET и POST. Основы Flask. Основы unix: работа с консолью, установка пакетов, логин в сервер по ssh. Pythonanywhere.
  • Обработка естественного языка
    Основы компьютерной обработки текстовых данных. Частотные списки, стоп-слова, закон Ципфа. N-граммы. Корпуса текстов. Лемматизация. Частеречная разметка. Морфологический анализатор Mystem. Библиотеки pymystem3 и pymorphy2. Дистрибутивная семантика и word2vec.
  • Обработка естественного языка (продожение)
    Основы компьютерной обработки текстовых данных. Частотные списки, стоп-слова, закон Ципфа. N-граммы. Корпуса текстов. Лемматизация. Частеречная разметка. Морфологический анализатор Mystem. Библиотеки pymystem3 и pymorphy2. Дистрибутивная семантика и word2vec.
  • Взаимодействие с внешними сервисами
    VK API. Telegram API. GitHub API.
  • Визуализация данных
    Библиотеки matplotlib и seaborn.
Элементы контроля

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

  • неблокирующий проект
    Экзамен проходит в письменной форме. Студент загружает свой проект в репозиторий на платформе github. Процедура пересдачи аналогична процедуре сдачи.
  • неблокирующий домашнее задание 1
  • неблокирующий домашнее задание 2
  • неблокирующий домашнее задание 3
  • неблокирующий домашнее задание 4
  • неблокирующий домашнее задание 5
  • неблокирующий домашнее задание 6
Промежуточная аттестация

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

  • Промежуточная аттестация (4 модуль)
    0.04 * домашнее задание 1 + 0.08 * домашнее задание 2 + 0.08 * домашнее задание 3 + 0.2 * домашнее задание 4 + 0.2 * домашнее задание 5 + 0.2 * домашнее задание 6 + 0.2 * проект
Список литературы

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

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

  • Основы алгоритмизации и программирования на Python : учеб. пособие / С.Р. Гуриков. — М. : ФОРУМ : ИНФРА-М, 2017. — 343 с. — (Высшее образование: Бакалавриат). - Режим доступа: http://znanium.com/catalog/product/772265

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

  • Регулярные выражения, Фридл, Дж., 2008