Прежде чем мы сможем запустить DeepLabCut, нужно подготовить для него правильную среду. Это самый технический этап во всём модуле, но мы пройдём его медленно и с пояснениями. В конце у вас будет работающее окружение с установленным DLC.
DeepLabCut — довольно требовательный инструмент. Ему нужны конкретные версии Python и десятка разных библиотек. Если вы просто установите DLC в систему, он может:
Для решения этой задачи придуманы виртуальные окружения — изолированные «песочницы», где у каждого проекта свой набор пакетов со своими версиями.
Во вводном модуле курса мы уже познакомились с venv, а сейчас научимся использовать conda.
Вот краткое сравнение трёх популярных инструментов:
| Инструмент | Что это | Плюсы | Минусы |
|---|---|---|---|
| venv | Встроенный в Python модуль для виртуальных окружений | Не надо ничего ставить дополнительно кроме Python, лёгкий | Работает только с pip, неудобен для пакетов вне системы Python |
| Anaconda | Готовая платформа с Python и 1500+ предустановленных пакетов | Всё включено, удобно для новичков, есть графический интерфейс | Занимает >3 ГБ, много лишних пакетов, которые вы никогда не будете использовать в своей работе |
| Miniconda | Минимальная версия Anaconda: только менеджер пакетов conda и Python | Занимает <200 МБ, вы устанавливаете только то, что реально нужно, работает и с conda, и с pip | Требует установки вручную, нужно разбираться с командами (спойлер: для начала хватит трёх) |
Для DLC мы будем использовать Miniconda. Она даёт всю мощь conda без гигантского «хвоста» из тысяч пакетов, которые вам скорее всего не понадобятся.
pip — это менеджер пакетов для Python. Если conda и venv занимаются окружениями и изоляцией, то задача pip — скачивать и устанавливать сами пакеты (библиотеки) из официального репозитория PyPI (Python Package Index).
Проще говоря:
venv создаёт «песочницу» (чистую комнату)pip приносит в неё игрушки (библиотеки)conda умеет делать и то, и другое + может ставить пакеты, не являющиеся Python-библиотеками (например, CUDA или FFmpeg)В нашем уроке мы используем conda для создания окружения, а pip — для установки самого DeepLabCut. Так рекомендовано в официальной документации, и это нормальная практика: никто не мешает использовать оба инструмента вместе.