The New York Times запустила свой платный доступ в марте 2011 года, начав свой путь как служба новостей и стиля жизни, доступная по подписке. С момента своего создания эта услуга ограниченного доступа была разработана таким образом, чтобы неподписчики могли читать фиксированное количество статей каждый месяц, прежде чем столкнутся с платным доступом; ограничение в этой статье часто называют ограничением по счетчику. Эта стратегия доказала свою эффективность в создании подписок, в то же время обеспечивая первоначальный исследовательский доступ к новым читателям. Фактически, в феврале 2022 года, когда The Times приобрела The Athletic Media Company, The Times достигла своей цели в 10 миллионов подписчиков и поставила новую цель в 15 миллионов подписчиков к концу 2027 года. Этот успех стал возможен отчасти благодаря постоянному совершенствованию стратегии платного доступа на протяжении многих лет. Когда был запущен платный доступ, лимит счетчика был одинаковым для всех пользователей. Однако, поскольку The Times превратилась в цифровую компанию, управляемую данными, мы теперь успешно используем причинно-следственную модель машинного обучения, называемую Dynamic Meter, чтобы установить персонализированные лимиты счетчиков и сделать платный доступ более интеллектуальным.

Наша стратегия платного доступа

Стратегия платного доступа компании основана на концепции воронки подписки (рис. 1). В верхней части воронки находятся незарегистрированные пользователи, у которых еще нет учетной записи в The Times. Как только они достигают предела счетчика для своего незарегистрированного статуса, им показывается стена регистрации, которая блокирует доступ и просит их создать учетную запись у нас или войти в систему, если у них уже есть учетная запись. Это дает им доступ к большему количеству бесплатного контента, и, поскольку их активность теперь связана с их регистрационным идентификатором, это позволяет нам лучше понять их текущий аппетит к контенту Times. Эта пользовательская информация ценна для любого приложения машинного обучения, а также обеспечивает работу динамического счетчика. Как только зарегистрированные пользователи достигают предела своего счетчика, им предоставляется платный доступ с предложением подписки. Именно этим моментом управляет модель Dynamic Meter. Модель учится на данных о вовлечении зарегистрированных пользователей первой стороны и определяет соответствующий предел счетчика, чтобы оптимизировать один или несколько бизнес-KPI (ключевых показателей эффективности).

Для чего оптимизируется Dynamic Meter?

Модель Dynamic Meter должна играть двойную роль. Это должно поддерживать нашу миссию помочь людям понять мир и нашу бизнес-цель по приобретению подписок. Это делается путем одновременной оптимизации двух показателей: взаимодействия зарегистрированных пользователей с контентом Times и количества подписок, которые платный доступ генерирует за определенный период времени. Эти две метрики имеют неотъемлемый компромисс, поскольку обслуживание большего количества платных сетей, естественно, приводит к большему количеству подписок, но за счет читателей статьи. Этот компромисс хорошо виден в данных, собранных в ходе рандомизированного контрольного испытания (R.C.T.), как показано на рис. 2. По мере увеличения лимита счетчика для зарегистрированных пользователей увеличивается вовлеченность, измеряемая средним числом просмотров страниц. Это сопровождается снижением коэффициента конверсии для подписок, в основном потому, что меньшее количество зарегистрированных пользователей сталкивается с платным доступом. И наоборот, большее количество трений из-за более жестких ограничений по метражу также влияет на привыкание читателей и потенциально снижает их интерес к нашему контенту. Это, в свою очередь, влияет на потенциал их превращения в подписчиков в долгосрочной перспективе. По сути, Dynamic Meter должен оптимизировать конверсию и взаимодействие, балансируя между ними.

Dynamic Meter — это предписывающая модель машинного обучения.

Цель модели состоит в том, чтобы задать лимиты счетчиков из ограниченного набора доступных опций. Таким образом, модель должна предпринять действие, которое повлияет на поведение пользователя и повлияет на результат, например на его склонность к подписке и взаимодействие с контентом Times. В отличие от прогнозирующей модели машинного обучения, основная истина для предписывающих задач редко известна. То есть, скажем, пользователю был назначен лимит счетчика a, мы не знаем, что случилось бы с этим пользователем, если бы ему был назначен другой лимит счетчика b в то же время. рамка. Эту проблему иногда называют фундаментальной проблемой каузального вывода или, проще говоря, проблемой недостающих данных. Лучшее, что мы могли сделать, это оценить, что произошло бы, используя данные от других пользователей, которым было предписано ограничение счетчика b. Это подчеркивает важность данных, собранных R.C.T. так как важно обучить модель.

Как работает модель?

Учитывая, что мы оптимизируем две цели, а именно склонность к подписке и вовлеченность, мы обучаем две модели машинного обучения, которые мы называем базовыми обучающимися (уравнение 1). Структура этих базовых учащихся аналогична популярной мета-модели учащихся, называемой S-учащийся. Такая модель предсказывает целевую переменную, используя функции X и переменная лечения T. Здесь переменная лечения T — это категориальная переменная, которая указывает лимит счетчика, предоставляемый каждому зарегистрированному пользователю. Функции определяются исключительно на основе данных из первых рук об их взаимодействии с контентом Times. Мы не используем в модели какие-либо демографические или психографические характеристики, чтобы избежать несправедливых предубеждений в отношении защищенных классов (мы стремимся использовать машинное обучение в The Times честным и ответственным образом; вы можете найти обсуждение нашего подхода к машинному обучению, когда оно придет комментировать модерацию здесь).

Использование R.C.T. данных для пользователей с функциямиX и соответствующей обработкой T, мы можем подобрать две модели машинного обучения, f и g, которые предсказывают склонность к подписке (p) и нормализованную вовлеченность (e) соответственно. Чтобы максимизировать обе эти цели одновременно, мы преобразуем их в одну цель s, используя выпуклую линейную комбинацию, которая вводит весовой коэффициент δ, который принимает значение от 0 до 1 (уравнение 2). Он служит параметром трения и позволяет нам явно установить важность, которую мы хотим придать подпискам по сравнению с вовлеченностью. Как только задано определенное δ, политика назначения назначает пользователю лечение, которое максимизирует комбинированную целевую функцию s (уравнение 3). Политику можно многократно применять для разных значений δ, давая набор оптимальных решений, образующих фронт Парето. Фронт Парето обычно выпуклый и содержит решения, лучшие всех остальных хотя бы по одной из целевых функций, причем по мере движения по этому фронту одна из целевых функций уменьшается, а другая возрастает.

Чтобы наглядно проиллюстрировать это, давайте представим, что мы установили δ = 1, чтобы мы оптимизировали только подписки. Используя подобранную модель f, для каждого зарегистрированного пользователя мы можем предсказать склонность к подписке в гипотетических сценариях, когда им будут назначены разные лимиты счетчиков. Затем политика назначает предел счетчика, который обеспечивает наибольшую склонность к подписке (рис. 3). По сути, модель определяет правильное количество бесплатных статей, которое должно быть разрешено для каждого пользователя, чтобы они достаточно заинтересовались The Times и захотели подписаться, чтобы продолжать читать дальше.

Как модель (обратно) тестируется на прошлых данных?

Перед запуском модели мы тестируем ее на исторических данных, чтобы оценить ее производительность после развертывания. Это широко известно как ретроспективное тестирование, которое включает в себя ответ на вопрос о том, как модель работала бы, если бы она была развернута в какой-то момент в прошлом. В контексте динамического счетчика мы хотели бы знать, какой была бы производительность модели, если бы она предписывала ограничения счетчика для конкретного прошлого месяца. Поскольку мы не можем повторить рецепт в прошлом, мы должны использовать прошлый R.C.T. данные и учитывать только тех пользователей, для которых предписание модели совпало с R.C.T. рецепт (рис. 4А). Принимая во внимание, подписались ли только эти пользователи или нет, мы можем затем оценить общий коэффициент конверсии (CVR), используя обратное взвешивание вероятностей и оценку Хайека (уравнение 4). Эта оценка дает нам C.V.R. что мы могли бы ожидать, если бы мы действительно могли вернуться в прошлое и установить пределы счетчика для всех пользователей, использующих модель. Аналогичную оценку можно выполнить и для получения среднего количества просмотров страниц.

Процедуру оценки можно повторить, изменив параметр трения δ, что приведет к набору точек, формирующих фронт Парето (оранжевые точки на рисунке 4B). При изменении δ от 0 до 1 мы движемся вперед, увеличивая коэффициент конверсии и уменьшая среднее количество просмотров страниц. Одна из этих точек выбирается в зависимости от коэффициента конверсии, который мы хотим настроить на месяц. В результате мы получаем прирост вовлеченности по сравнению со случайной политикой (синие точки) с тем же коэффициентом конверсии. В заключение, эта стратегия позволяет нам гибко настраивать уровень трения в зависимости от наших бизнес-целей и в то же время правильно настраивать таргетинг на пользователей, чтобы мы могли получить повышение вовлеченности и коэффициента конверсии по сравнению с чисто случайной политикой.

Рохит Супекар — специалист по данным в группе алгоритмического таргетинга в The New York Times. Он занимается разработкой и внедрением причинно-следственных моделей машинного обучения для поддержки платного доступа The Times. Он в целом увлечен изучением окружающего мира с помощью данных, построением математически точных моделей и их развертыванием с использованием современных инженерных инструментов. До прихода в The Times он получил докторскую степень. из Массачусетского технологического института где он проводил исследования в области прикладной математики и научного машинного обучения. Вне работы Рохит любит читать, бегать на длинные дистанции и кататься на горных лыжах.

Автор признателен за вклад Хайди Цзян, Дэна Ансари, Энн Бауэр и Криса Уиггинса в этот проект.

Если вам интересны такие проекты, приходите к нам работать!