Практикум на ЭВМ (317)/2019 (осень)
Материал из MachineLearning.
(→Материалы занятий) |
|||
(12 промежуточных версий не показаны.) | |||
Строка 16: | Строка 16: | ||
1. В рамках семестра предполагается три больших практических задания и шесть домашних заданий. Все задания сдаются в систему anytask, инвайт к курсу можно получить у преподавателя. | 1. В рамках семестра предполагается три больших практических задания и шесть домашних заданий. Все задания сдаются в систему anytask, инвайт к курсу можно получить у преподавателя. | ||
- | 2. За каждое большое практическое задание можно получить до 50-ти баллов. Задание включает в себя написание программного кода, выполнение экспериментов и написание отчёта о проделанной работе. Срок выполнения каждого задания — | + | 2. За каждое большое практическое задание можно получить до 50-ти баллов. Задание включает в себя написание программного кода, выполнение экспериментов и написание отчёта о проделанной работе. Срок выполнения каждого задания — 2 недели. Задания, сданные после этого срока, принимаются со штрафом. За каждый день штраф — 1 балл. Практическое задание считается зачтённым, если по нему выполнены и засчитаны все три этапа работы. |
3. За каждое домашнее задание можно получить от 15 до 20 баллов (в зависимости от задания). Задание включает в себя написание программного кода. Срок выполнения каждого задания — 1 неделя. Задания, сданные после этого срока, не принимаются на проверку. | 3. За каждое домашнее задание можно получить от 15 до 20 баллов (в зависимости от задания). Задание включает в себя написание программного кода. Срок выполнения каждого задания — 1 неделя. Задания, сданные после этого срока, не принимаются на проверку. | ||
Строка 22: | Строка 22: | ||
4. Предусмотрены различные бонусные активности: бонусные задачи, за которые можно получить дополнительные баллы. | 4. Предусмотрены различные бонусные активности: бонусные задачи, за которые можно получить дополнительные баллы. | ||
- | 5. | + | 5. Критерии итоговой оценки: |
- | * отлично — | + | * отлично — 170 баллов, 3 практических задания зачтены |
- | * хорошо — | + | * хорошо — 125 баллов, 2 практических задания зачтены |
- | * удовлетворительно — | + | * удовлетворительно — 85 баллов, 1 практическое задание зачтено |
= Материалы занятий = | = Материалы занятий = | ||
Строка 57: | Строка 57: | ||
Библиотека numpy. Векторизация вычислений. | Библиотека numpy. Векторизация вычислений. | ||
| | | | ||
- | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2019/blob/master/02_numpy/intro_to_numpy.ipynb ноутбук (numpy)] | + | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2019/blob/master/02_numpy/intro_to_numpy_empty.ipynb ноутбук (numpy)] |
+ | |||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2019/blob/master/02_numpy/intro_to_numpy.ipynb ноутбук (numpy), заполненный] | ||
Важные статьи документации numpy: | Важные статьи документации numpy: | ||
Строка 65: | Строка 67: | ||
| | | | ||
- | Контест 2: Numpy ( | + | Контест 2: Numpy (в anytask) |
<!-- Конец занятия --> | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |17 сентября | ||
+ | |Занятие 3 | ||
+ | | | ||
+ | Организация кода в Python. | ||
+ | |||
+ | Функции, модули, классы. | ||
+ | | | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2019/blob/master/03_python/python_functions_modules_classes.pdf презентация] | ||
+ | |||
+ | | | ||
+ | Контест 3: Классы (в anytask) | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |24 сентября | ||
+ | |Занятие 4 | ||
+ | | | ||
+ | Метрические методы классификации. | ||
+ | |||
+ | Обсуждение первого практического задания. | ||
+ | |||
+ | Введение в обработку изображений. | ||
+ | |||
+ | Визуализация в Python. | ||
+ | | | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/04_knn_images/lecture.pdf конспект (о задании, 2018)] | ||
+ | |||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/04_knn_images/image_processing.pdf презентация (изображения, 2018)] | ||
+ | |||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/04_knn_images/visualization.ipynb визуализация (2018)] | ||
+ | | | ||
+ | |||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/tree/master/Tasks/task1 1 практическое задание] | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |01 октября | ||
+ | |Занятие 5 | ||
+ | | | ||
+ | Подготовка текстовых отчётов. Система TeX. | ||
+ | | | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/05_tex_reports/tex_reports.pdf презентация (2018)]<br> | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/05_tex_reports/lecture_source.tex пример текста в TeXе (2018)] | ||
+ | | | ||
+ | |||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |8 октября | ||
+ | |Занятие 6 | ||
+ | | | ||
+ | Обработка исключений. Мененджеры контекста. Тестирование. | ||
+ | |||
+ | Подготовка коротких выступлений. | ||
+ | |||
+ | | | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/06_testing/testing.pdf презентация (тестирование, 2018)] | ||
+ | |||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2018/blob/master/06_testing/presentation.pdf презентация (выступления, 2018)] | ||
+ | | | ||
+ | |||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |15 октября | ||
+ | |Занятие 7 | ||
+ | | | ||
+ | Итераторы и генераторы. | ||
+ | |||
+ | | | ||
+ | [https://github.com/mmp-practicum-team/mmp_practicum_fall_2019/blob/master/07_iterators/Prac_Presentation7.pdf презентация] | ||
+ | | | ||
+ | |||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |22 октября | ||
+ | |Занятие 8 | ||
+ | | Декораторы. | ||
+ | | | ||
+ | | | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |29 октября | ||
+ | |Занятие 9 | ||
+ | | Обсуждение второго практического задания (LogReg). | ||
+ | Введение в обработку текстов. | ||
+ | | | ||
+ | | | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |5 ноября | ||
+ | |Занятие 10 | ||
+ | | ML-инфраструктура (часть 1) | ||
+ | | | ||
+ | | | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |19 ноября | ||
+ | |Занятие 11 | ||
+ | | ML-инфраструктура (часть 2) | ||
+ | | | ||
+ | | | ||
+ | <!-- Конец занятия --> | ||
+ | |- <!-- Новое занятие --> | ||
+ | |26 ноября | ||
+ | |Занятие 12 | ||
+ | | Обсуждение третьего практического задания. | ||
+ | | | ||
+ | | | ||
+ | <!-- Конец занятия --> | ||
|} | |} | ||
Текущая версия
- Обязательный курс для студентов каф. ММП 3 курса, 5 семестр
- Зачёт с оценкой
- Преподаватели: Д.А. Кропотов, Артём Попов, Евгений Бобров, Максим Кодрян, Максим Находнов, Чернышёв Александр
- Занятия проходят в ауд. 506 по вторникам, начало в 16:20. Первое занятие 3 сентября.
Анонимные отзывы по курсу можно оставлять здесь: ссылка на гугл-форму
Репозиторий со всеми материалами: ссылка
Для доступа к системе сдачи заданий anytask, свяжитесь с одним из преподавателей.
Содержание |
Объявления
Пока нет.
Правила сдачи практикума
1. В рамках семестра предполагается три больших практических задания и шесть домашних заданий. Все задания сдаются в систему anytask, инвайт к курсу можно получить у преподавателя.
2. За каждое большое практическое задание можно получить до 50-ти баллов. Задание включает в себя написание программного кода, выполнение экспериментов и написание отчёта о проделанной работе. Срок выполнения каждого задания — 2 недели. Задания, сданные после этого срока, принимаются со штрафом. За каждый день штраф — 1 балл. Практическое задание считается зачтённым, если по нему выполнены и засчитаны все три этапа работы.
3. За каждое домашнее задание можно получить от 15 до 20 баллов (в зависимости от задания). Задание включает в себя написание программного кода. Срок выполнения каждого задания — 1 неделя. Задания, сданные после этого срока, не принимаются на проверку.
4. Предусмотрены различные бонусные активности: бонусные задачи, за которые можно получить дополнительные баллы.
5. Критерии итоговой оценки:
- отлично — 170 баллов, 3 практических задания зачтены
- хорошо — 125 баллов, 2 практических задания зачтены
- удовлетворительно — 85 баллов, 1 практическое задание зачтено
Материалы занятий
Дата | Номер | Тема | Материалы | Д/З |
---|---|---|---|---|
3 сентября | Занятие 1 |
Организационные вопросы. Введение в Python. |
Ознакомиться с PEP8: Контест 1: Python (в anytask) | |
10 сентября | Занятие 2 |
Библиотека numpy. Векторизация вычислений. |
Важные статьи документации numpy: |
Контест 2: Numpy (в anytask) |
17 сентября | Занятие 3 |
Организация кода в Python. Функции, модули, классы. |
Контест 3: Классы (в anytask) | |
24 сентября | Занятие 4 |
Метрические методы классификации. Обсуждение первого практического задания. Введение в обработку изображений. Визуализация в Python. | ||
01 октября | Занятие 5 |
Подготовка текстовых отчётов. Система TeX. | ||
8 октября | Занятие 6 |
Обработка исключений. Мененджеры контекста. Тестирование. Подготовка коротких выступлений. | ||
15 октября | Занятие 7 |
Итераторы и генераторы. | ||
22 октября | Занятие 8 | Декораторы. | ||
29 октября | Занятие 9 | Обсуждение второго практического задания (LogReg).
Введение в обработку текстов. | ||
5 ноября | Занятие 10 | ML-инфраструктура (часть 1) | ||
19 ноября | Занятие 11 | ML-инфраструктура (часть 2) | ||
26 ноября | Занятие 12 | Обсуждение третьего практического задания. |
Требования к отчёту по практическим заданиям
Отчёт должен быть самодостаточным документом в формате PDF, подготовленным в системе LATEX. Студенты, хорошо выполнившие отчёты по прошлым заданиям, получают возможность сдавать отчёты в формате HTML или PDF, подготовленные с помощью jupyter notebook.
Отчёт должен давать проверяющему ответы на следующие вопросы:
- К какому курсу относится задание?
- Какое задание выполнено?
- Кем выполнено задание?
- В чём заключалось задание?
- Что было сделано? Что не было сделано?
- Даны ли правильные ответы на все теоретические вопросы задания?
- Проведены ли все необходимые эксперименты? Получены ли осмысленные ВЫВОДЫ?
- Выполнена ли творческая часть задания?
- Пользовался ли студент чьей-либо помощью? Если да, то в каком объёме?
- Какой литературой пользовался студент?
Некоторые элементы хорошего отчёта:
- Объём отчёта: 5--20 страниц;
- Текст отчёта не повторяет полной формулировки задания;
- Структура отчёта соответствует пунктам задания;
- Используются векторные шрифты;
- Графики оформлены надлежащим образом;
- Шкала для графиков выбрана правильно;
- На разных графиках результаты для одинаковых методов отображаются одним и тем же цветом;
- Между расположением графиков и местами их упоминания в тексте относительно небольшое расстояние (на той же или на соседней странице);
- На страницах не должно быть много пустого места;
- В большинстве случаев графики/таблицы/псевдокоды алгоритмов не должны занимать большей части одной страницы отчёта;
- Все числа в тексте/таблицах указаны с необходимым числом значащих цифр;
- В большинстве случае в отчёте не должно быть никакого кода;
- Для всех экспериментов описан выбранный дизайн экспериментов, а также сделаны выводы из полученных результатов;
Требования к программному коду
- Код должен в целом соответствовать PEP8 (eng или rus )
- В частности, код должен проходить автоматическую проверку стиля ссылка. Скрипт запускается из командной строки так: python3 mmp_pep8.py <ваш скрипт>. Код, вызывающий предупреждения, может дополнительно штрафоваться.
- Код должен быть понятным и единообразным. Переменные, функции и другие элементы кода должны иметь осмысленные, значимые имена, отвечающие их назначению.
- Код, который не соответствует прототипам, выданным в задании, автоматически оценивается в 0 баллов
- Код, который не удовлетворяет требованиям задания (например, запрету на использование конкретных библиотек), автоматически оценивается в 0 баллов
- Код, содержащий плагиат, автоматически оценивается в 0 баллов
Страницы прошлых лет
2018-2019 (осень) , 2018-2019 (весна)