• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Programming Basics

2023/2024
Academic Year
RUS
Instruction in Russian
6
ECTS credits
Course type:
Compulsory course
When:
1 year, 1, 2 module

Instructor


Фирсанова Виктория Игоревна

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

Аннотация

Курс направлен на освоение языка программирования Python. Целью курса является изучение и отработка основных навыков использования языка программирования Python для решения задач анализа данных и обработки естественного языка. Курс подходит для студентов, которые ранее не имели опыта программирования. Для студентов, которые ранее осваивали программирование на языке Python, также предусмотрены дополнительные задания. В программу курса входит изучение теоретической базы программирования (основные операции вычисления, структуры и типы данных, алгоритмы). Основное внимание уделяется практике программирования: решение задач, объектно-ориентированное программирование, анализ данных. В результате освоения курса студент научится использовать язык программирования Python для решения исследовательских задач в области компьютерной лингвистики, станет уверенным пользователям таких библиотек, как Numpy, Pandas, Matplotlib. Студент, который успешно освоит курс, будет подготовлен к освоению анализа данных и машинного обучения.
Цель освоения дисциплины

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

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

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

  • студент имеет представление о свойствах и видах алгоритмов
  • студент имеет представление о понятии «вычислительная сложность»
  • студент владеет основными операциями на языке программирования Python
  • студент имеет представление о типах и структурах данных, владеет основными операциями с ними
  • студент понимает принципы итерации и рекурсии в программировании и способен написать соответствующие функции
  • студент знает основные программные ошибки и умеет их обрабатывать
  • студент владеет синтаксисом, логикой и применением функций на языке Python
  • студент владеет концепциями и принципами объектно-ориентированного программирования и умеет применять его на практике
  • студент знаком с основными инструментами библиотек для анализа данных Pandas, Numpy, Scipy, Matplotlib, Seaborn, Scikit Learn
  • студент знаком с основными инструментами библиотек для обработки естественного языка Gensim, Spacy, NLTK, Pymorphy2, Pymystem
  • студент способен самостоятельно сформулировать исследовательскую задачу в области компьютерной лингвистики, описать алгоритм ее решения и решить ее средствами языка Python
Содержание учебной дисциплины

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

  • Тема 1. Теория программирования
  • Тема 2. Основы программирования на Python
  • Тема 3. Структуры и типы данных
  • Тема 4. Функции
  • Тема 5. Ошибки и исключения
  • Тема 6. Объектно-ориентированное программирование
  • Тема 7. Библиотеки для анализа данных
  • Тема 8. Введение в обработку естественного языка
Элементы контроля

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

  • неблокирующий Контрольная работа
    Выполняется письменно в аудитории без вариантов. Задания для контрольной работы разработаны на основе пройденного материала о теории программирования. Время выполнения – 60 минут.
  • неблокирующий Домашние задания
    Письменная работа, которая предполагает решение задачи методами программирования на языке Python. Задания выполняются студентом вне аудитории. Задания направляются преподавателю по электронной почте.
  • неблокирующий Проект
    Проект представляет подготовку решения исследовательской задачи и устное сообщение с отчетом по выполненной работе. Устное сообщение не должно занимать более 7-10 минут и должно быть основано на собственных наблюдениях студента и выводах, сделанных в процессе решения исследовательской задачи. По своему усмотрению студент может сопровождать устное сообщение слайдами PowerPoint или раздаточным материалом. Презентация, текст которой полностью заимствован из печатного или Интернет-источника и никак критически не переработан студентом, оценивается в 0 баллов.
  • неблокирующий Экзамен
    Студенту предлагается выбрать задачу для решения методами программирования на языке Python. Время на подготовку – 60 минут.
Промежуточная аттестация

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

  • 2023/2024 учебный год 2 модуль
    0.3 * Домашние задания + 0.1 * Контрольная работа + 0.4 * Проект + 0.2 * Экзамен
Список литературы

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

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

  • Downey, A. (2015). Think Python : How to Think Like a Computer Scientist (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1105725
  • Жуков Р.А. - Язык программирования Python. Практикум - НИЦ ИНФРА-М - 2023 - ISBN: 978-5-16-015638-5 - Текст электронный // ЭБС ZNANIUM - URL: https://znanium.com/catalog/document?id=420766
  • Маккинни, У. Python и анализ данных / У. Маккинни , перевод с английского А. А. Слинкина. — 2-ое изд., испр. и доп. — Москва : ДМК Пресс, 2020. — 540 с. — ISBN 978-5-97060-590-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/131721 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Рейтц К., Шлюссер Т. - Автостопом по Python - 978-5-496-03023-6 - Санкт-Петербург: Питер - 2017 - 355486 - https://ibooks.ru/bookshelf/355486/reading - iBOOKS

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

  • Бонцанини, М. Анализ социальных медиа на Python. Извлекайте и анализируйте данные из всех уголков социальной паутины на Python / М. Бонцанини , перевод с английского А. В. Логунова. — Москва : ДМК Пресс, 2018. — 288 с. — ISBN 978-5-97060-574-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/108129 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Груздев, А. В. Изучаем Pandas / А. В. Груздев, М. Хейдт , перевод с английского А. В. Груздева. — 2-ое изд., испр. и доп. — Москва : ДМК Пресс, 2019. — 700 с. — ISBN 978-5-97060-670-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/131693 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.