We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

  • 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 - 978-5-496-03023-6 - Рейтц К., Шлюссер Т. - 2017 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/355486 - 355486 - iBOOKS
  • Жуков Р.А. - Язык программирования 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. Извлекайте и анализируйте данные из всех уголков социальной паутины на 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). — Режим доступа: для авториз. пользователей.

Авторы

  • Цветкова Екатерина Андреевна
  • Москвина Анна Денисовна