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

Основы программирования в Python

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

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

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

Аннотация

На сегодняшний день Python является стандартом индустрии для анализа данных. По окончании этого курса студенты получат в свое распоряжение набор аналитических инструментов, которые им пригодятся как в академии, так и при работе в частном или государственном секторе. Целью этого курса является развитие навыков программирования и создание крепкой практической базы для анализа и презентации данных. Также мы познакомимся с задачами и алгоритмами машинного обучения, что задаст вектор развития для тех студентов, которые захотят углубиться в предмет. С использованием онлайн-курса «Python как иностранный» на платформе Онлайн-образование в НИУ ВШЭ https://online.hse.ru.
Цель освоения дисциплины

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

  • Развитие и закрепление навыков программирования на языке Python.
  • Формирование и развитие навыков работы со специализированными библиотеками для обработки, визуализации и анализа данных (pandas, numpy, plotly, matplotlib, seaborn).
  • Развитие навыков работы с данными: обработка, визуализация, разведывательный анализ.
  • Освоение терминологии машинного обучения и знакомство с базовыми алгоритмами.
  • Развитие навыков постановки исследовательской задачи и тестирования гипотез с помощью количественных методов.
Планируемые результаты обучения

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

  • Уверенно пользуется языком Python для решения аналитических задач.
  • Загружает данные в pandas и работает с ними (фильтрация, агрегация, заполнение пропущенных значений).
  • Подсчитывает описательные статистики, оценивает распределения, интерпретирует корреляции.
  • Проводит разведывательный анализ данных.
  • Выбирает корректные графики для визуализации данных.
  • Выбирает правильный тип визуализации для решения конкретной задачи.
  • Настраивает внешний вид графиков в библиотеках Python для визуализации.
  • Проводит разведывательный анализ данных с помощью визуализаций.
  • Умеет проверять гипотезы при помощи t-теста и Z-теста. Умеет сделать вывод о принятии/опровержении нулевой гипотезы.
  • Умеет интерпретировать описательные статистики и особенности распределения переменных.
  • Определяет тип задачи машинного обучения, выбирает корректные модели для ее решения, осуществляет подбор параметров и выбирает лучшую модель.
  • Решает задачи машинного обучения от постановки исследовательского вопроса до интерпретации результатов.
  • Реализовывает простые алгоритмы машинного обучения.
Содержание учебной дисциплины

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

  • Основы программирования в Python
    Основные типы и структуры данных. Условные операторы и циклы. Решение алгоритмических задач.
  • Основы статистики
    Сбор данных. Выборка и генеральная совокупность. Репрезентативность выборки. Частотные таблицы и распределения. Непрерывные распределения. Функция плотности. Корреляция Пирсона. Тестирование гипотез. Статистическая значимость. p-value. Ошибки I и II рода. Доверительные интервалы, основанные на Z- и t-распределениях, для среднего и доли. Z-тест и t-тест для одной выборки и для двух независимых выборок с одинаковыми дисперсиями. Хи-квадрат критерий согласия Пирсона.
  • Введение в анализ данных на Python
    Обзор задач, для решения которых используется Python. Источники данных и их типы. Линейная алгербра и математическая статистика для анализа данных и машинного обучения. Статистические и математические операции в numpy. Pandas для работы с табличными данными. Разведывательный анализ данных.
  • Визуализация данных
    Цели визуализации данных: разведывательный анализ, выбор алгоритмов, презентация данных и результатов. Виды графиков, их корректное использование и интерпретация. Принципы хорошей визуализации, основные ошибки при визуализации данных. Основы визуализации в matplotlib. Оформление и кастомизация графиков.
  • Введение в машинное обучение
    Парадигма и задачи машинного обучения. Разбор кейсов. Основная терминология машинного обучения. Задачи регрессии (линейная регрессия, методы решающих деревьев и случайного леса). Задачи классификации (логистическая регрессия, метод ближайших соседей, перцептрон). Основные метрики качества модели. Кросс-валидация и подбор параметров по сетке.
Элементы контроля

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

  • неблокирующий Контрольная работа (Питон)
    Контрольная выдается на дом, до дедлайна нужно прорешать задания на платформе online.hse.ru.
  • неблокирующий Онлайн-курс
    Онлайн курс "Python как иностранный" на платформе Онлайн-образование в НИУ ВШЭ https://online.hse.ru/, который будет изучаться студентами в течение 3 модуля.
  • неблокирующий Экзамен (анализ данных)
    Экзамен проводится онлайн в письменной форме с использованием синхронного прокторинга.
  • неблокирующий Домашние задания (среднее всех)
    В течение 4 модуля для закрепления практических навыков на семинарах будут предлагаться небольшие домашние задания.
  • неблокирующий Проект
    Проект выполняется в командах из 2-3 человек. Цель – провести небольшое исследование анализа данных полного цикла по выбранной теме. Этапы проекта: сбор, предобработка данных; создание новых переменных и статистический анализ; визуализация данных, построение различных графиков; применение простых алгоритмов машинного обучения для предсказания целевой переменной.
  • неблокирующий Бонусные баллы
    У студентов будет возможность получить бонусные баллы за работу на семинарах и дополнительные практические задания вне класса.
  • неблокирующий Квизы по читингу
    Просмотр видео и прохождение квиза по читингу являются обязательными для каждой недели онлайн курса для зачета тестов и задач на оценку.
Промежуточная аттестация

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

  • Промежуточная аттестация (4 модуль)
    Итог = Минимум (0.15 * Онлайн курс + 0.001 * Квизы по читингу + 0.1 * Домашние задания (среднее всех) + 0.2 * Контрольная работа (Питон) + 0.25 * Проект + 0.3 * Экзамен (анализ данных) + 0.1 * Бонусные баллы, 10)
Список литературы

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

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

  • Lutz, M. (2011). Programming Python : Powerful Object-Oriented Programming (Vol. 4th ed). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=415412
  • Muller, A. C., & Guido, S. (2017). Introduction to machine learning with Python: a guide for data scientists. O’Reilly Media. (HSE access: http://ebookcentral.proquest.com/lib/hselibrary-ebooks/detail.action?docID=4698164)

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

  • Mirkin, B. Core concepts in data analysis: summarization, correlation and visualization. – Springer Science & Business Media, 2011. – 388 pp.
  • Miroslav Kubat. (2017). An Introduction to Machine Learning (Vol. 2nd ed. 2017). Springer.
  • Основы алгоритмизации и программирования на Python : учеб. пособие / С.Р. Гуриков. — М. : ФОРУМ : ИНФРА-М, 2020. — 343 с. — (Среднее профессиональное образование). - Режим доступа: http://znanium.com/catalog/product/1042452
  • Северенс Ч. - Введение в программирование на Python - Национальный Открытый Университет "ИНТУИТ" - 2016 - 231с. - ISBN: - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/100703