BSD:Auction with ROI constraints

之前关于BSD的讨论:https://www.jianshu.com/p/5edf15c787ed [1]

问题建模Modeling:

  • 类似[1]中的方案,此处为以无偏winning rate建模的方式最优化期望收益)
    当然,这种modeling的一大问题是,真实的成功率与无偏随机数据是有差距的,因为我们出价与市场价并不互相独立。OurBid \not\perp Others'Bid
  • 形式化:
    u(r)为utility,g(r)为预估的用以计算roi的收益。
    \max_{b(r)} \int_r u(r) w(b(r)) p(r) dr
    s.t.1: \int_r b(r) w(b(r)) p(r) dr \leq B
    s.t.2: \frac {\int_r g(r) w(b(r)) p(r)dr } {\int_r b(r) w(b(r)) p(r) dr} \geq ROI
    得到:
    L(b(r),\lambda_1,\lambda_2) = \int_{r}^{} \left[ -u(r) w(b(r)) + \lambda_1b(r)w(b(r)) + \lambda_2 ROI w(b(r)) b(r) - \lambda_2 w(b(r)) g(r) \right]p(r) dr - \lambda_1 B

Solution:

KKT condition:

  • b(r)偏导为0:
    -u(r) \frac{\partial w(b(r))} {\partial b(r)} + (\lambda_1 + \lambda_2ROI)\left[ \frac{\partial w(b(r))} {\partial b(r)} b(r) + w(b(r)) \right] - \lambda_2 \frac{\partial w(b(r))} {\partial b(r)}g(r) = 0 (1)
    给定win函数:
    w(b) = \frac {b} {l + c*b} (2)
    其中l,c为拟合成功率的常数
    求导可得:
    \frac{\partial w(b(r))} {\partial b(r)} = \frac {l}{(l + c*b)^2} (3)
    将(2)(3)带入(1)化简可得:
    b^2 + \frac {2l} {c} *b - \frac {lu + \lambda_2lg }{c(\lambda_1 + \lambda_2ROI)} = 0
    解得:b = \sqrt {\frac {l^2}{c^2} + \frac {lu + \lambda_2lg }{c(\lambda_1 + \lambda_2ROI)}} - \frac {l}{c}

  • 原约束与系数约束:
    \lambda_1,\lambda_2 \geq 0
    \int_r b(r) w(b(r)) p(r) dr \leq B
    \frac {\int_r g(r) w(b(r)) p(r)dr } {\int_r b(r) w(b(r)) p(r) dr} \geq ROI

  • budegt互补松弛条件:
    \lambda_1 [\int_r b(r)w(b(r))p(r) dr - B ]=0

  • roi互补松弛条件:
    \lambda_2 [ROI\int_r b(r) w(b(r)) p(r) dr -\int_r g(r) w(b(r)) p(r)dr ] = 0





参数解法:

  • Qualification-LICQ:因为b(r) \in R^1,所以当且仅当在其解x^*处,激活条件对x(此处即b(r))梯度向量\triangledown g \neq 0时满足LICQ。
    很显然
    1、在只有一个限制条件激活时,只要极值处限制条件对b(r)的导数不为0,则这个条件就是满足的。
    2、在多个限制条件激活时,肯定是不满足的。

  • Qualification-SC:对于多条件激活。判定是否满足SC,即优化目标f与限制函数g,是否都是convex的。判断方式需要求其二阶变分\delta ^2 L \geq 0则满足SC。
    为了简化问题,我们可以将当前假设的解带入,即在当前假设下,是否满足SC。
    带入式子(2)得到如下:
    \frac{\partial^2 {w(b(r))} } {\partial {b(r)^2} } = \frac {-2lc} {(l+cb)^3}(4),根据成功率函数的图像,是恒小于0的。


    Convexity of functional:[1]
    a、目标函数的二阶变分:
    \delta^2 f = \int [u(r) \frac {2lc} {(l+cb)^3}]p(r)dr
    带入拟合出来的常数l,c,在实际区间上积分大于等于0
    b、预算限制的二阶变分:
    \delta^2 g_1 = \int [\frac {2l}{(l + c*b)^2} + \frac {-2lcb} {(l+cb)^3}]p(r)dr
    = \int [\frac {2l^2}{(l + c*b)^3}]p(r)dr
    带入拟合出来的常数l,c,其积分显然大于等于0
    c、ROI限制的二阶变分:
    \delta^2 g_2 =\frac {\delta^2 \int [ROI*b(r) - g(r) ]w(b(r)) p(r)dr} {\delta b(r)^2}
    = \int [\frac {2l^2ROI+2lcg(r)}{(l+cb)^3}]p(r)dr
    带入拟合出来的常数l,c,其积分也显然大于等于0
    所以,由此可以得出,当前问题在两个约束都生效时,满足SC





  • 情况0:\lambda_1=0, \lambda_2=0
    b(r) \rightarrow inf,明显不满足条件。

  • 情况1:\lambda_2 = 0
    这种情况下,等价于只有budget预算限制。
    所以将b(r)的解带入(将\lambda_2=0带入,其中仅包含\lambda_1),解如下问题即可:
    \int_r b(r)w(b(r))p(r) dr - B =0
    观察b(r)解的形式与w(b)的形式,可轻易得出\lambda_1与预算消耗成反比b(r) \propto \frac {u}{\lambda_1}
    在这个问题中,由于无论\lambda_1如何变化,排序是不变的。所以可以直接将数据带入,求方程的数值解即可。
    当然,由于本身也是单调的,通过二分搜索也可以较容易地获得数值解。

  • 情况2:\lambda_1 = 0
    类似地,将b(r)的解带入,求解ROI刚好满足的状态即可。
    ROI\int_r b(r) w(b(r)) p(r) dr -\int_r g(r) w(b(r)) p(r)dr = 0
    得到 b(r) \propto (\frac {u}{\lambda_2} + g),可以看出\lambda_2就是u的反向权重。\lambda_2越大,越倾向于用g(收益)来排序,即参与竞价的ad的g(r)越大,且总体出价越低(成本低),则ROI越大。
    所以ROI对\lambda_2单调递增,可以通过二分搜索以获得数值解。
    (这种情况下,由于\lambda_2的变化会影响排序,所以无法将数值全部带入直接求其数值解,当然,改写整个方程,将排序过程加入也是可以的,但是求解速度也并不一定会很快)

  • 情况3:\lambda_1 \neq 0,\lambda_2 \neq 0
    条件:如果上述两种方式求解出来分别的ROI,Budget不满足边界条件的(即都超出边界)。
    此时两个KKT乘子都不为0,
    即最优解在ROI刚好满足,Budget也刚好满足的边界上,KKT multiplier等价于Lagrangine multiplier。
    w(b(r))带入松弛条件(同拉格朗日,等式约束,即偏导为0),求解如下方程组:
    \lambda_1,\lambda_2\begin{cases} \int_r b(r)w(b(r))p(r) dr - B =0 \\ ROI\int_r b(r) w(b(r)) p(r) dr -\int_r g(r) w(b(r)) p(r)dr = 0 \end{cases}
    化简后无特殊形式,不易求出解析解可由数值解法解出。
    当然,这个方程组求解的最大问题同样在于,由于\lambda_1,\lambda_2会影响排序,所以很难直接用传统的数值优化的方程组解法得到解。(TODO)

问题分析:

以下分析针对我们对泛函最优化的解法其中的排序问题的讨论。
由于增加了ROI限制情况下,本身目标为u,限制目标的函数g。

u(r)g(r)都跟流量具体的分布相关。

u(r)g(r)的数值,本身会影响排序。从而影响我们最优化问题中的具体的数值分布。

虽然在当前体系下,由于其单调性(单约束),我们能搜索出最优解,但是其预估本身的误差会影响排序的结果(从而影响不同\lambdau(r)g(r)的分布,导致计算出来的roi与budget都有偏差)。

通俗点解释:
1、如果u(r)g(r)相同,由于biding函数是对其单调递增的,所以我们离线模拟时只需要得到按u排序top1即可,搜索不同的\lambda参数时,也不影响排序。

2、如果u(r)g(r)不同,则\lambda参数的变化会影响其顺序,所以我们离线模拟的时候需要记录每次竞价的候选列表。计算复杂度大大提升。

Refer:
[1]
INTEGRALS WHICH ARE CONVEX FUNCTIONALS

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容