Size: a a a

Объявления конференции HighLoad++

2019 November 08
Объявления конференции HighLoad++
Основное отличие ML: гиперпараметры развиваются быстрее кода, эта информация - очень важна. Именно ею выделитесь с коллегами. И Excel - один из самых неплохих вариантов, бывают и хуже.
источник
Объявления конференции HighLoad++
Второе отличие - нужно отслеживать метрики, нужно хранить метрики вместе с параметрами, их тоже надо пересылать и хранить.
источник
Объявления конференции HighLoad++
Аналогично нужно хранить сами модели. Очень много моделей, чаще всего в имени хранится информация, например “model_v7_i1_zero_15”
источник
Объявления конференции HighLoad++
Чуть лучше обстоит дело с датасетами, они реже меняются. Однако, они тоже меняются, и их тоже надо версионировать. Опять файлы, директории с разными названиями,
источник
Объявления конференции HighLoad++
Код - тоже есть, не подумайте, и он тоже меняется. Но здесь все проще, git и стандартные практики.
источник
Объявления конференции HighLoad++
Есть несколько решений.
источник
Объявления конференции HighLoad++
1. MLFlow. Есть поддержка работы с гиперпараметрами, есть поддержка метрик, моделей. Автоматическая генерация таблиц с результатами. Это избавляет от большого количества ошибок, проблем с лишней тратой времени на одну и ту же работу.
источник
Объявления конференции HighLoad++
источник
Объявления конференции HighLoad++
Это покрывает часть проблем.
источник
Объявления конференции HighLoad++
2. Git-LFS помогает решить проблему с данными.
источник
Объявления конференции HighLoad++
Это расширение над git для работы с большими файлами. Можно сохранять большие картинки, датасеты. Работа как с обычным git.
Проблемы возникают на проектах, где общий размер > 2GB
источник
Объявления конференции HighLoad++
Т.е. GitLFS покрывает часть проблем, но не все.
источник
Объявления конференции HighLoad++
В крупных компаниях используются AI-платформы, которые покрывают все проблемы, но эти решения недоступны для маленьких компаний. Очень большую часть работы приходится делать руками, хотя нормальные решения позволяют автоматизировать шаги:
- выделить машины в облаке
- скопировать данные
- запустить
- скопировать результат
- внести в хранилище.

Но хочется, чтобы AI платформа все эти проблемы решала сама.
Именно это и была мотивация за созданием проекта DVC.
источник
Объявления конференции HighLoad++
источник
Объявления конференции HighLoad++
ВОзможности DVC вкратце
источник
Объявления конференции HighLoad++
cli позволяет из терминала работать с датасетом:
$ dvc add data.xml
$ dvc push
источник
Объявления конференции HighLoad++
data.xml.dvc - это метаинформация о данных, которые могут быть в S3, или в других cloud-хранилищах
источник
Объявления конференции HighLoad++
$ dvc add images/
- добавление всех картинок
источник
Объявления конференции HighLoad++
$ dvc get https://github.com/dmpetrov/my-dvc-repo cnn_model.p

Так можно из репозитория получить только модель
источник
Объявления конференции HighLoad++
источник