Netflix имеет открытый исходный код Metaflow, который разработчики описывают как ориентированную на человека структуру для науки о данных. Фреймворк использовался внутри компании Netflix в течение последних двух лет для создания и управления сотнями проектов в области науки о данных.
Metaflow — это библиотека Python, которая предоставляет унифицированный API для стека инфраструктуры, который требуется для выполнения проектов по науке о данных, от прототипа до производства. Это позволяет специалистам по обработке данных структурировать свой рабочий процесс как направленный ациклический график шагов.
Netflix разработал Metaflow, чтобы повысить продуктивность специалистов по данным, работающих над широким спектром проектов, от классической статистики до современного глубокого обучения. Цель заключалась в том, чтобы сделать проблемы в прототипах моделей видимыми на более раннем этапе процесса. В феврале Netflix сообщил, что Metaflow сократила время развертывания модели с четырех месяцев до семи дней.
Шаги могут быть произвольным кодом Python с данными и моделями, хранящимися как обычные переменные экземпляра Python. Они работают, даже если код выполняется на распределенной вычислительной платформе, которую Metaflow поддерживает по умолчанию, благодаря встроенному хранилищу артефактов с адресацией к содержимому.
Команда Metaflow говорит, что использование кода важно для того, чтобы фреймворк стал полезным. Они говорят, что, хотя многие инфраструктуры машинного обучения полагаются на графический интерфейс, конфигурацию, DSL или автоматизацию, они, как правило, не масштабируются, когда проблемы становятся более сложными. Вместо этого Metaflow полагается на код. Они говорят:
«Мы полагаемся на код. Языки программирования общего назначения, возможно, являются наиболее эффективным инструментом при построении функциональных систем для сложных случаев использования. Основным недостатком кода является более крутая кривая обучения: для простейших случаев использования практически любой другой метод обеспечит более простое решение. Чтобы свести к минимуму эту стоимость, мы полагаемся на простые в изучении популярные языки, такие как Python или R. »
Metaflow по возможности использует существующую инфраструктуру. В частности, он тесно интегрирован с Amazon Web Services. Вы можете использовать Metaflow с различными библиотеками машинного обучения или науки о данных, такими как PyTorch, Tensorflow или SciKit Learn. Metaflow позволяет писать модели и бизнес-логику в виде идиоматического кода Python, не требующего особого изучения.
Больше информации можно найти на сайте Metaflow и в Github.