Чтобы гарантированно запускать примеры из семинаров с теми же
версиями библиотек, а также запускать задачи из домашнего задания необходимо создать
вирутальное окружение с python3.7
.
Пример настройки с использованием virtualenv
- Создайте виртуальное окружение
virtualenv -p python3.7 <path_to_dir_where_env_will_be_stored>
- Активируйте
source <path_to_the_dir/bin/activate>
(для windows:<path_to_the_dir\Scripts\activate>
), для выхода используйте командуdeactivate
- Установите необходимые пакеты
pip install -e dmia2021
Выполнив эту команду, вы получите такую же кофигурацию библиотек, которая используется на семинарах, лекциях и в домашних заданиях.
Большую часть кода мы будем писать и изучать в jupyter notebook
(нужные пакеты указаны в файле requirements.txt).
Нужно поднять сервер Jupyter Notebook.
- Выполните команду
jupyter notebook --port 3040 --port-retries=0 --ip='*' --no-browser
. Теперь вы можете зайти в браузере на страницу http://localhost:3040/tree и увидеть проводник. Корневой папкой будет та, находясь в которой, вы выполнили команду запуска. - Добавьте в
jupyter notebook
созданное ранее виртуальное окружение как новыйKernel
. Находясь в виртуальном окружении выполните командуpython -m IPython kernel install --user --name=<name_of_kernel>
.
Теперь вы можете переключиться на нужное ядро черезKernel
>Change kernel
прямо в открытом ноутбуке с кодом.
1. Лекция
- Flow проектов: какие есть этапы и зачем они нужны
- Роли в ds команде
1. Семинар
- Как организовывать код проектов
- Основы git
- virtualenv и пакеты в питоне
2. Лекция
- Тройственность метрик (оффлайн-онлайн-лосс) и как с ней жить
- Общепринятые метрики в разных областях и задачах
- Методы кастомизации моделей под метрики при обучении
2. Семинар
- Реализация кастомных лоссов в разных библиотеках (gb и nn)
- black box optimization
3. Лекция (под вопросом)
- Градиентный бустинг и бэггинг
- Линейные модели и сети
- Нюансы обучения и применения на практике
3. Семинар (под вопросом)
- Обзор библиотек в питоне
- Паттерны при обучении моделей
4. Лекция
- Основные паттерны программирования: фабрика, адаптер, синглтон и другие
- Архитектура сервиса для применения моделей: важные составляющие, взаимодействие, проблемы
- Оптимизация работы ds кода: numpy-изация, обёртки над плюсовым кодом, JIT компиляция
4. Семинар
- Прототипирование задач на питоне
- Ускорения python кода
5. Лекция
- Основы проверки статистических гипотез и АБ тестирование
5. Семинар
- Основы проверки статистических гипотез и АБ тестирование (практика)