26
EE 想想想想想想想 想想 2015.01

Ee 想说爱你不容易

Embed Size (px)

Citation preview

Page 1: Ee 想说爱你不容易

EE想说爱你不容易黄晶

2015.01

Page 2: Ee 想说爱你不容易

主要内容

问题描述

求解方法

E-Greedy

UCB

Thompson-Sampling

问题变种 -contextual E&E

应用

当 E&E遇到 LR

Page 3: Ee 想说爱你不容易

Exploration & Exploitation

什么是 E & E? 问题起源:老虎机

N个老虎机每个老虎机概率为 pi的产生收益目标:最大化整个过程中的收益

关键点:不知道 p1,p2,…,pn,只能通过每次的结果来估算 pi,探测的过程中是有损失的

Exploration:探测新的 --这是有成本的Exploitation:学习历史观测结果,来推断 pi

Regret: 最大收益 *实验次数 -实验收益

choosing best arm(result) for all users

p1 p2 pn

Page 4: Ee 想说爱你不容易

应用 广告展现问题

有 1个展现位置, N个广告(老虎机)每个广告以概率 pi被点击,从而获得收益 1(统一为 1,简化问题)目标:怎样的展现策略使得整体收益最大?

Page 5: Ee 想说爱你不容易

求解方法 最土豪的方法

对每个广告,让其不停的展现,直到可以后验统计出一个靠谱的点击概率—这是最大力度的 exploration,最小力度的 Exploitation

具体来说,我们发现【推导:附录 1】• 点击率为 0.1的广告需要展现 13829次,才可以使得后验点击率与真实点击率误差在 5%以内

如果:广告 A后验已经收敛到 10%,广告 B展现了 100次,点击了 0次,那么,真的还需要再展现 B,直到点击率收敛么?简单算下,广告 B的点击率会比 A高的概率为 (1-0.1)^100=10^(-5)

Page 6: Ee 想说爱你不容易

求解方法 E-greedy

每次以1-e的概率选后验点击率高的, e的概率随机选其他的Exploration力度: e

Exploitation力度:1-e

性质:由于 e是固定的,即使实验了很多步,仍然会以固定概率去抛弃当前最好的, Explore其他的

e=0.2

e=0.1

e=0.01

e=0.2

e=0.01

e=0.1

Explore概率太低,开始很难跳出

Explore概率太高,即使收敛了,仍然总有 0.2的概率选择差的

E=0.2Explore概率很高,非常明显的线性regret

E=0.01开始 Explore效率很低,一直探测不到最好的, N很大以后,由于 explore概率低Regret会比较小

E=0.1N<10000,看起来是最好的,但是 N再增加, regret会超越红色的线

Page 7: Ee 想说爱你不容易

求解方法 E-greedy数值实验性质

e越大,启动阶段的 regret越小,收敛速度越快e越大,到 N大于一定步数, regret斜率越高总结:大 e起始效率高,小 e结束效率高改进: e随着 N的增加而降低,可以把 regret控制到O(N)

e=0.2

e=0.1

e=0.01

e=0.2

e=0.01

e=0.1

Explore概率太低,开始很难跳出

Explore概率太高,即使收敛了,仍然总有 0.2的概率选择差的

E=0.2Explore概率很高,非常明显的线性regret

E=0.01开始 Explore效率很低,一直探测不到最好的, N很大以后,由于 explore概率低Regret会比较小

E=0.1N<10000,看起来是最好的,但是 N再增加, regret会超越红色的线

Page 8: Ee 想说爱你不容易

求解方法 UCB

思想:后验总是不准的,但是随着实验次数增多,后验的误差范围越来越小,如果能给后验误差一个合理估计,就能控制风险核心:怎么估计后验误差?估算 p的上界,保证 p大于上界的概率小于 e

P的上界, ni越大,范围越小

P的上界估计想让误差随 n增大而减小,于是变成左边的样子??

有更为精确的估计,但是大同小异, regret基本都是 logN

Page 9: Ee 想说爱你不容易

求解方法 UCB数值实验性质

实验次数

P值

黑色短线:后验观察值黑色长线:上界值

实验次数最小,所以上界值范围越大彩色线:真实值

实验一定次数后,三个 arm的性质比较

实验步数

每个广告的实验次数

绿色: 0.5红色: 0.3蓝色: 0.1黑色: 0.2

绿色部分绝对主导,但是上界区间其实还挺大,且收敛速度越来越慢

N=100 N=5000 N=7500

Page 10: Ee 想说爱你不容易

求解方法 UCB数值实验性质

最优广告选择概率 Regret VS 38logN

Page 11: Ee 想说爱你不容易

求解方法 Thompson Sampling

思想:贝叶斯观点,认为先验参数 p 服从一个 beta分布,通过后验的观测,不断对这个 beta分布做修正,在 explore的时候,对这个 beta分布做随机抽样Why beta分布?因为后验的观测是伯努利分布,先验取伯努利分布的共轭分布,可以保证后续分布一直是该分布推导过程:

伯努利分布的统一写法, x=1为 theta, x=0为 1-theta

可以认为 alpha基本代表成功次数, beta 代表不成功次数

Page 12: Ee 想说爱你不容易

求解方法 Thompson Sampling

Beta分布的性质1.点击率等比率情况下,实验次数越多, beta分布范围越窄Beta(10,30) vs beta(2,6)Beta(20,20) vs beta(4,4)

2.Beta分布的众数基本等于点击率Beta(10,30)的中心点=10/(10+30)Beta(20,20)的中心点=20/(20+20)

Ps:本问题中,小于 1的 beta分布基本不用关注1. 既然 alpha 和 beta基本代表实验成功和实验失败的次数,因此在初始选参数的时候,可以根据经验选择 alpha 和 beta的取值,使得更接近点击率2.固定比值以后, beta的选择决定了后续观测值想修改这个分布的难度, beta越大,表明当前的分布是依赖于很多次实验获得,后面必须有充分的数据才能大规模修改分布

Page 13: Ee 想说爱你不容易

求解方法 Thompson Sampling

数值实验性质:不确定!

一样的参数,三次实验,表现差异很大

Page 14: Ee 想说爱你不容易

方法比较:思想 UCB & Thompson方法的思想差异

思想对比:概率学派 VS 贝叶斯学派操作方法对比:给定估计的分布后,一个取最大值,一个对分布抽样理论收敛性:有收敛理论 VS 无收敛理论item-A

item-B

item-C

UCB:选上界最高的 BThompson:都有一定概率

Page 15: Ee 想说爱你不容易

方法比较:收敛性 e-greedy & UCB & Thompson E-greedy

UCBThompson

选择最好广告的概率 regret

Page 16: Ee 想说爱你不容易

问题的变种 -contextual

回顾:问题起源:老虎机N个老虎机每个老虎机概率为 pi的产生收益目标:最大化整个过程中的收益

假设: Pay与环境无关 Contexutal:

Pay与环境相关,环境 +广告由一堆 feature 表示feature对老虎机 pay的影响与时间无关,只与老虎机相关,即对每个老虎机做了个线性model

choosing best arm(result) for all users

p1 p2 pn

Page 17: Ee 想说爱你不容易

问题的变种 -contextual

Contextual: Pay与环境相关,不再是常数 -难!E-greedy->epoch-greedy O(T^2/3)

UCB->freq method• 一般需要加一些更强的假设• 如 linear assumption下的 linUCB

Thompson-sampling->bayes prior• such as Gittins index method• 需要 offline对 prior 做很好的估计• 一般计算代价大,且没有近似方法

Page 18: Ee 想说爱你不容易

问题的变种 -contextual

LinUCB 假设:Pay与环境相关,环境 +广告用一堆 feature 表示feature对老虎机 pay的影响与时间无关,只与老虎机相关,即对每个老虎机做了个线性model

数学表示:

求解方法:

不同的 Ut,只决定了 Xt,a的取值的多少,不影响参数

实操感觉很蛋疼,每个广告样本自积累数据计算参数如果有较多的数据,为什么不直接用 LR 呢?还能积累泛化特征

Page 19: Ee 想说爱你不容易

问题的变种 -contextual

LinUCB 假设:Pay与环境相关,环境 +广告用一堆 feature 表示feature对老虎机 pay的影响与时间无关,只与老虎机相关,即对每个老虎机做了个线性model

数学表示:

求解方法:

不同的 Ut,只决定了 Xt,a的取值的多少,不影响参数

Improve:arm 之间是有关联的Beta与 arm 无关,是共享的注意若 theta 退化为空,就是个线性model

Page 20: Ee 想说爱你不容易

实操需要注意的问题 框架对反馈的时效性要求很大

每次的参数都依赖于上一次所有的点击和展现,因此点击必须实时传回 e&e 系统实际操作一般会是每隔一段时间批量更新,会有效率的损失

随机带来的排序不稳定每次排序都是不稳定的,因此刷新会带来排序的完全变更,用户体验不好一般都会按照 cookieid,一段时间再更新,这又会有部分效率的损失

Page 21: Ee 想说爱你不容易

当 E&E遇上 LR

冷启动 E&E+LR VS LR

Page 22: Ee 想说爱你不容易

当 E&E遇上 LR

实际经验表明:自然搜索时,在没有用到 LR的情况下,上 explore效果好广告搜索在没有 LR的情况下,上 explore效果好,但是好不过直接后验(即只是 exploit在起作用)广告搜索在有 LR的情况下,怎么试都很难超越 LR,且探测的新广告能很快被 LR 吸收— LR 吸收效率比 E&E高

为什么?分场景分析场景一:冷启动场景二: LR对某些 case 存在 bias

Page 23: Ee 想说爱你不容易

场景一:冷启动 假象:系统刚启动的时候, LR数据不够

广告库主体变化不大( VS新闻系统)初期数据不够,有 overfitting对广告系统不是坏事 - 持续好的 pay

在我们的应用场景,一天的数据足够训练 auc不错的 LR,该 LR通过泛化特征做 explore

E&E 自身局限性:前提:均值的估计• 粒度太小:样本收敛慢• 粒度太大:均值不稳定• 广告系统环境因素太多,粒度小到 query-广告都不够

Page 24: Ee 想说爱你不容易

场景二: LR 存在 bias,某些新广告出不来 撞大运:很难在线上收到预期效果

前提:大量好的广告在泛化特征上打分很低即使前提成立:• 直接无目标的 explore,很难保证正好撞上• 如果仔细分析,并发现这些 case,似乎不如研究泛化特征怎么改进

EE的学习效率比 LR低太多了探测出来的样本能很快被 LR学去原因:• E&E是对单样本做的学习,样本与样本之间没有关联• LR是对样本的特征做的学习,一个样本会同时带来多个特征的更新

Page 25: Ee 想说爱你不容易

附录一 已知广告点击概率为 p,需要展现多少次,才能使得后验点击率与 p的误差小于 5%

广告的点击率抽样分布的均值为 p,方差为 sqrt(p(1-p)/N) 如果考虑 3 倍的置信度: (p + 1.96*sqrt(p(1-p)/N) – p)/p < 5% N=1536*(1-p)/p

Page 26: Ee 想说爱你不容易

附录二:参考资料 理解共轭分布

http://wenku.baidu.com/view/a542dbf2770bf78a6529546a.html?st=1

Beta分布性质http://cos.name/2013/01/lda-math-beta-dirichlet/

Introduction to Bandits: Algorithms and theoryICML 2011 Jean-Yves Audibert & Remi Munos

A Contextual-Bandit Approach to Personalized News Article Recommendation

WWW 2010 Lihong Li