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

Программирование для лингвистов

Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Направление: 45.03.03. Фундаментальная и прикладная лингвистика
Когда читается: 2-й курс, 1, 2 модуль
Формат изучения: без онлайн-курса
Язык: русский
Кредиты: 4
Контактные часы: 60

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

Аннотация

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

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

  • Получение навыков написания программ с использованием объектно-ориентированного подхода
  • Получение навыков составления и реализации программ на языке Python
  • Приобретение опыта работы со средами разработки для языка Python (PyCharm, ipython)
  • Использование языка Python для реализации задач машинного обучения в лингвистике
Планируемые результаты обучения

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

  • Умеет строить программный прототип в рамках объектно-ориентированной парадигмы
  • Умеет разрабатывать интерфейс программного прототипа в pygame
  • Умеет осуществлять следующие операции с xml-файлами: создание, удаление, изменение и поиск элемента. Сохранение измененных данных
  • Может формализовать и программно реализовать алгоритм ближайшего соседа
  • Может формализовать и программно реализовать алгоритм Байеса
  • Может формализовать и программно реализовать алгоритм q learning
Содержание учебной дисциплины

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

  • Тема 1. Введение в объектно-ориентированное программирование (ООП).
    Принципы и понятия объектно-ориентированного программирования. Создание классов, наследование, доступ к параметрам класса, написание функционала класса.Понятие модели данных. Структуризация данных. Операции над данными. Ограничения целостности. Реляционная модель данных (РМД). Отношение, схема отношения, свойства отношения.
  • Тема 2. Изучение pygame
    Изучение возможностей библиотеки pygame для создания GUI приложения. Создание окна, обработка нажатий клавиш, отрисовка изменений.
  • Тема 3. Алгоритмы работы с xml
    Изучение возможностей библиотеки xml.etree.ElementTree. Обработка xml файла, создание, удаление, изменение и поиск элемента. Сохранение измененных данных.
  • Тема 4. Основы алгоритмов машинного обучения
    Принципы и понятия машинного обучения. Постановки и примеры задач. Обучение с учителем и без учителя. Базовые алгоритмы машинного обучения. Разбор таких алгоритмов, как алгоритм ближайшего соседа, алгоритм Байеса, метод машины опорных векторов и q learning.
Элементы контроля

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

  • неблокирующий Аудиторная работа
  • неблокирующий Домашнее задание
  • неблокирующий Экзамен
  • неблокирующий Аудиторная работа
  • неблокирующий Домашнее задание
  • неблокирующий Экзамен
Промежуточная аттестация

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

  • Промежуточная аттестация (2 модуль)
    0.35 * Аудиторная работа + 0.15 * Домашнее задание + 0.5 * Экзамен
Список литературы

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

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

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

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

  • Sarkar, D., Bali, R., & Sharma, T. (2018). Practical Machine Learning with Python : A Problem-Solver’s Guide to Building Real-World Intelligent Systems. [United States]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1667293