GSP出价方案:[17]
通过简单的建模,对对偶问题求解 很容易得出GSP条件下bid的optimal solution:[在GFP条件下,此解不是最优解,需要预估market price.[5]]
(这种方式其实并不是truth-telling出价[8][10][11][12],反对意见[14])(关于在限制条件下直接按ecpm出价是否最优[19])
通过历史数据能求解出最优lambda,但根本问题是环境变化,每天流量的变化很大,每天别人出价不同,导致[market price]的变化也很大。所以通常,lambda通过反馈数据控制做approximation(PID或者RL)
比如一个可行的做法是:
离线求解lambda0,以及分时的期望budget消耗(消耗比例),然后在线通过pid控制改变实时的lambda,来逼近这个budget消耗。
关于GFP出价的优化
1、对winning function进行建模。出价为时,竞价成功的概率为[15]
2、将winning function带入求解。这种方式下,biding的analytical solution形式取决于winning function的形式。在[2]中有对形式的求解,[1]中的3.2.2节有对更复杂的情况求解方案。
3、 一个实例化的求解过程
根据业务中market price数据分布情况,我们可以设计出成功率函数:,这里的为常数,等于最高成功率。根据成功率的定义,,对求导,可以得到bid的概率分布:,将此公式带入KKT 条件等式[18],化简得到一元二次方程,得到解:作为GFP的出价。
参数求解:
1、我们通过历史竞价数据计算出和,这里非线性回归可以求倒数转化为线性回归。
2、再对历史数据带入以及的出价公式,根据成功率函数与总体Budget:,利用公式求解出。
延伸
其实上述这种方案其实也有一定的局限性,因为p(win|bid)这种建模方式本身假设是有些偏差的,因为实际上market price也很大程度上depending on 流量本身。应该是p(win|bid,x):x为我们认知的流量的特征空间。所以[6]中提出了我们直接对Market Price进行预估,然后根据Budget(容量),MP(重量),ECPM(价值)将这个原问题转化为dynamic knapsack问题来求解。
【当然,[6]这篇论文的2.3章节中,用了一个更直觉的例子来告诉你原方案中bidding function的表达能力是不足以达到最优解的。其实这个这个问题的本质还是,winning function的假设过于简单(过强假设),因为winning function本身的形式,决定了bidding function 的形式】
理论扩展
加入kpi的constraint:
bid optimization by multivariable control in display advertising(有别的constraint)
Refer:
[1]:Optimal Real-Time Bidding for Display Advertising,用非离散的模型建模
[2]:Optimal real-time bidding frameworks discussion,证明GSP条件下bid=ecpm/lambda最优,以及GFP条件下bid的optimal
[3]:Discrete-variable extremum problems 具体离线求解lambda的方法:离散变量建模,lambda求解,greedy approximation
[4]:RL的一些手段https://www.pianshen.com/article/17871751889/
[5]:关于预估winning price估计censored regression:Predicting
winning price in real time bidding with censored data
[6]:加上winning price的预估,证明[1],[2]中的方案不是最优解,动态Knapsack Problem:Combining powers of two predictors in optimizing real-time bidding strategy under constrained budget。其实整体的思路很简单,即转化为KP,优先竞得“性价比”最高的imp opportunity。类似方案:Dynamic Knapsack Optimization Towards Efficient Multi-Channel Sequential Advertising
[7]:Budget Constrained Bidding by Model-free Reinforcement
Learning in Display Advertising,RL方式的设计。
[8]: 直接bid=ecpm才是Truth-telling的出价。见论文[2]。GSP为激励兼容的条件:无budget constraint,或者单物品拍卖。
[9]: 其他有意思的思路:Statistical Arbitrage Mining for Display Advertising
[10]: 在买家足够的情况下,GFP与GSP稳态的均衡点是一致的,对卖家来说收益也是一致的。但是GFP容易造成系统的不稳定,由于买家需要去猜别人的价格,所以会有出价的更大波动。
[11]:在budget constraint下,auction 机制的设计,如何设计出truthful 的机制Multi-unit auctions with budget-constrained bidders
[12]:机制设计,VCG auctions也不是truth-telling的机制:Budget-Constrained Auctions
[13]:激励兼容,即卖家与买家的目标函数相同。VCG:http://www.iterduo.com/posts/84554
[14]: 论文[6]的2.3节认为Lin与ORTB都是一种广义上的truth-telling出价,因为前者bid与ecpm是线性关系,后者也是单调关系。【我对此持一定的保留态度,虽然买方卖方的目标函数都是与价值单调关系,但是涉及到market price的估计本身就已经不是truth-telling了,虽然LIN与ORTB对mp的估计隐含在winning price分布函数的求解中】当然,只要能拿到足够多的budget,就可以当作是不限budget的情况,这种状态下,确实是“truth telling”:lambda=1
[15]:这里[2]论文中假设市场market price是一个随机变量,并且不受到我们策略机制的影响,p(win=1|bid)等价于p(bid>mp)的概率。所以对market price的分布进行统计(通常情况下可能差不多是log-normal的),那么winning function 就是它的CDF函数。可以对其CDF做非线性函数的近似,然后来求解其参数。
[16]:关于winning price的预估:Predicting Winning Price in Real Time Bidding with Censored Data
[17]:对于GSP定价来说,其实可以通过很简单的离散定义的方式来建模,并且能得到相同的解。注:这里需要用到Linear Programming的duality,即对于LP来说,总有强对偶:https://en.wikipedia.org/wiki/Dual_linear_program
[18]Optimal real-time bidding frameworks discussion中的(13)(14)
[19]非truth-telling:Real-Time Bidding Algorithms for Performance-Based Display Ad Allocation
见: this naive mechanism is suboptimal under a constrained setting where demand-side constraints exist.
网友评论