как определиться с версиями кампании, чтобы максимизировать клики

Представьте, что вы менеджер по цифровому маркетингу, креативное агентство придумало 6 разных версий кампании, и все они вам нравятся (почти одинаково), так как же вы решаете? Вы бы взяли голоса от команды? вы бы выбрали лотерею?

Вы, конечно, можете подумать об A/B-тестировании, однако с более чем двумя вариантами сравнивать становится немного сложно.

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

1) Не имеет памяти: каждый раз это самостоятельный тест, не связанный со знаниями, полученными в предыдущих кампаниях. Предыдущее знание (априорная вероятность) обычно укрепляет уверенность в апостериорной вероятности и, следовательно, в процессе принятия решений.

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

3) Обучение не является непрерывным: нет системы самообучения и обратной связи для постоянного обновления результатов. Тот факт, что год назад объявление X работало лучше, чем объявление Y, не означает, что оно будет работать лучше и сейчас.

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

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

С UCB, ‘Aₜ’, действие, выбранное на временном шаге ‘t’, определяется следующим образом:

где;

  • Qₜ(a) – оценочное значение действия "a" на временном шаге "t".
  • Nₜ(a) – это количество раз, когда было выбрано действие "a" до момента времени "t".
  • c – это доверительное значение, определяющее уровень исследования.

В нем 2 части

Эксплуатация — «оптимизм в условиях неопределенности», что в основном означает, что если вы не знаете, какое действие лучше, выберите то, которое в настоящее время выглядит лучшим, "Qₜ(a)" представляет это

Исследование - какую награду можно ожидать от выбранного действия, от этого зависит дальнейший выбор действия, если действие выбирается не очень часто, то общая награда уменьшается.

Реализация

Я использую некоторые данные моделирования , которые можно загрузить здесь. (Этот набор данных предназначен исключительно для использования в академических исследованиях и не имеет никакого отношения к какой-либо коммерческой деятельности). В реальном мире это данные, собранные в результате проведения экспериментов с разными версиями креатива при одинаковом размере выборки и типе населения.

Код Python можно найтиздесь

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

Всего кликов без какой-либо стратегии: 1287, при случайном выборе разные объявления выбираются почти одинаково, а рейтинг кликов составляет примерно 12,87% (1287/10000). (В python индекс начинается с нуля, поэтому Ad1 представлен как 0 и т. д.)

Теперь запускаем алгоритм UCB

Общее количество кликов с UCB — 2028, и очевидно, что 3-й креатив получает наибольшее количество кликов (python начинается с 0, поэтому ad_no 2 — это 3-е объявление), мы получаем рейтинг кликов 20,28%.

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