Практикум на ЭВМ (317)/2017-2018

Материал из MachineLearning.

Перейти к: навигация, поиск
  • Обязательный курс для студентов каф. ММП 3 курса, 5-6 семестр
  • Зачёт с оценкой
  • Преподаватели: Д.А. Кропотов, Артём Попов и другие
  • Занятия проходят в ауд. 524 по вторникам, начало в 16:20


Анонимные отзывы по курсу можно оставлять здесь: ссылка на гугл-форму


Репозиторий со всеми материалами: ссылка на репозиторий

Правила сдачи практикума в осеннем семестре 2017/2018

1. В рамках семестра предполагается три больших практических задания и четыре домашних задания. Все задания сдаются в систему anytask, инвайт к курсу можно получить у преподавателя.

2. За каждое большое практическое задание можно получить до 50-ти баллов. Задание включает в себя написание программного кода, выполнение экспериментов и написание отчёта о проделанной работе. Срок выполнения каждого задания — 2 недели. За каждый день просрочки назначается штраф 1 балл. Задание, сданное через две недели после срока сдачи, оценивается в 0 баллов.

3. За каждое домашнее задание можно получить до 20-ти баллов. Задание включает в себя написание программного кода. Срок выполнения каждого задания — 1 неделя. Задания, сданные после срока сдачи, оцениваются в 0 баллов.

4. Также в рамках семестра каждый студент делает небольшое выступление по теме курса. За выступление можно получить до 10-ти баллов.

5. Критерии итоговой оценки:

  • отлично — 190 баллов, все практические и домашние задания зачтены
  • хорошо — 145 баллов, все практические задания зачтены
  • удовлетворительно — 95 баллов, все практические задания зачтены

6. Критерий <<зачтённости>> задания объявляется вместе с заданием.

Материалы занятий (осень)

Дата Номер Тема Материалы Д/З
5 сентября Занятие 1

Организационные вопросы. Введение в Python.

jupyter-notebook

слайды

Ознакомиться c PEP8

домашнее задание 1

12 сентября Занятие 2

Структуры данных (продолжение). Библиотека Numpy.

jupyter-notebook(python)

jupyter-notebook(numpy)

домашнее задание 2

19 сентября Занятие 3

Функции, модули, классы. ООП в Python.

слайды

домашнее задание 3

26 сентября Занятие 4

Разбор первого домашнего задания.

Тестирование. Основы визуализации.

слайды(тестирование)

jupyter-notebook(matplotlib)

3 октября Занятие 5

Обсуждение первого практического задания.

Основы обработки изображений.

Разбор второго домашнего задания.

слайды(изображения)

практическое задание 1

страничка соревнования

10 октября Занятие 6

Подготовка текстовых отчётов. Система TeX.

слайды
Книга по системе LaTeX
LaTeX в примерах

17 октября Занятие 7

Итераторы. Генераторы.

слайды

24 октября Занятие 8

Декораторы.

слайды

ноутбук с примерами

лекция CSC

статья самоучителя

домашнее задание 4

страница соревнования

31 октября Занятие 9

Разбор отчётов по практическому заданию.

Обработка текстов.

слайды (отчёты)

слайды (тексты)

7 ноября Занятие 10

Подготовка коротких выступлений.

Пакет beamer для презентаций. Продвинутый TeX.

слайды (выступление)

слайды (тех)

исходники слайдов

Готовиться к выступлению

практическое задание 2

14 ноября Занятие 11

Выступления студентов.

Готовиться к выступлению

21 ноября Занятие 12

Выступления студентов.

28 ноября Занятие 13

Обсуждение третьего практического задания.

Задачи условной оптимизации.

Метод субградиентного спуска. Метод PEGASOS.

Готовиться к выступлению

практическое задание 3

прототипы

5 декабря Занятие 14

Выступления студентов.

Выступления студентов на семинаре

Выступление должно сопровождаться презентацией, подготовленной в LaTeX с помощью пакета beamer. При согласовании с преподавателем разрешается делать презентацию в Jupyter notebook или просто использовать Jupyter notebook вместо презентации. Приблизительный регламент выступления — 10 минут. После выступления необходимо залить свою презентацию в репозиторий курса.

Каждый студент должен выбрать одну тему из списка ниже либо предложить свою тему.

№ п/п Тема ФИО студента Материалы
1 Система контроля версий Git Солоткий Михаил слайды
2 Основные отличия Python2 и Python3 Шестакова Анна слайды
3 Средства консервации объектов в Python (json, pickle и другие) Всеволод Полетаев слайды
4 Библиотека multiprocessing для распараллеливания и ускорения вычислений в Python Цыпин Артем слайды
5 Библиотека для автоматического дифференцирования и вычислений на GPU TensorFlow Руднев Виктор слайды
6 Библиотека для автоматического дифференцирования и вычислений на GPU PyTorch Яворская Мария слайды
7 Магические команды Jupyter Notebook (отладка, профилирование) Филимонов Владислав слайды
8 Полезные расширения Jupyter Notebook (Jupyter notebook extensions) Шамшиев Мамат слайды
9 Разметка markdown и создание текстовых отчётов в формате pdf с помощью Jupyter Notebook Шаталов Николай слайды
10 Создание презентаций с помощью Jupyter Notebook Пономарева Любовь слайды
11 Проксимальный градиентный метод для обучения моделей с L1-регуляризацией Фоминская Галина слайды
12 Разложение Холецкого и его применения Драгунов Никита слайды
13 Стандартные матричные разложения: LDL, LU и QR. Примеры использования. Скачков Николай слайды
14 Метод NCA для обучения метрики Сомов Иван слайды
15 Одноклассовый SVM и его применения Медведев Алексей слайды
16 Система вёрстки XeTeX Медведев Дмитрий слайды
17 Библиотека для визуализации в Python (выбрать одну, не matplotlib) Сагайдак Олег слайды
18 Интерпретатор языка Python PyPy Дженаков Дмитрий слайды

Требования к отчёту по большим практическим заданиям

Отчёт должен быть самодостаточным документом в формате PDF, подготовленным в системе LATEX.

Отчёт должен давать проверяющему ответы на следующие вопросы:

  • К какому курсу относится задание?
  • Какое задание выполнено?
  • Кем выполнено задание?
  • В чём заключалось задание?
  • Что было сделано? Что не было сделано?
  • Даны ли правильные ответы на все теоретические вопросы задания?
  • Проведены ли все необходимые эксперименты? Получены ли осмысленные ВЫВОДЫ?
  • Выполнена ли творческая часть задания?
  • Пользовался ли студент чьей-либо помощью? Если да, то в каком объёме?
  • Какой литературой пользовался студент?

Требования к программному коду

  • Код должен в целом соответствовать PEP8 (eng или rus )
  • В частности, код должен проходить автоматическую проверку стиля ссылка. Скрипт запускается из командной строки так: python3 mmp_pep8.py <ваш скрипт>. Код, вызывающий предупреждения, автоматически оценивается в 0 баллов.
  • Код должен быть понятным и единообразным. Переменные, функции и другие элементы кода должны иметь осмысленные, значимые имена, отвечающие их назначению
  • Код, который не соответствует прототипам, выданным в задании, автоматически оценивается в 0 баллов
  • Код, который не удовлетворяет требованиям задания (например, запрету на использование конкретных библиотек), автоматически оценивается в 0 баллов
  • Код, содержащий плагиат, автоматически оценивается в 0 баллов

Страницы прошлых лет

2016-2017

2015-2016

2014-2015

2013-2014

2012-2013

2011-2012

Личные инструменты