← Назад к вопросам

Что такое Feature Store?

1.0 Junior🔥 121 комментариев
#Хранилища данных

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Что такое Feature Store?

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

Основные компоненты Feature Store

Online Store — быстрое хранилище (Redis, DynamoDB) для получения признаков в режиме реального времени при выполнении предсказаний. Характеризуется низкой латентностью (обычно <100ms).

Offline Store — хранилище признаков для исторических данных (Data Warehouse, S3). Используется для обучения моделей и анализа с большим объемом данных.

Feature Registry — метаданные о признаках: описание, тип данных, владелец, версия, зависимости.

Проблемы, которые решает Feature Store

  1. Training-Serving Skew — рассогласованность между данными при обучении и при предсказании. Например, признак вычисляется по-разному в оффлайн-системе и в продакшене.

  2. Дублирование логики — один и тот же признак разработчики могут вычислять независимо в разных проектах.

  3. Сложность управления версиями — отсутствие единого места для отслеживания версий признаков и их истории.

  4. Задержки разработки — каждый ML-инженер вынужден заново писать код для вычисления признаков.

Архитектура типичного Feature Store

Raw Data → Transformations → Offline Store (Data Warehouse)
                ↓
            Online Store (Cache)
                ↑
         ML Model (Real-time prediction)

Процесс может быть организован двумя способами:

  • Batch-режим: признаки вычисляются периодически (ежедневно, ежечасно)
  • Streaming-режим: признаки обновляются в реальном времени из потока данных

Примеры популярных Feature Store решений

  • Tecton — решение от команды, создавшей Uber Eats
  • Feast — open-source проект от Tecton
  • Databricks Feature Store — интегрирована в lakehouse
  • AWS SageMaker Feature Store — облачное решение
  • Hopsworks — платформа с focus на Feature Store

Практический пример

from feast import feature_store

# Получить признаки из Feature Store для пользователя
fs = feature_store.FeatureStore(repo_path=".")

features = fs.get_online_features(
    features=["user_features:age", "user_features:avg_purchase_amount"],
    entity_rows=[{"user_id": 123}]
)

# Использовать признаки для предсказания
model_input = features["user_id", "age", "avg_purchase_amount"]
prediction = model.predict(model_input)

Типичный workflow разработки

  1. Data Engineer определяет признаки в Feature Store (описывает логику вычисления)
  2. Признаки вычисляются и хранятся в Online/Offline Store
  3. ML-инженер использует признаки из Feature Store для обучения модели
  4. В продакшене модель получает признаки из Online Store в режиме реального времени
  5. Версионирование и мониторинг признаков происходит централизованно

Ключевые преимущества

  • Повторное использование — признаки используются несколькими моделями
  • Консистентность — одна логика для обучения и предсказания
  • Масштабируемость — легко добавлять новые признаки
  • Снижение времени разработки — ML-инженеры работают быстрее
  • Мониторинг данных — контроль качества и дрейфа признаков

Feature Store — это не просто база данных, это платформа для управления всем жизненным циклом признаков в ML-системе.

Что такое Feature Store? | PrepBro