Хранилища признаков
Тема дорожной карты · MLOps
Хранилище признаков — это централизованная платформа для управления признаками, используемыми в машинном обучении. Оно решает три ключевые проблемы: дублирование признаков, которое происходит, когда различные команды независимо реализуют одинаковые признаки; training-serving skew, когда признаки, используемые при обучении, отличаются от тех, которые используются при inference; и поиск признаков, когда инженеры не могут быстро найти существующие признаки. Популярные решения в этой области включают Feast (открытый исходный код, ориентированный на Kubernetes), Tecton (управляемая облачная служба), Hopsworks (открытый исходный код с поддержкой потоковой передачи данных) и облачные хранилища признаков от Vertex AI и SageMaker. Выбор конкретного хранилища признаков зависит от требований к задержке, необходимости в потоковой передаче данных и ограничений инфраструктуры.
Как это работает
Хранилища признаков (Feast, Tecton, Hopsworks, SageMaker Feature Store) централизуют признаки, используемые моделями: offline (batch training) и online (low-latency serving) хранилища с последовательными определениями и трансформациями между ними. Они решают проблему training-serving skew, обеспечивая, что та же фича считается идентично при обучении и inference, а также обеспечивают свежесть фич (online фичи отстают от источника). Современные хранилища признаков также добавляют точность по времени (point-in-time correctness), мониторинг фич и отслеживание линеажа.
Когда применять
Хранилища признаков становятся необходимыми, когда количество производимых моделей превышает пять или когда есть несколько команд, которые переиспользуют фичи. В таких случаях Pandas и DBT могут покрыть все потребности, но при увеличении сложности проекта стоит переходить на использование хранилищ признаков. Это особенно важно, когда возникают проблемы с train-serve skew, когда требуется переиспользование фич между командами или когда необходимо обеспечить точность по времени для временных рядов. Для открытого исходного кода рекомендуется использовать Feast, а для управляемых решений, таких как Tecton и SageMaker Feature Store, подходят для автоматизированной операции.
Типичные ошибки
Типичные ошибки при использовании хранилищ признаков включают создание хранилища признаков до того, как будут созданы фичи, которые заслуживают шеринга (преждевременная платформа); расхождение между online и offline трансформациями (skew баги); использование хранилища признаков как обходного пути для SQL для обхода правил управления персональными данными (governance должен включать фичи); недостаточные инвестиции в мониторинг свежести фич (тихая staleness).