Мы можем определить хранилище функций как специализированный уровень управления данными, предназначенный для функций машинного обучения. Он действует как хранилище с двумя базами данных: одна база данных обеспечивает доступ с малой задержкой к функциям для онлайн-приложений, а другая база данных служит в качестве хранилища с ориентацией на столбцы для больших объемов функций, используемых специалистами по данным при создании наборов данных для обучения/тестирования и в автономном режиме. оценка модели.

Кроме того, хранилище функций служит централизованным репозиторием для хорошо документированных, курируемых функций, к которым можно получить доступ и использовать различные модели машинного обучения в организации. Он принимает данные из нескольких источников и выполняет определенные операции для преобразования и объединения данных, создавая функции, которые можно легко обнаружить и использовать в конвейерах обучения машинного обучения и службах логических выводов. Эти функции охватывают широкий спектр измеримых свойств, включая необработанные данные, статистические агрегаты и производные представления.

Хранилища данных и FeatureStore

Хранилища данных и хранилища функций являются центральными репозиториями для курируемых данных. Хранилища данных обычно используются бизнес-аналитиками, а хранилища функций — специалистами по данным. Хранилища функций предоставляют ряд преимуществ для специалистов по данным, в том числе:

  • Централизованный репозиторий функций, который может сэкономить время и силы при поиске и создании функций.
  • Каталоги метаданных и механизмы контроля доступа для организации и безопасного обмена данными.
  • Возможность масштабирования на обычном оборудовании и хранения больших объемов данных.
  • Хранилища функций можно использовать для повышения эффективности и точности моделей машинного обучения.
  • Происхождение функций можно отслеживать с помощью хранилищ функций, что полезно для отладки и понимания того, как работают модели.
  • Также можно использовать хранилища функций как способ обмена функциями между различными командами и проектами, что может улучшить совместную работу и производительность.

С точки зрения архитектуры ключевое различие между хранилищами данных и хранилищами признаков заключается в том, что хранилища признаков обычно состоят из двух баз данных: автономного хранилища признаков для обслуживания пакетов признаков и онлайн-хранилища признаков для обслуживания отдельных векторов признаков.

Понимание динамики онлайн- и офлайн-хранилища функций

Автономное хранилище функций. Автономное хранилище функций служит основой для хранения и управления большими объемами данных функций. Он выступает в качестве резервуара для данных о функциях, которые в основном используются в автономных пакетных процессах для таких задач, как создание наборов данных для обучения/тестирования и моделей оценки. Автономный магазин функций подходит для сценариев, в которых обслуживание больших пакетов функций имеет первостепенное значение.

Для эффективного хранения и извлечения обширных данных о функциях несколько баз данных оказались эффективным выбором. Apache Hive и BigQuery — яркие примеры баз данных, используемых для автономных хранилищ функций. Эти базы данных специально разработаны для обработки огромных объемов данных и предоставляют возможности для эффективного приема, хранения и извлечения данных.

В то время как офлайн-хранилище объектов отлично справляется с управлением крупномасштабными данными объектов для пакетных процессов, онлайн-хранилище объектов специализируется на обслуживании отдельных векторов объектов с чрезвычайно низкой задержкой. Эти векторы признаков необходимы для логического вывода и прогнозирования модели в реальном времени, где критична скорость отклика, обычно требующая времени отклика менее 10 миллисекунд.

Чтобы соответствовать строгим требованиям к задержке обслуживания онлайн-функций, различные базы данных приобрели популярность в контексте онлайн-хранилищ функций. MySQL Cluster, Redis и DynamoDB являются примерами баз данных, которые превосходно обеспечивают быстрый доступ к векторам функций с малой задержкой. Эти базы данных оптимизированы для быстрого извлечения данных, что делает их идеальным выбором для обслуживания отдельных функций в сценариях прогнозирования в реальном времени.

Синхронизация автономных и онлайн-магазинов функций. Обеспечение согласованности между автономными и онлайн-магазинами функций представляет собой проблему. Поскольку функции, используемые в автономном пакетном обучении, должны быть доступны для логического вывода в реальном времени, становится крайне важным поддерживать синхронизацию двух хранилищ функций. Изменения, сделанные в автономном хранилище функций, такие как новые функции или обновления, должны эффективно распространяться в онлайн-хранилище функций для обеспечения согласованности в обоих доменах.

Конвейеры функций играют важную роль в достижении этой синхронизации. Эти конвейеры упрощают беспрепятственный поток данных из существующих источников как в автономные, так и в онлайн-хранилища функций. Используя четко определенные конвейеры функций, организации могут создать надежный механизм для синхронизации и гармонизации хранилищ функций, гарантируя, что один и тот же набор функций доступен как для офлайн, так и для онлайн вариантов использования.

Магазин функций AWS SageMaker

Более свежим, с которым я столкнулся, был AWS Sagemaker FeatureStore.

Amazon SageMaker Feature Store — это полностью управляемый сервис, который упрощает хранение, совместное использование и управление функциями для моделей машинного обучения. Функции — это входные данные для моделей машинного обучения, и их можно использовать как для обучения, так и для логического вывода. SageMaker Feature Store предоставляет ряд преимуществ, в том числе:

  • Централизованное хранилище: SageMaker Feature Store предоставляет централизованный репозиторий для функций, которые могут помочь улучшить совместную работу и производительность.
  • Стандартизированные функции: SageMaker Feature Store может помочь стандартизировать функции, что может повысить точность моделей машинного обучения.
  • Защищенный доступ: SageMaker Feature Store обеспечивает безопасный доступ к функциям, которые могут помочь защитить конфиденциальные данные.
  • Масштабируемость: SageMaker Feature Store может масштабироваться для удовлетворения потребностей крупномасштабных приложений машинного обучения.

SageMaker Feature Store — это ценный инструмент для групп машинного обучения, которым необходимо хранить, совместно использовать и управлять функциями в масштабе.

Заключение

В заключение, хранилища функций стали важным уровнем управления данными для функций машинного обучения, предоставляя централизованный репозиторий, который облегчает совместную работу, повторное использование и более быстрое экспериментирование с моделями. Хотя хранилища данных могут хранить предварительно вычисленные функции, им не хватает расширенных функций, необходимых для конвейеров ML, таких как обслуживание онлайн-функций с малой задержкой и обнаружение дрейфа функций или дрейфа данных. Четко определенное хранилище функций сокращает время, затрачиваемое на задачи обработки данных, оптимизирует поиск, прием, очистку и определение характеристик данных.

Соединяя конвейеры функций, конвейеры обучения и конвейеры вывода, хранилище функций служит уровнем данных, который обеспечивает беспрепятственный поток и использование функций на протяжении всего жизненного цикла машинного обучения. Это повышает окупаемость инвестиций в разработку функций за счет снижения стоимости модели и содействия совместной работе и совместному использованию функций. Более того, это ускоряет вывод новых моделей на рынок, повышая производительность инженеров машинного обучения и позволяя им сосредоточиться на разработке моделей, а не на проблемах с задержками во время онлайн-обслуживания.

В целом, внедрение хранилищ функций позволяет организациям внедрять эффективные методы машинного обучения, повышать производительность, ускорять разработку моделей и, в конечном итоге, своевременно получать ценные результаты.