Прогноз трафика и конверсий: проверка до принятия решений

Кратко

Прогноз объёма и индивидуальная оценка склонности отвечают на разные вопросы. Ни один сам по себе не доказывает причинный эффект кампании.

Вымышленная сцена: два лотка с пустыми карточками, разделённые прозрачной пластиной, блокнот и таймер на столе
В этой статье

Прогноз объёма и индивидуальная оценка склонности отвечают на разные вопросы. Ни один сам по себе не доказывает причинный эффект кампании.

Цель, горизонт и доступные сведения

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

Проверять в хронологическом порядке

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

Сравнивать с базой и проверять действие

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

Источники и проверка

Проверяйте прогноз в реальном времени.

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

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

Первичный источник: scikit-learn — TimeSeriesSplit. Связанный метод: прочитать практическое руководство.

Границы измерения углерода

Сравнение требует общих границ и функциональной единицы.

  • Перечислите компоненты, регион, период и функциональную единицу, например завершённую операцию. Сравнивайте сценарии с одинаковой предоставленной услугой.
  • Запишите энергию, коэффициент выбросов и выделенную долю оборудования. Различайте измерение и оценку; исключённый компонент не означает нулевой след.
  • Вымышленный пример: (12 + 3) gCO2e / 5 операций = 3 gCO2e на операцию. Меняйте неопределённые допущения и сравнивайте суммарные выбросы.

Воспроизводимый приёмочный случай

Вымышленный пример: данные не описывают клиента или наблюдаемый результат.

Посмотреть данные случая
{
    "functional_unit": "accepted_task",
    "energy_kWh": 2,
    "intensity_gCO2e_per_kWh": 100,
    "embodied_gCO2e": 50,
    "accepted_tasks": 100,
    "SCI_gCO2e_per_task": 2.5
}

Ожидаемое решение

(2 × 100 + 50)/100 = 2,5 г CO2e на задачу, только в заявленных границах.

Процедура проверки

  1. Определите границы, функциональную единицу и коэффициенты.
  2. Разделите энергию, воплощённые выбросы и результаты.
  3. Сохраните происхождение и расчёт без скрытых компенсаций.

Green Software Foundation — Software Carbon Intensity

Достаточно ли доли возобновляемой энергии для сравнения ПО?

Нет. Укажите границы, энергию, коэффициенты, оборудование и функциональную единицу.

Первичный источник: Green Software Foundation — Software Carbon Intensity. Связанный метод: прочитать практическое руководство.

Пропуски, ноль и оценка

Отсутствующее наблюдение не равно измеренному нулю.

  • Разделяйте неполученное поле, неприменимое наблюдение и сбой сбора. Сохраняйте ноль как действительное измерение; замена всех пропусков нулями смешивает разные состояния.
  • В вымышленном примере [10, пропуск, 0] среднее двух наблюдений равно 5. Деление на три после замены пропуска нулём отвечает на другой вопрос; покажите оба количества.
  • Для оценённого значения сохраните признак подстановки и правило. Сравните результаты с оценками и без; при отсутствии действительных наблюдений показывайте отсутствие результата, не среднее ноль.

Воспроизводимый приёмочный случай

Вымышленный пример: данные не описывают клиента или наблюдаемый результат.

Посмотреть данные случая
{
    "values": [
        10,
        null,
        0
    ],
    "observed_count": 2,
    "mean_observed": 5,
    "mean_if_missing_replaced_with_zero": 3.3333333333,
    "extended_sample": {
        "values": [
            10,
            null,
            0,
            20,
            null,
            30
        ],
        "known_count": 4,
        "expected_count": 6,
        "known_sum": 60,
        "mean_observed": 15,
        "mean_after_zero_fill": 10
    },
    "missing_only_sample": {
        "values": [
            null,
            null
        ],
        "known_count": 0,
        "mean_observed": null
    }
}

Ожидаемое решение

Среднее наблюдаемых значений — 5. Замена пропуска нулём меняет совокупность и результат.

Одни данные, два средних: покажите правило

Вымышленные данные: [10, пропуск, 0, 20, пропуск, 30]. Четыре известных значения из шести ожидаемых наблюдений; известная сумма: 60. Имеющийся ноль наблюдался.

ОбработкаРасчёт среднегоИнтерпретация
Только известные значения60 ÷ 4 = 15Среднее описывает четыре известных значения. Оно не доказывает, что два пропущенных имели бы то же распределение.
Пропуски заменены нулями60 ÷ 6 = 10Два нуля добавлены правилом, а не наблюдались. Среднее отвечает на другой вопрос; обоснуйте правило перед сравнением.
Другая выборка: [пропуск, пропуск]Не вычисляетсяНет известных значений: покажите недоступность. Нулевое среднее подразумевало бы несуществующее наблюдение.

Процедура проверки

  1. Разделите пропуски, нули и оценки.
  2. Рассчитайте средние до и после исключения.
  3. Сохраните количества и правила по переменным. Проверьте также группу, где все значения отсутствуют: без явного правила её нельзя представлять как измеренный ноль.

pandas — Working with missing data

Первичный источник: pandas — Working with missing data. Связанный метод: прочитать практическое руководство.