Как определить, влияют ли офлайн-метрики на онлайн-метрики?

«Как определить, влияют ли офлайн-метрики на онлайн-метрики?» — вопрос из категории Метрики и функции потерь, который задают на 26% собеседований Data Scientist / ML Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

Мой подход:

  1. Гипотеза и предварительный анализ. Например, я предполагал, что улучшение precision@k в рекомендательной системе на 0.05 повысит онлайн-CTR. Сначала я смотрел историческую корреляцию на прошлых релизах.
  2. A/B-тест — единственный надёжный метод. Я разворачивал две версии модели:
    • Контроль (A): Модель, отобранная по старой офлайн-метрике (например, RMSE).
    • Тест (B): Модель, отобранная по новой, улучшенной офлайн-метрике (например, NDCG@10). Все остальные факторы (трафик, интерфейс) идентичны.
  3. Измерение и статистический тест. Сравнивал ключевые онлайн-метрики (CTR, конверсия, средний чек) между группами, используя t-тест или bootstrap для расчёта доверительных интервалов.

Ключевые нюансы, которые я учитывал:

  • Временной лаг: Эффект от улучшения модели поиска мог проявиться в метриках удержания (retention) только через 1-2 недели.
  • Интерференция метрик: Улучшение одной онлайн-метрики (например, clicks) иногда вело к ухудшению другой (например, purchase). Нужно смотреть на комплекс бизнес-метрик.
  • Статистическая мощность: Если ожидаемый эффект мал (например, +0.5% к конверсии), а трафик ограничен, A/B-тест может не выявить различий, даже если они есть. В таких случаях я использовал последовательный анализ (Sequential Testing).