TG Telegram Group & Channel
ML Advertising | United States America (US)
Create: Update:

Bid Shading

Сегодня разберем алгоритм маржинальности 💵 в аукционах в программатик рекламы, т.н. Bid Shading. Согласно статьи на AdExchanger, многие DSP использует этот алгоритм для искусственного занижения ставки, и для многих он является черным ящиком. Мы же разберем, как можно реализовать алгоритм технически.

Для начала введем величину ставки bid к примеру для DSP (платформы стороны спроса). Она представляет собой "истинную" цену, которую DSP готова заплатить за покупаемый инвентарь. Когда мы конкурируем с другими DSP, может случиться так, что мы сделаем (и оплатим) ставку слишком высокую, не адаптированную к уровню конкуренции.

Чтобы адаптировать ставку по отношению к другим игрокам и максимизировать маржу мы введем коэффициент shadingFactor в диапазоне [0..1]. В двух крайних случаях, если shadingFactor = 0, то ставку не понижаем, а если shadingFactor = 1 , то бидим 0.

Запишем формулу для маржи с учетом shadingFactor и заниженой "шейдированной" ставки shadedBid


shadedBid = bid x (1 - shadingFactor)
margin = bid - shadedBid = bid x shadingFactor


Теперь нужно задаться вопросом, как выбрать оптимальный shadingFactor. Сделаем мы это следующим образом,

Сначала нам нужно учитывать вероятность выигрыша p(bidWin | bidRequest, bidShadingFactor) нашей платформы в аукционе при условии признаков покупаемого слота, пользователя, спроса и shadingFactor. Это нужно, поскольку чем выше shadingFactor, тем ниже вероятность победы в аукционе. Поскольку мы ввели в формулу маржи вероятность, то нам стоит максимизировать ее мат. ожидание


E(margin) = bid x shadingFactor x p(bidWin | bidRequest, bidShadingFactor)


При этом вероятность победы в аукционе p(bidWin) может предсказываться для каждого слота с помощью классической бинарной ML-моделью. Тогда оптимальный коэффициент bidShading' запишется в виде:


bidShadingFactor' = argmax(E(margin))


Этот оптимальный коэффициент мы можем включить в формулу пониженной шейдированной ставки


shadedBid = bid x (1 - shadingFactor')


Новая ставка shadedBid будет адаптирована к ставкам конкурентов и будем принимать во внимание возможную просадку доли побед bidWin в аукционах.

Bid Shading

Сегодня разберем алгоритм маржинальности 💵 в аукционах в программатик рекламы, т.н. Bid Shading. Согласно статьи на AdExchanger, многие DSP использует этот алгоритм для искусственного занижения ставки, и для многих он является черным ящиком. Мы же разберем, как можно реализовать алгоритм технически.

Для начала введем величину ставки bid к примеру для DSP (платформы стороны спроса). Она представляет собой "истинную" цену, которую DSP готова заплатить за покупаемый инвентарь. Когда мы конкурируем с другими DSP, может случиться так, что мы сделаем (и оплатим) ставку слишком высокую, не адаптированную к уровню конкуренции.

Чтобы адаптировать ставку по отношению к другим игрокам и максимизировать маржу мы введем коэффициент shadingFactor в диапазоне [0..1]. В двух крайних случаях, если shadingFactor = 0, то ставку не понижаем, а если shadingFactor = 1 , то бидим 0.

Запишем формулу для маржи с учетом shadingFactor и заниженой "шейдированной" ставки shadedBid


shadedBid = bid x (1 - shadingFactor)
margin = bid - shadedBid = bid x shadingFactor


Теперь нужно задаться вопросом, как выбрать оптимальный shadingFactor. Сделаем мы это следующим образом,

Сначала нам нужно учитывать вероятность выигрыша p(bidWin | bidRequest, bidShadingFactor) нашей платформы в аукционе при условии признаков покупаемого слота, пользователя, спроса и shadingFactor. Это нужно, поскольку чем выше shadingFactor, тем ниже вероятность победы в аукционе. Поскольку мы ввели в формулу маржи вероятность, то нам стоит максимизировать ее мат. ожидание


E(margin) = bid x shadingFactor x p(bidWin | bidRequest, bidShadingFactor)


При этом вероятность победы в аукционе p(bidWin) может предсказываться для каждого слота с помощью классической бинарной ML-моделью. Тогда оптимальный коэффициент bidShading' запишется в виде:


bidShadingFactor' = argmax(E(margin))


Этот оптимальный коэффициент мы можем включить в формулу пониженной шейдированной ставки


shadedBid = bid x (1 - shadingFactor')


Новая ставка shadedBid будет адаптирована к ставкам конкурентов и будем принимать во внимание возможную просадку доли побед bidWin в аукционах.


>>Click here to continue<<

ML Advertising






Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)