Автономная оценка

Внимание

Начиная с 20 сентября 2023 г. вы не сможете создавать новые ресурсы Персонализатора. Служба Персонализатора выводится из эксплуатации 1 октября 2026 года. Рекомендуем перейти на проект с открытым исходным кодом microsoft/learning-loop.

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

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

Оффлайн оценка может помочь ответить на следующие вопросы:

  • Насколько эффективны ранги "Персонализатор" для успешной персонализации?
    • Сколько в среднем вознаграждений достигается политикой машинного онлайн-обучения службы "Персонализатор"?
    • Как "Персонализатор" сравнивается с эффективностью работы приложения по умолчанию?
    • Какова была бы сравнительная эффективность случайного выбора для персонализации?
    • Какова бы была сравнительная эффективность различных политики обучения, указанных вручную?
  • Какие функции контекста в большей или меньшей степени способствуют персонализации?
  • Какие функции действий в большей или меньшей степени способствуют персонализации?

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

Автономные оценки не предоставляют руководств относительно процентной доли событий для использования в исследованиях.

Предварительные требования для автономной оценки

Ниже приведены важные рекомендации для репрезентативной автономной оценки:

  • Есть достаточно данных. Рекомендуемое минимальное значение — по крайней мере 50 000 событий.
  • Сбор данных в периоды репрезентативного поведения пользователей и трафика.

Обнаружение оптимизированной политики обучения

Служба "Персонализатор" может использовать процесс автономной оценки для автоматического обнаружения более оптимальной политики обучения.

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

Текущие политики, включаемые в оценку.

Параметры обучения Цель
Онлайн-политика Текущая политика обучения, используемая в Персонализаторе.
Базовые показатели Параметры приложения по умолчанию (определяются первым действием, отправленным в вызовы ранжирования)
Случайная политика Мнимое поведение ранга, которое всегда возвращает случайный выбор действий из предоставленных.
Пользовательские политики Дополнительные политики обучения загружены при запуске оценки.
Оптимизированная политика Если оценка была начата с опцией обнаружения оптимизированной политики, она также будет сравниваться, и вы сможете загрузить ее или заменить текущую политику на политику онлайн-обучения.

Основные сведения о значимости результатов оффлайн оценки

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

Как проводится оффлайн оценка

Автономные оценки выполняются с помощью метода, называемого "контрфактическая оценка".

Служба "Персонализатор" основана на предположении, что поведение пользователей (и таким образом вознаграждения) невозможно предсказать в ретроспективе (служба "Персонализатор" не может знать, что бы произошло, если бы пользователю было показано нечто иное, чем то, что он видел), и только учится на измеряемых вознаграждениях.

Это концептуальный процесс, используемый для оценки:

[For a given _learning policy), such as the online learning policy, uploaded learning policies, or optimized candidate policies]:
{
    Initialize a virtual instance of Personalizer with that policy and a blank model;

    [For every chronological event in the logs]
    {
        - Perform a Rank call

        - Compare the reward of the results against the logged user behavior.
            - If they match, train the model on the observed reward in the logs.
            - If they don't match, then what the user would have done is unknown, so the event is discarded and not used for training or measurement.

    }

    Add up the rewards and statistics that were predicted, do some aggregation to aid visualizations, and save the results.
}

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

Оценка функций

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

Мы рекомендуем ознакомиться с оценками функций и задать такие вопросы:

  • Какие другие, дополнительные, возможности может предоставить ваше приложение или система, вроде тех, которые более эффективны?
  • Какие функции можно удалить из-за низкой эффективности? Низкоэффективные функции добавляют шум в машинное обучение.
  • Существуют ли функции, которые включены случайно? Примеры: персональные данные пользователя, повторяющиеся идентификаторы и т. д.
  • Существуют ли нежелательные функции, которые не должны использоваться при персонализации из-за нормативных требований или правил ответственного использования? Существуют ли функции, которые схожи с (т. е точно повторяют или коррелируют с) нежелательными?

Следующие шаги

Настройка ПерсонализатораВыполнение автономных оценокПонимание, как работает Персонализатор