Как использовать Make и Makefiles для оптимизации конвейера машинного обучения
Фон
Теперь ожидается, что специалисты по данным будут писать производственный код для развертывания своих алгоритмов машинного обучения. Поэтому нам необходимо знать о стандартах и методах разработки программного обеспечения, чтобы обеспечить надежное и эффективное развертывание наших моделей. Одним из таких инструментов, очень хорошо известных в сообществе разработчиков, является make
. Это мощная команда Linux, которая давно известна разработчикам, и в этой статье я хочу показать, как ее можно использовать для создания эффективных конвейеров машинного обучения.
Что такое сделать?
make
— это терминальная команда/исполняемый файл, точно так же, как ls
или cd
, который есть в большинстве UNIX-подобных операционных систем, таких как MacOS и Linux.
Использование make
состоит в том, чтобы упростить и разбить ваш рабочий процесс на логическую группу команд оболочки.
Он широко используется разработчиками, а также внедряется специалистами по обработке и анализу данных, поскольку упрощает конвейер машинного обучения и обеспечивает более надежное производственное развертывание.
Зачем делать науку о данных?
make
— это мощный инструмент, который специалисты по данным должны использовать по следующим причинам:
- Автоматизируйте настройку сред машинного обучения
- Более четкая сквозная документация по конвейеру
- Проще тестировать модели с разными параметрами
- Очевидная структура и исполнение вашего проекта
Что такое Makefile?
Makefile
- это в основном то, из чего считываются и выполняются команды make
. Он состоит из трех компонентов:
- Цели: это файлы, которые вы пытаетесь создать, или у вас есть
PHONY
цель, если вы просто выполняете команды. - Зависимости:исходные файлы, которые необходимо запустить перед выполнением этой цели.
- Команда: Как написано на банке, это список шагов для создания цели.
Основной пример
Давайте рассмотрим очень простой пример, чтобы конкретизировать эту теорию.