Bandit Algorithm教材学习笔记
文章目录
- 参考资料
- 1 Part 3 Adversarial Bandits with Finitely Many Arms
- 参考资料
- 1.1 adversarial bandit基本内容
- 1.2 Exp3算法及其regret分析
- 1.2.1 证明:R(π,x)≤2nklog(k)R(\pi,x) \leq 2 \sqrt{nklog(k)}R(π,x)≤2nklog(k)
- 1.2.2 证明:R(π,x)≤2nklog(k)R(\pi,x) \leq \sqrt{2nklog(k)}R(π,x)≤2nklog(k)
- 1.2.3 两种证明的比较
- 1.3 Exp3-IX算法及其regret分析
- 2 Part 5 Contextual and Linear Bandits
- 参考资料
- 2.1 Contextual Bandits
- 2.1.1 专家建议以及Exp4Exp4Exp4
- 2.2 Stochastic Linear Bandits
- 2.2.1 LinUCBLinUCBLinUCB算法
- 2.3.2 补充:范数相关内容
- 2.2.2 regretregretregret分析
- 2.2.3 θ\thetaθ的置信区间分析
- 2.3 Sparse linear bandits
- 2.3.1 SETCSETCSETC算法
- 2.3.2 online linear predication
- 2.4 Lower Bounds for Stochastic Linear Bandits
- 2.4.1 hypercube
- 2.4.2 sparse
- 2.4.3 Misspecified Models
参考资料
https://banditalgs.com/2016/08/01/table-of-contents/
https://tor-lattimore.com/downloads/talks/2018/aaai/finite-armed-bandits.pdf
教材的官网讲解
https://www.bilibili.com/read/cv6567364/
https://www.bilibili.com/video/BV1ki4y1x7cE
滴滴推荐系统的讲座,讲到了MBA和Contextual Banditshttps://www.cnblogs.com/kuliuheng/p/13808346.html
UCBUCBUCB的讲解
1 Part 3 Adversarial Bandits with Finitely Many Arms
参考资料
- https://banditalgs.com/2016/10/01/adversarial-bandits
1.1 adversarial bandit基本内容
和stochastic bandit相比,adversarial bandit的主要区别主要在于rewardrewardreward是如何生成的,stochastic的rewardrewardreward是根据一个确定的分布(如高斯)生成的;adversarial的rewardrewardreward是由环境 ν=(x1,…,xn)∈[0,1]Kn\nu = (x_1,\dots,x_n)\in [0,1]^{Kn}ν=(x1,…,xn)∈[0,1]Kn给出,相当于adversary从一个表中给出rewardrewardreward。
stochastic的UCBUCBUCB算法每一轮选择的arm是确定的,即当置信区间上界(UCB)最高的那一个;而adversarial的Exp3Exp3Exp3算法选择arm是不确定的,每一轮会生成一个关于kkk个arm的概率分布Pt1,Pt2,...PtkP_{t1},P_{t2},...P_{tk}Pt1,Pt2,...Ptk,由概率分布来确定本轮选择的arm。
1.2 Exp3算法及其regret分析
其中估计值X^ti=1−I{At=i}Pti(1−Xt)\hat X_{ti} = 1- \frac{\mathbb{I}{\{A_t=i}\}}{P_{ti}}\,(1-X_t)\,X^ti=1−PtiI{At=i}(1−Xt)
每一轮根据估计值,计算每个arm的概率,根据概率分布去随机选择arm,并不是像UCBUCBUCB那样选择得分最高的那个arm,因此每轮rewardrewardreward就是Et−1[Xt]=∑i=1kPtixti\mathbb{E}_{t-1}[X_t]=\sum_{i=1}^kP_{ti}x_{ti}Et−1[Xt]=∑i=1kPtixti
希望regretregretregret的期望比较小,是nnn的sublinear,达到o(n)o(n)o(n),这样limn→+∞Rnn=0\lim_{n\rightarrow +\infty}\frac{R_n}{n}=0limn→+∞nRn=0
1.2.1 证明:R(π,x)≤2nklog(k)R(\pi,x) \leq 2 \sqrt{nklog(k)}R(π,x)≤2nklog(k)
定义Rn,iR_{n,i}Rn,i,就是把最优arm换成了iii,来计算regretregretregret
Rn,i=∑t=1nxti–E[∑t=1nXt]=E[S^ni]−E[∑t=1n∑i=1kPtiX^ti]=E[S^ni−S^n]R_{n,i} = \sum_{t=1}^n x_{ti} – \mathbb{E}\left[{ \sum_{t=1}^n X_t }\right]=\mathbb{E}\left[{ \hat S_{ni} } \right]-\mathbb{E}\left[\sum_{t=1}^n\sum_{i=1}^k P_{ti} \hat X_{ti} \right]=\mathbb{E}\left[ \hat S_{ni}- \hat S_{n} \right] Rn,i=t=1∑nxti–E[t=1∑nXt]=E[S^ni]−E[t=1∑ni=1∑kPtiX^ti]=E[S^ni−S^n]S^ni=∑tX^tiE[S^ni]=∑t=1nxtiS^n=∑t,iPtiX^ti\\\hat S_{ni}=\sum_{t} \hat X_{ti} \\\mathbb{E}\left[{ \hat S_{ni} }\right] = \sum_{t=1}^n x_{ti} \\ \hat S_n = \sum_{t,i} P_{ti} \hat X_{ti} S^ni=t∑X^tiE[S^ni]=t=1∑nxtiS^n=t,i∑PtiX^ti根据PtiP_{ti}Pti的格式带着expexpexp,仿照其分母,定义
Wt=∑j=1kexp(ηS^tj)W_t = \sum_{j=1}^k \exp\left(\eta\hat S_{tj}\right) Wt=j=1∑kexp(ηS^tj)
WtWt−1=∑jexp(ηS^t−1,j)Wt−1exp(ηX^tj)=∑jPtjexp(ηX^tj)≤1+η∑jPtjX^tj+η2∑jPtjX^tj2≤exp(η∑jPtjX^tj+η2∑jPtjX^tj2)\frac{W_t}{W_{t-1}} = \sum_j \frac{\exp(\eta \hat S_{t-1,j} )}{W_{t-1}} \exp(\eta \hat X_{tj} ) = \sum_j P_{tj} \exp(\eta \hat X_{tj} )\,\\ \le 1 + \eta \sum_j P_{tj} \hat X_{tj} + \eta^2 \sum_j P_{tj} \hat X_{tj}^2 \\\le \exp( \eta \sum_j P_{tj} \hat X_{tj} + \eta^2 \sum_j P_{tj} \hat X_{tj}^2 )\, Wt−1Wt=j∑Wt−1exp(ηS^t−1,j)exp(ηX^tj)=j∑Ptjexp(ηX^tj)≤1+ηj∑PtjX^tj+η2j∑PtjX^tj2≤exp(ηj∑PtjX^tj+η2j∑PtjX^tj2)
利用了exp(x)≤1+x+x2\exp(x) \le 1 + x + x^2exp(x)≤1+x+x2,1+x≤exp(x)1+x \le exp(x)1+x≤exp(x),满足x^tj≤1\hat x_{tj} \le 1x^tj≤1
在这里,使用另外一种放缩,可以得到更好的R(π,x)≤2nklog(k)R(\pi,x) \leq \sqrt{2nklog(k)}R(π,x)≤2nklog(k),在后面讲
对exp(ηS^ni)\exp(\eta \hat S_{ni} )exp(ηS^ni)放缩同时将上面代入,有
exp(ηS^ni)≤∑jexp(η(S^nj))=Wn=W0W1W0…WnWn−1≤kexp(η∑jPtjX^tj+η2∑jPtjX^tj2)\exp(\eta \hat S_{ni} ) \le \sum_{j} \exp(\eta(\hat S_{nj})) = W_n = W_0 \frac{W_1}{W_0} \dots \frac{W_n}{W_{n-1}}\,\\ \le k\exp( \eta \sum_j P_{tj} \hat X_{tj} + \eta^2 \sum_j P_{tj} \hat X_{tj}^2 )\, exp(ηS^ni)≤j∑exp(η(S^nj))=Wn=W0W0W1…Wn−1Wn≤kexp(ηj∑PtjX^tj+η2j∑PtjX^tj2)得到
S^ni–S^n≤log(K)η+η∑t,jPtjX^tj2\hat S_{ni} – \hat S_n \le \frac{\log(K)}{\eta} + \eta \sum_{t,j} P_{tj} \hat X_{tj}^2 S^ni–S^n≤ηlog(K)+ηt,j∑PtjX^tj2其中ytj=1−xtjy_{tj} = 1-x_{tj}ytj=1−xtj,Yt=1−XtY_t=1-X_tYt=1−Xt,拆开平方
令η=log(K)/(nk)\eta = \sqrt{\log(K)/(nk)}η=log(K)/(nk)时,得到结论
Rn≤Rni≤log(K)η+ηnk=2nklog(k)R_n\le R_{ni} \le \frac{\log(K)}{\eta} + \eta n k=2\sqrt{nklog(k)} Rn≤Rni≤ηlog(K)+ηnk=2nklog(k)
1.2.2 证明:R(π,x)≤2nklog(k)R(\pi,x) \leq \sqrt{2nklog(k)}R(π,x)≤2nklog(k)
放缩的时候改变一下策略,应用exp(x)≤1+x+x22exp(x)\le 1+x+\frac{x^2}{2}exp(x)≤1+x+2x2,满足(X^tj−1)≤0( \hat X_{tj}-1)\le 0(X^tj−1)≤0,以及1+x≤exp(x)1+x \le exp(x)1+x≤exp(x)
exp(ηX^tj)=exp(η)exp(η(X^tj−1))≤exp(η){1+η(X^tj−1)+η22(X^tj−1)2}\exp(\eta \hat X_{tj} ) = \exp(\eta) \exp( \eta (\hat X_{tj}-1) ) \le \exp(\eta) \left\{1+ \eta (\hat X_{tj}-1) + \frac{\eta^2}{2} (\hat X_{tj}-1)^2\right\} exp(ηX^tj)=exp(η)exp(η(X^tj−1))≤exp(η){1+η(X^tj−1)+2η2(X^tj−1)2}由∑jPtj=1\sum_j P_{tj}=1∑jPtj=1
WtWt−1=∑jPtjexp(ηX^tj)≤exp(η)[1−η+∑jPtj(ηX^tj+η22(X^tj−1)2)]\frac{W_t}{W_{t-1}}=\sum_j P_{tj} \exp(\eta \hat X_{tj} ) \le exp(\eta)\left[1-\eta +\sum_j P_{tj}\left(\eta \hat X_{tj} + \frac{\eta^2}{2} (\hat X_{tj}-1)^2\right)\right] \\ Wt−1Wt=j∑Ptjexp(ηX^tj)≤exp(η)[1−η+j∑Ptj(ηX^tj+2η2(X^tj−1)2)]exp(η∑jPtjX^tj+η22∑jPtj(X^tj−1)2)\exp\left( \eta \sum_j P_{tj} \hat X_{tj} + \frac{\eta^2}{2} \sum_j P_{tj}(\hat X_{tj}-1)^2\right)\, exp(ηj∑PtjX^tj+2η2j∑Ptj(X^tj−1)2)
令Y^tj=1−X^tj=AtjPtjytj\hat Y_{tj} = 1-\hat X_{tj} = \frac{A_{tj}}{P_{tj}} y_{tj}Y^tj=1−X^tj=PtjAtjytj,
Ptj(X^tj−1)2=PtjY^tjY^tj=AtjytjY^tj≤Y^tj、P_{tj} (\hat X_{tj}-1)^2 = P_{tj} \hat Y_{tj}\hat Y_{tj} = A_{tj} y_{tj}\hat Y_{tj}\le \hat Y_{tj} 、 Ptj(X^tj−1)2=PtjY^tjY^tj=AtjytjY^tj≤Y^tj、
因此
WtWt−1≤=exp(η∑jPtjX^tj+η22∑jY^tj)\frac{W_t}{W_{t-1}} \le %\exp(\eta) \sum_j P_{tj} \left(1+ \eta (\hat X_{tj}-1) + \frac{\eta^2}{2} (\hat X_{tj}-1)^2\right) \ =\exp\left( \eta \sum_j P_{tj} \hat X_{tj} + \frac{\eta^2}{2}\sum_j \hat Y_{tj} \right) Wt−1Wt≤=exp(ηj∑PtjX^tj+2η2j∑Y^tj)和之前一样,将exp(ηS^ni)\exp(\eta \hat S_{ni} )exp(ηS^ni)的放缩代入,有
S^ni–S^n≤log(K)η+η2∑t,jY^tj\hat S_{ni} – \hat S_n \le \frac{\log(K)}{\eta} + \frac{\eta}{2} \sum_{t,j} \hat Y_{tj} S^ni–S^n≤ηlog(K)+2ηt,j∑Y^tj由E(x)=E(Et−1x)\mathbb{E}( x)=\mathbb{E}(\mathbb{E_{t-1}}x)E(x)=E(Et−1x)
E(∑jY^tj)=E(∑jEt−1Y^tj)=E(∑jytj)≤nk\mathbb{E}\left(\sum_j \hat Y_{tj}\right)=\mathbb{E}\left(\sum_j \mathbb{E_{t-1}}\hat Y_{tj}\right)=\mathbb{E}\left(\sum_j y_{tj}\right)\le nk E(j∑Y^tj)=E(j∑Et−1Y^tj)=E(j∑ytj)≤nk
令η=2log(K)/(nk)\eta = \sqrt{2log(K)/(nk)}η=2log(K)/(nk)时,得到结论
Rn≤Rni≤log(K)η+ηnk2=2nklog(k)R_n\le R_{ni} \le \frac{\log(K)}{\eta} + \frac{\eta n k}{2}=\sqrt{2nklog(k)} Rn≤Rni≤ηlog(K)+2ηnk=2nklog(k)
1.2.3 两种证明的比较
比较两个不同的结果,区别就是在放缩WtWt−1=∑jPtjexp(ηX^tj)\frac{W_t}{W_{t-1}}=\sum_j P_{tj} \exp(\eta \hat X_{tj} )Wt−1Wt=∑jPtjexp(ηX^tj)的exp(ηX^tj)\exp(\eta \hat X_{tj} )exp(ηX^tj)部分采用了不同的不等式,最终的差别结果是:
S^ni–S^n≤log(K)η+η∑t,jPtjX^tj2\hat S_{ni} – \hat S_n \le \frac{\log(K)}{\eta} + \eta \sum_{t,j} P_{tj} \hat X_{tj}^2 S^ni–S^n≤ηlog(K)+ηt,j∑PtjX^tj2
S^ni–S^n≤log(K)η+η2∑t,jY^tj\hat S_{ni} – \hat S_n \le \frac{\log(K)}{\eta} + \frac{\eta}{2} \sum_{t,j} \hat Y_{tj} S^ni–S^n≤ηlog(K)+2ηt,j∑Y^tj
可以看到只有后半项是不同的,是采用了不同的不等式的结果。
1.3 Exp3-IX算法及其regret分析
Exp3Exp3Exp3和Exp3−IXExp3-IXExp3−IX的区别:
- Exp3Exp3Exp3关注的是regretregretregret的期望值本身数值,也就是平均值的上限,希望regretregretregret的期望比较小,是nnn的sublinear,达到o(n)o(n)o(n),这样limn→+∞Rnn=0\lim_{n\rightarrow +\infty}\frac{R_n}{n}=0limn→+∞nRn=0
- Exp3−IXExp3-IXExp3−IX算法关注的是是regretregretregret的期望值的分布,也就是方差,希望regretregretregret期望值比较小的同时,分布尽量分布在均值附近,去分析置信区间
算法从之前的估计rewardrewardreward改为估计losslossloss:
Y^ti=I{At=i}YtPti+γ\hat Y_{ti} = \frac{\mathbb{I}\{{A_t=i\}} Y_t}{P_{ti}+\gamma} Y^ti=Pti+γI{At=i}Yt
类比于SSS,定义了losslossloss相关的求和:
{L^n=∑t=1n∑j=1KPt,jY^tjL^ni=∑t=1nY^tiL~n=∑t=1nytAtLni=∑t=1nyti\left\{\begin{matrix} \hat L_n = \sum_{t=1}^n \sum_{j=1}^K P_{t,j} \hat Y_{tj} \\ \hat L_{ni} = \sum_{t=1}^n \hat Y_{ti} \\ \tilde L_n = \sum_{t=1}^n y_{tA_t} \\ L_{ni} = \sum_{t=1}^n y_{ti} \end{matrix}\right. ⎩⎪⎪⎨⎪⎪⎧L^n=∑t=1n∑j=1KPt,jY^tjL^ni=∑t=1nY^tiL~n=∑t=1nytAtLni=∑t=1nyti regretregretregret拆分成若干LLL的差的和,对其中的3个差分别处理
R^ni=∑t=1nxti−∑t=1Xt=–Lni−(−L~n)=(L~n–L^n)+(L^n–L^ni)+(L^ni–Lni)\hat R_{ni} =\sum_{t=1}^nx_{ti}-\sum_{t=1}X_t = – L_{ni} -(-\tilde L_n) = (\tilde L_n – \hat L_n) + (\hat L_n – \hat L_{ni}) + (\hat L_{ni} – L_{ni}) R^ni=t=1∑nxti−t=1∑Xt=–Lni−(−L~n)=(L~n–L^n)+(L^n–L^ni)+(L^ni–Lni)分别对(L~n–L^n)、(L^n–L^ni)、(L^ni–Lni)(\tilde L_n – \hat L_n)、(\hat L_n – \hat L_{ni})、(\hat L_{ni} – L_{ni})(L~n–L^n)、(L^n–L^ni)、(L^ni–Lni)分析
对于(L^n–L^ni)(\hat L_n – \hat L_{ni})(L^n–L^ni):
利用Exp3Exp3Exp3证明的第二种不等式情况:
S^ni–S^n≤log(K)η+η2∑t,jY^tj\hat S_{ni} – \hat S_n \le \frac{\log(K)}{\eta} + \frac{\eta}{2} \sum_{t,j} \hat Y_{tj} S^ni–S^n≤ηlog(K)+2ηt,j∑Y^tj而
S^ni–S^n=∑tX^ti−∑t,iPtiX^ti=–L^ni−(−(L^n))\hat S_{ni} – \hat S_n = \sum_{t} \hat X_{ti}- \sum_{t,i} P_{ti} \hat X_{ti}= – \hat L_{ni}-\left(-(\hat L_n)\right) S^ni–S^n=t∑X^ti−t,i∑PtiX^ti=–L^ni−(−(L^n))因此
L^n–L^ni≤log(K)η+η2∑jL^nj\hat L_n – \hat L_{ni} \le \frac{\log(K)}{\eta} + \frac{\eta}{2} \sum_{j} \hat L_{nj} L^n–L^ni≤ηlog(K)+2ηj∑L^nj
对于(L~n–L^n)(\tilde L_n – \hat L_n)(L~n–L^n):
∑jAtjytj–∑jPtjY^tj=∑j(1–PtjPtj+γ)Atjytj=γ∑jAtjPtj+γytj=γ∑jY^tj.(L~n–L^n)=∑t(∑jAtjytj–∑jPtjY^tj)=γ∑t∑jY^tj=γ∑jL^nj\sum_j A_{tj} y_{tj} – \sum_j P_{tj} \hat Y_{tj} = \sum_j \left(1 – \frac{P_{tj}}{P_{tj}+\gamma} \right) \, A_{tj} y_{tj} = \gamma \sum_j \frac{A_{tj}}{P_{tj}+\gamma} y_{tj} = \gamma \sum_j \hat Y_{tj}\,. \\ (\tilde L_n – \hat L_n)=\sum_t\left(\sum_j A_{tj} y_{tj} – \sum_j P_{tj} \hat Y_{tj} \right)=\gamma \sum_t\sum_j \hat Y_{tj}=\gamma \sum_j \hat L_{nj} j∑Atjytj–j∑PtjY^tj=j∑(1–Ptj+γPtj)Atjytj=γj∑Ptj+γAtjytj=γj∑Y^tj.(L~n–L^n)=t∑(j∑Atjytj–j∑PtjY^tj)=γt∑j∑Y^tj=γj∑L^nj
对于(L^ni–Lni)(\hat L_{ni} – L_{ni})(L^ni–Lni):
用了一个引理,在这里暂时不证明了,只说结论:
ati、Y~ti、λtia_{ti}、\tilde Y_{ti}、\lambda_{ti}ati、Y~ti、λti是序列δ∈(0,1)\delta \in (0,1)δ∈(0,1),类似于记录之前选择的arm的序列,例如{A1,X1,…,At−1,Xt−1}\{A_1,X_1,\dots,A_{t-1},X_{t-1}\}{A1,X1,…,At−1,Xt−1}这个样子
P(∑t,iαti(Y~ti1+λti–yti)≥log(1δ))≤δ\mathbb{P}\left(\sum_{t,i} \alpha_{ti} \left( \frac{\tilde Y_{ti}}{1+\lambda_{ti}} – y_{ti} \right) \ge \log\left( \frac1\delta \right)\right)\le\delta P(t,i∑αti(1+λtiY~ti–yti)≥log(δ1))≤δ
Y~ti\tilde Y_{ti}Y~ti的条件要求:
对于(L^ni–Lni)(\hat L_{ni} – L_{ni})(L^ni–Lni):
∑i(L^ni–Lni)=∑tiAtiytiPti+γ–yti=12γ∑ti2γ(11+γPtiAtiytiPti–yti)\sum_i (\hat L_{ni} – L_{ni} ) = \sum_{ti} \frac{A_{ti}y_{ti}}{ P_{ti}+\gamma } – y_{ti} = \frac{1}{2\gamma} \, \sum_{ti} 2\gamma \left( \frac{1}{1+\frac{\gamma}{P_{ti}}}\frac{A_{ti} y_{ti}}{ P_{ti} } – y_{ti}\right) i∑(L^ni–Lni)=ti∑Pti+γAtiyti–yti=2γ1ti∑2γ(1+Ptiγ1PtiAtiyti–yti)
利用引理,取λti=γPti、Y~ti=AtiytiPti、αti=2γ\lambda_{ti} = \frac{\gamma}{P_{ti}}、\tilde Y_{ti} = \frac{A_{ti} y_{ti}}{ P_{ti} }、\alpha_{ti} = 2\gammaλti=Ptiγ、Y~ti=PtiAtiyti、αti=2γ
证明Y~ti\tilde Y_{ti}Y~ti满足条件要求:
- ∏iAti=0\prod _i A_{ti}=0∏iAti=0,因此∏iY~ti=0\prod _i\tilde Y_{ti}=0∏iY~ti=0
- Et−1[Y~ti]=yti\mathbb{E}_{t-1}\left[\tilde Y_{ti}\right]=y_{ti}Et−1[Y~ti]=yti
因此通过引理得到
P(∑i(L^ni–Lni)≥log(1/δ’)2γ)≤δ′P(max(L^ni–Lni)≥log(1/δ’)2γ)≤δ′<δ\mathbb{P}\left(\sum_i (\hat L_{ni} – L_{ni} ) \ge \frac{\log(1/\delta’)}{2\gamma}\right) \le \delta'\\ \mathbb{P}\left(\max (\hat L_{ni} – L_{ni} ) \ge \frac{\log(1/\delta’)}{2\gamma}\right) \le \delta'<\delta P(i∑(L^ni–Lni)≥2γlog(1/δ’))≤δ′P(max(L^ni–Lni)≥2γlog(1/δ’))≤δ′<δ
在这里δ′=δ1+k\delta'=\frac{\delta}{1+k}δ′=1+kδ
综上,处理regretregretregret整体:
R^ni=(L~n–L^n)+(L^n–L^ni)+(L^ni–Lni)\hat R_{ni} = (\tilde L_n – \hat L_n) + (\hat L_n – \hat L_{ni}) + (\hat L_{ni} – L_{ni}) R^ni=(L~n–L^n)+(L^n–L^ni)+(L^ni–Lni)
首先对(L^n–L^ni)(\hat L_n – \hat L_{ni})(L^n–L^ni):
R^ni≤log(k)η+η2∑jLnj+(L~n–L^n)+(L^ni–Lni)\hat R_{ni} \le \frac{\log(k)}{\eta} + \frac{\eta}{2}\, \sum_{j} L_{nj}\,\, + (\tilde L_n – \hat L_n) + (\hat L_{ni} – L_{ni}) R^ni≤ηlog(k)+2ηj∑Lnj+(L~n–L^n)+(L^ni–Lni)
之后对(L~n–L^n)(\tilde L_n – \hat L_n)(L~n–L^n):
R^ni≤log(k)η+(η2+γ)∑jL^nj+(L^ni–Lni)\hat R_{ni} \le \frac{\log(k)}{\eta} + {\left(\frac\eta{2}+\gamma \right)} \sum_{j} \hat L_{nj}+ (\hat L_{ni} – L_{ni}) R^ni≤ηlog(k)+(2η+γ)j∑L^nj+(L^ni–Lni)
最后对(L^ni–Lni)(\hat L_{ni} – L_{ni})(L^ni–Lni),在至少1−δ1-\delta1−δ 概率下有
R^ni≤log(k)η+(η2+γ)∑jL^nj+max(L^ni–Lni)≤log(k)η+(η2+γ)(Lni+log(k+1δ)2γ))+log(k+1δ)2γ≤log(K)η+(η2+γ)nk+(γ+η2+1)log(k+1δ)2γ\hat R_{ni} \le \frac{\log(k)}{\eta} + {\left(\frac\eta{2}+\gamma \right)} \sum_{j} \hat L_{nj}+ \max(\hat L_{ni} – L_{ni}) \\ \le \frac{\log(k)}{\eta} + \left(\frac{\eta}{2}+\gamma\right)\left(L_{ni}+\frac{ \log( \frac{k+1}{\delta} )}{2\gamma}) \right)+ \frac{ \log( \frac{k+1}{\delta} )}{2\gamma} \\ \le \frac{\log(K)}{\eta} + \left(\frac{\eta}{2}+\gamma\right) nk+ \left(\gamma+\frac{\eta}{2}+1\right) \frac{ \log( \frac{k+1}{\delta} )}{2\gamma} R^ni≤ηlog(k)+(2η+γ)j∑L^nj+max(L^ni–Lni)≤ηlog(k)+(2η+γ)(Lni+2γlog(δk+1)))+2γlog(δk+1)≤ηlog(K)+(2η+γ)nk+(γ+2η+1)2γlog(δk+1)
结论:
令η=2log(K+1)nK\eta = \sqrt{\frac{2\log(K+1)}{nK}}η=nK2log(K+1),γ=η/2\gamma = \eta/2γ=η/2,得
P(R^n≥8nklog(k+1)+nk2log(k+1)log(1δ)+log(1+kδ))≤δ\mathbb{P}\left(\hat R_n \ge \sqrt{8 nk\log(k+1)} +\sqrt{ \frac{nk}{2\log(k+1)} }\log(\frac{1}{\delta})+ \log(\frac{1+k}{\delta})\right)\le \delta P(R^n≥8nklog(k+1)+2log(k+1)nklog(δ1)+log(δ1+k))≤δ
令η=log(K)+log(K+1δ)nK\eta = \sqrt{\frac{\log(K)+\log(\frac{K+1}{\delta})}{nK}}η=nKlog(K)+log(δK+1),γ=η/2\gamma = \eta/2γ=η/2,得
P(R^n≥2(2log(K+1)+log(1/δ))nK+log(K+1δ))≤δ\mathbb{P}\left(\hat R_{n} \ge 2 \sqrt{ (2\log(K+1) + \log(1/\delta) ) nK } + \log\left(\frac{K+1}{\delta}\right)\right)\le \delta P(R^n≥2(2log(K+1)+log(1/δ))nK+log(δK+1))≤δ
2 Part 5 Contextual and Linear Bandits
以往的UCBUCBUCB、Exp3Exp3Exp3等算法多应用在偏静态的环境中,并且适用于轮数比较少的情况,也就是说actionactionaction比较少。
对于现实环境,比如广告系统,会比以往的条件更复杂,首先可能做要非常多(如上千轮)的actionactionaction,还有算法运行访问用户和广告的上下文信息,还有rewardrewardreward会是某些特征的函数(如线性函数),还有可能rewardrewardreward存在延迟,等等。
参考资料
https://banditalgs.com/2016/10/14/exp4/
https://banditalgs.com/2016/10/19/stochastic-linear-bandits/
https://banditalgs.com/2016/11/21/sparse-stochastic-linear-bandits/
https://banditalgs.com/2016/10/20/lower-bounds-for-stochastic-linear-bandits/
官网对应章节
https://www.bilibili.com/read/cv6567364/
https://www.bilibili.com/video/BV1ki4y1x7cE
滴滴推荐系统的讲座,讲到了MBA和Contextual Bandits
https://www.youtube.com/watch?v=r-e6ij2H-y4
LinUCBLinUCBLinUCB的动态效果展示,展示了confidence set那个椭圆在缩小、θ^t\hat \theta_tθ^t在逼近θ∗\theta_*θ∗,最优arm的被选择次数在不断增加
https://www.youtube.com/watch?v=13G8tO5gyNY
https://sites.ualberta.ca/~szepesva/papers/online-to-confidenceset.pdf
微软讲座,讲到了LinUCBLinUCBLinUCB和online linear predication
Part 5重点是linear bandits部分,包括其中的最小二乘估计、confidence set、LinUCBLinUCBLinUCB等相关的内容
contextual bandits实际上是给linear bandits做铺垫的,相比起来不重要。
linear bandits就是将r=<θ∗,At>r=\left<\theta*,A_t\right>r=⟨θ∗,At⟩,重点是如何去估计未知的θ∗\theta_*θ∗
LinUCBLinUCBLinUCB算法重点是对θ∗\theta_*θ∗的confidence set,是一个椭圆;有了这个就可以计算每个arm的UCBUCBUCB值,和之前的UCBUCBUCB算法类似
在θ∗\theta_*θ∗稀疏条件下,有SETCSETCSETC和online linear predication,前者从重点是令Ati∈{−1,0,1}A_{ti}\in \{-1,0,1\}Ati∈{−1,0,1},后者的重点通过调用一个online algorithm来构造confidence set
2.1 Contextual Bandits
Contextual Bandits和MAB最大的区别就是,应用Contextual Bandits时,每轮中,都会收到额外的信息,如用户自带的一些特征,每一轮都要根据不同的用户来做出针对用户的选择。之前的算法都是忽略这些额外信息的,这样做出的选择可能是一种”大众化“的最优,对所有用户都是一样的,没有针对性。
共性是,两者都需要做一个序列化的决策,去最大化整个过程的收益,再根据用户的feedback,去动态更新模型。
在adversarial bandit下,引入上下文ct∈Cc_t\in \mathcal{C}ct∈C,每一轮在做选择之前,都会先收到一个ctc_tct。
拿推荐系统举例的话,如果给用户推荐电影,每个arm的得分xyix_{yi}xyi就相当于每个电影的评分,评分越高的电影越值得推荐,此外,也要考虑上下文信息ctc_tct,例如当前来的用户更喜欢科幻片,再比如过年期间大家喜欢看喜剧片,得分高的电影,在不同的上下文环境下,效果不一定是好的。
计算regretregretregret时,是要针对每个上下文进行累加:
Rn=E[∑c∈Cmaxi∈[k]∑t:ct=c(xt,i−Xt)]R_n = \mathbb{E}\left[\sum_{c\in \mathcal{C} } {\max_{i\in [k]} \sum_{t: c_t=c} (x_{t,i}-X_t)}\right] Rn=E[c∈C∑i∈[k]maxt:ct=c∑(xt,i−Xt)]
若上下文集合C\mathcal{C}C是可枚举的:
Rnc≤2klog(k)∑t=1nI{ct=c}Rn≤∑c∈CRnc≤2∑c∈Cklog(k)∑t=1nI{ct=c}R_{nc}\le2 \sqrt{k \log(k) \sum_{t=1}^n\mathbb{I}\{c_t=c\} } \\R_n \le \sum_{c\in \mathcal{C} }R_{nc} \le 2\sum_{c\in \mathcal{C} } \sqrt{k\log(k)\sum_{t=1}^n\mathbb{I}\{c_t=c\}} Rnc≤2klog(k)t=1∑nI{ct=c}Rn≤c∈C∑Rnc≤2c∈C∑klog(k)t=1∑nI{ct=c}
因为∑c∈C∑t=1nI{ct=c}=n\sum_{c\in \mathcal{C} }\sum_{t=1}^n\mathbb{I}\{c_t=c\}=n∑c∈C∑t=1nI{ct=c}=n,则根据不等式可知(右边是代入所有上下文平均出现的情况)
Rn≤2∑c∈Ck∣C∣log(k)R_n \ \le 2\sum_{c\in \mathcal{C} } \sqrt{k|\mathcal{C}| \log(k)} Rn ≤2c∈C∑k∣C∣log(k)注意一点:
∑t=1nXt≥Sn–2∑c∈Ck∣C∣log(k){\sum_{t=1}^n X_t} \ge S_n – 2\sum_{c\in \mathcal{C} } \sqrt{k|\mathcal{C}| \log(k)} t=1∑nXt≥Sn–2c∈C∑k∣C∣log(k)
当n≤4k∣C∣log(k)n \le 4k|\mathcal{C}| \log(k)n≤4k∣C∣log(k)时,∑t=1nXt{\sum_{t=1}^n X_t}∑t=1nXt值是负的,无效的,说明当上下文类型比较多的时候,需要足够多的nnn,才能保证计算的regretregretregret是有效的。
2.1.1 专家建议以及Exp4Exp4Exp4
用户信息可能包含的特征很多,如年龄、性别、爱好等等,因此用户信息的类别也可能会很多,直接去分析庞大的用户信息会比较麻烦,在这里引入专家,让专家来直接告诉系统,当前用户选择哪个arm更好,或者说给出所有arm的一个概率分布。
设ϕ\phiϕ是一个C→[k]\mathcal{C} \rightarrow [k]C→[k]的函数,相当于一个专家,能告诉我们当前用户更适合哪个arm,Φ\PhiΦ是全部ϕ\phiϕ的集合,相当于一群专家。
这样我们直接使用Φ\PhiΦ来处理上下文,不需要关注庞大的上下文内容本身,生成Φ\PhiΦ的方法有很多,如划分、相似度、有监督学习等。
adversarial下引入MMM个专家,每个专家在每一轮会分析上下文信息,然后给出每个arm的一个概率分布,告诉系统哪个arm更适合当前用户,之后系统要综合专家建议和rewardrewardreward的估计值,来生成最终的概率分布,然后去随机选择一个arm作为本轮输出。
在第ttt轮,MMM个专家给出概率矩E(t)∈[0,1]M∗kE^{(t)}\in [0,1]^{M*k}E(t)∈[0,1]M∗k,第mmm个专家给出一个概率向量Em(t)E_m^{(t)}Em(t),向量乘积Em(t)xtE_m^{(t)}x_tEm(t)xt就是专家mmm给出的本轮的rewardrewardreward,总regretregretregret写作:
Rn=E[maxm∑t=1nEm(t)xt–∑t=1nXt]R_n = \mathbb{E}\left[{ \max_m \sum_{t=1}^n E_{m}^{(t)} x_{t} – \sum_{t=1}^n X_t }\right] Rn=E[mmaxt=1∑nEm(t)xt–t=1∑nXt]和之前的adversarial相比,这里的最优解是选择一个累计rewardrewardreward最高的专家,而之前是选择一个累计最高的arm。
Exp4Exp4Exp4算法就是Exp3Exp3Exp3算法加上experts建议。
之前regretregretregret分析看出,算法希望找到最好的专家而不是找到最好的arm,因此维护了一个概率分布QtQ_tQt,相当于对每个专家的信任程度,专家贡献的rewardrewardreward越高对应的概率越高,概率越高的专家的建议越容易被参考,最终选择的arm是综合了专家的概率和专家的建议。
初始(1/M,…,1/M)(1/M,\dots,1/M)(1/M,…,1/M),表示每个专家信任程度是一样的,用矩阵X~t=E(t)X^t\tilde X_t = E^{(t)} \hat X_tX~t=E(t)X^t表示每个专家对于每个arm的得分,即专家给出的概率乘以实际的rewardrewardreward。
选择AtA_tAt有两种方法,是一样的:一是计算Pt=QtE(t)P_t = Q_t E^{(t)}Pt=QtE(t),从PtP_tPt中选arm;二是先通过QtQ_{t}Qt选择本轮的专家,之后根据这个专家所说的概率分布选择arm。第一种就是第二种的两部分各自的概率乘起来,是一样的结果。
算法是按照Exp4−IXExp4-IXExp4−IX的格式写的,令γ=0\gamma=0γ=0,就是Exp4Exp4Exp4的格式,接下来分析γ=0\gamma=0γ=0的regretregretregret。
由Exp3Exp3Exp3当时的结论,且Yti=1−XtiY_{ti}=1-X_{ti}Yti=1−Xti:
S^ni−S^n=∑t=1nX^ti–∑t=1n∑j=1KPtjX^tj≤log(M)η+η2∑t,jPtj(1−X^tj)2.\hat S_{ni}-\hat S_n= \sum_{t=1}^n \hat X_{ti} – \sum_{t=1}^n \sum_{j=1}^K P_{tj} \hat X_{tj} \le \frac{\log(M)}{\eta} + \frac{\eta}{2} \sum_{t,j} P_{tj} (1-\hat X_{tj})^2\,. S^ni−S^n=t=1∑nX^ti–t=1∑nj=1∑KPtjX^tj≤ηlog(M)+2ηt,j∑Ptj(1−X^tj)2.
推到Exp4Exp4Exp4的情形,在这里Y~tm=1−X~tm\tilde Y_{tm} = 1-\tilde X_{tm}Y~tm=1−X~tm、Y~t=E(t)Y^t\tilde Y_t = E^{(t)} \hat Y_tY~t=E(t)Y^t、Y^ti=AtiPtiyti\hat Y_{ti} = \frac{A_{ti}}{P_{ti}} y_{ti}Y^ti=PtiAtiyti:
$$
\sum_{t=1}^n \tilde X_{tm} – \sum_{t=1}^n \sum_{m’} Q_{t,m’} \tilde X_{tm’} \le \frac{\log(M)}{\eta}
- \frac{\eta}{2} \sum_{t,m’} Q_{t,m’} (1-\tilde X_{tm’})^2
$$
左边这个就是Rnm=E[maxm∑t=1nEm(t)xt–∑t=1nXt]R_{nm} = \mathbb{E}\left[{ \max_m \sum_{t=1}^n E_{m}^{(t)} x_{t} – \sum_{t=1}^n X_t }\right]Rnm=E[maxm∑t=1nEm(t)xt–∑t=1nXt],因为
Et[X~t]=Et[E(t)X^t]=E(t)Et[X^t]=E(t)xtEt[Xt]=∑m′Qt,m’X~tm’\mathbb{E}_t\left[\tilde X_{t} \right]=\mathbb{E}_t\left[E^{(t)}\hat X_{t} \right]=E^{(t)}\mathbb{E}_t\left[\hat X_{t} \right]=E^{(t)}x_t \\ \mathbb{E}_t\left[X_t\right]=\sum_{m'}Q_{t,m’}\tilde X_{tm’} Et[X~t]=Et[E(t)X^t]=E(t)Et[X^t]=E(t)xtEt[Xt]=m′∑Qt,m’X~tm’
因此:
Rn≤Rnm≤log(M)η+η2E[∑t∑m′Qt,m’(1−X~tm’)2]R_n \le R_{nm} \le \frac{\log(M)}{\eta} + \frac{\eta}{2}\, \mathbb{E}\left[\sum_{t}\sum_{m'} Q_{t,m’} (1-\tilde X_{tm’})^2\right] Rn≤Rnm≤ηlog(M)+2ηE[t∑m′∑Qt,m’(1−X~tm’)2]
对左边的Y~tm=1−X~tm\tilde Y_{tm} = 1-\tilde X_{tm}Y~tm=1−X~tm放缩:
Et−1[Y~tm2]=Et−1[(Em,At(t)yt,AtPt,At)2]=∑i=1k(Em,i(t))2yt,i2Pti≤∑i=1kEm,i(t)Pti\mathbb{E}_{t-1}\left[ \tilde Y_{tm}^2 \right] =\mathbb{E}_{t-1}\left[ \left(\frac{E^{(t)}_{m,A_t} y_{t,A_t}}{P_{t,A_t}}\right)^2\right] = \sum_{i=1}^k \frac{(E^{(t)}_{m,i})^2 y_{t,i}^2}{P_{ti}} \le \sum_{i=1}^k \frac{E^{(t)}_{m,i} }{P_{ti}} Et−1[Y~tm2]=Et−1⎣⎡(Pt,AtEm,At(t)yt,At)2⎦⎤=i=1∑kPti(Em,i(t))2yt,i2≤i=1∑kPtiEm,i(t)
因此RnR_nRn的右边那一项:
E[∑mQtmY~tm2]≤E[∑mQtm∑iEm,i(t)Pti]=E[∑i=1k∑mQtmEm,i(t)Pti]=k\mathbb{E}\left[ \sum_m Q_{tm} \tilde Y_{tm}^2 \right] \le \mathbb{E}\left[\sum_m Q_{tm} \sum_i \frac{E^{(t)}_{m,i} }{P_{ti}} \right] =\mathbb{E}\left[\sum_{i=1}^k \frac{\sum_mQ_{tm}E^{(t)}_{m,i} }{P_{ti}}\right]=k E[m∑QtmY~tm2]≤E[m∑Qtmi∑PtiEm,i(t)]=E[i=1∑kPti∑mQtmEm,i(t)]=k
结论是
Rn≤log(M)η+ηnk2=2nklog(M)R_n \le \frac{\log(M)}{\eta }+\frac{\eta nk}{2}=\sqrt{2nk\log(M)} Rn≤ηlog(M)+2ηnk=2nklog(M)
换一种思路,考虑之前的结论
Rn≤2∑c∈Ck∣C∣log(k)R_n \ \le 2\sum_{c\in \mathcal{C} } \sqrt{k|\mathcal{C}| \log(k)} Rn ≤2c∈C∑k∣C∣log(k)
这里是通过函数,将∣C∣|\mathcal{C}|∣C∣个上下文映射到kkk个arm,取∣Φ∣=k∣C∣|\Phi|=k^{|\mathcal{C}|}∣Φ∣=k∣C∣,让每一种情况都有,因此
Rn≤2nklog(∣Φ∣)R_n \le\sqrt{2nk\log(|\Phi|)} Rn≤2nklog(∣Φ∣)
∣Φ∣|\Phi|∣Φ∣实际上就是专家数量。
2.2 Stochastic Linear Bandits
在引入了上下文的rewardrewardreward下:
Xt=r(Ct,At)+ηtX_t = r(C_t,A_t) + \eta_t Xt=r(Ct,At)+ηt
其中r:C×[k]→Rr:\mathcal{C} \times [k]\to \Rr:C×[k]→R是rewardfunctionreward \,functionrewardfunction,$ \eta_t$是噪声
对于从1到ttt的观测序列Ft=σ(C1,A1,X1…Ct−1,At−1,Xt−1,Ct,At)\mathcal{F}_t=\sigma(C_1,A_1,X_1 \dots C_{t-1},A_{t-1},X_{t-1},C_t,A_t)Ft=σ(C1,A1,X1…Ct−1,At−1,Xt−1,Ct,At),η\etaη是σ−subgaussian\sigma-subgaussianσ−subgaussian的,且σ2=1\sigma^2=1σ2=1,即
E[exp(ληt)∣Ft]≤exp(λ22)\mathbb{E}\left[{ \exp( \lambda \eta_t ) | \mathcal{F}_t }\right] \le \exp(\frac{\lambda^2}{2}) E[exp(ληt)∣Ft]≤exp(2λ2)
subgaussian随机变量的平均值会是0,即E[ηt∣Ft]=0\mathbb{E}\left[\eta_t |\mathcal{F}_t \right] = 0E[ηt∣Ft]=0,因此$\mathbb{E}\left[X_t|\mathcal{F}_t \right]=r(C_t,A_t) $
在Linear Bandits下,rewardrewardreward是特征和参数的线性组合,那我们在这里就不用管什么Ct,AtC_t,A_tCt,At了,直接拿特征去计算就好了,否则我们需要对(c,a)∈C×[k](c,a) \in \mathcal{C} \times [k](c,a)∈C×[k],每一种组合都要单独估计一个rrr,情况太多了。
上下文和arm都是输入的内容,特征值也是人为选择的,可以由这些上下文和arm求出来,如用户的年龄、电影的类别等等,唯一不知道的就是每个特征对应的参数是什么,需要通过rewardrewardreward值来学习这些模型的参数。
令r(c,a)r(c,a)r(c,a)写作:
r(c,a)=<θ∗,ψ(c,a)>∀(c,a)∈C×[K]r(c,a) = \left<\theta_*, \psi(c,a)\right> \qquad \forall (c,a) \in \mathcal{C}\times [K] r(c,a)=⟨θ∗,ψ(c,a)⟩∀(c,a)∈C×[K]
其中ψ:C×[K]→Rd\psi: \mathcal{C} \times [K] \to \R^dψ:C×[K]→Rd是feature map(已知的),就相当于把输入的上下文和arm的组合(c,a)(c,a)(c,a)提取出了参数,变成了一个ddd维的feature vector;θ∗\theta_*θ∗是模型的parameter vactor(未知的)。两个向量的内积就是rrr。
我们只关注feature vector,在每一轮中,候选的不再是arm的编号,而是feature vector的集合At⊂Rd\mathcal{A}_t \subset \mathbb{R}^dAt⊂Rd,从中选择一个At∈AtA_t \in \mathcal{A}_tAt∈At,每轮获得的rewardrewardreward就是
Xt=<At,θ∗>+ηtX_t = \left<{A_t,\theta_*}\right> + \eta_t Xt=⟨At,θ∗⟩+ηt
为了和之前统一,就把feature vector叫做arm。
每轮都会有一个最优的arm aaa,regretregretregret的估计值和期望分别是
R^n=∑t=1nmaxa∈At<θ∗,a>Rn=E[R^n]=E[∑t=1nmaxa∈At<θ∗,a>–∑t=1nXt]\hat R_n=\sum_{t=1}^n \max_{a\in \mathcal{A}_t}\left<{\theta_*,a}\right> \\R_n =\mathbb{E}\left[\hat R_n \right] = \mathbb{E}\left[{ \sum_{t=1}^n \max_{a\in \mathcal{A}_t} \left<{\theta_*,a}\right> – \sum_{t=1}^n X_t }\right] R^n=t=1∑na∈Atmax⟨θ∗,a⟩Rn=E[R^n]=E[t=1∑na∈Atmax⟨θ∗,a⟩–t=1∑nXt]
如果At={e1,…,ed}\mathcal{A}_t = \{e_1,\dots,e_d\}At={e1,…,ed},且eie_iei是正交单位向量,如e1={1,0,0…},e2={0,1,0,…}e_1=\{1,0,0 \dots\},e_2=\{0,1,0,\dots\}e1={1,0,0…},e2={0,1,0,…},则问题就回到了stochastic bandits,估计θ∗\theta_*θ∗就等同于估计每个arm的rewardrewardreward。
2.2.1 LinUCBLinUCBLinUCB算法
在UCBUCBUCB算法中,每一个候选arm都有一个置信区间,每次选择置信区间上界最大的那个arm。彩条是变量实际的均值,虚线是平均值的估计。
- 参考资料:https://www.cnblogs.com/kuliuheng/p/13808346.html
在这里根据(A1,X1,…,At−1,Xt−1)(A_1,X_1,\dots,A_{t-1},X_{t-1})(A1,X1,…,At−1,Xt−1)构建置信区间(实际上是一个集合)Ct∈Rd\mathcal{C}_t \in \mathbb{R}^dCt∈Rd,具体怎么构建现在暂时不关心,置信区间内一定包含θ∗\theta_*θ∗,就像上面的图里面置信区间一定包含变量实际的均值。
对于每一个候选的feature vector aaa,其置信区间上界为
UCBt(a)=maxθ∈Ct<θ,a>\mathrm{UCB}_t(a) = \max_{\theta\in \mathcal{C}_t} \left<\theta,a\right> UCBt(a)=θ∈Ctmax⟨θ,a⟩
UCBUCBUCB算法就是每轮选择置信区间上界最大的那个AtA_tAt:
At=argmaxa∈AtUCBt(a)A_t = \arg \max_{a\in \mathcal{A}_t} \mathrm{UCB}_t(a) At=arga∈AtmaxUCBt(a)
在Linear Bandits中叫做LinUCBLinUCBLinUCB。
下面介绍构造置信区间的方式,置信区间是θ\thetaθ的集合,需要对θ\thetaθ进行估计,由于Xt=<θ,AT>X_t=\left<\theta,A_T\right>Xt=⟨θ,AT⟩,使用正则化最小二乘估计。
- 参考资料:https://blog.csdn.net/moge19/article/details/85058445
θ^t=argminθ∈Rd(∑s=1t(Xs−<θ,As>)2+λ∣∣θ∣∣22)\hat \theta_t=\arg \min_{\theta \in \mathbb{R^d}} \left(\sum_{s=1}^t\left(X_s-\left<\theta,A_s \right> \right)^2+\lambda ||\theta||^2_2 \right) θ^t=argθ∈Rdmin(s=1∑t(Xs−⟨θ,As⟩)2+λ∣∣θ∣∣22)
解是
θ^t=Vt−1∑s=1tAsXsV0=λIVt=V0+∑s=1tAsAsT\hat\theta_t = V_t^{-1}\sum_{s=1}^t A_sX_s \\V_0 = \lambda I \\V_t=V_0 + \sum_{s=1}^{t} A_s A_s^T θ^t=Vt−1s=1∑tAsXsV0=λIVt=V0+s=1∑tAsAsT
confidence set Ct\mathcal{C}_tCt是一个椭圆,以θ^\hat \thetaθ^为中心,以VtV_tVt的特征向量为长轴方向,特征值的倒数为长轴长度的椭圆,写作
Ct⊂εt={θ∈Rd:∣∣θ−θ^t−1∣∣Vt−12≤βt}\mathcal{C}_t \subset \varepsilon_t = \{\theta\in \R^d \,:\, ||{\theta-\hat \theta_{t-1}}||^2_{V_{t-1}}\le \beta_t \} Ct⊂εt={θ∈Rd:∣∣θ−θ^t−1∣∣Vt−12≤βt}
βt\beta_tβt是一个递增序列,但是增长幅度控制的不大。
用下面这个2维的图来理解,椭圆就是confidence set,对于一个feature vector aaa,在椭圆内部找一个点,从原点到这个点的向量就是一个θ\thetaθ,然后两个向量θ,a\theta,aθ,a的内积就是rrr,UCB(a)UCB(a)UCB(a)就是找一个θ\thetaθ使rrr最大,一般来说θ\thetaθ位于椭圆边界上。每个aaa都能在椭圆内找到一个点达到UCB(a)UCB(a)UCB(a),例如做垂直于aaa的椭圆切线。
图中还分了3个颜色,是说给了3个aaa,当θ∗\theta_*θ∗落在蓝色区域内时,A∗t=a1A_*^t=a_1A∗t=a1,本轮要选择a1a_1a1。
令B2={x∈Rd:∣∣x∣∣2≤1}B_2 = \{x\in \R^d\,:\, ||{x}||_2\le 1\}B2={x∈Rd:∣∣x∣∣2≤1},椭圆可以写作:
Ct=θ^+βt1/2V−1/2B2\mathcal{C}_t = \hat \theta + \beta^{1/2}_t V^{-1/2} B_2 Ct=θ^+βt1/2V−1/2B2
UCBUCBUCB可以写作:
UCBt(a)=<a,θ^>+βt1/2∣∣a∣∣V−1\mathrm{UCB}_t(a) = \left<{a,\hat \theta}\right> + \beta^{1/2}_t ||{a}||_{V^{-1}} UCBt(a)=⟨a,θ^⟩+βt1/2∣∣a∣∣V−1
βt\beta_tβt是已知的,计算式子在后面再说。
和之前的UCBUCBUCB进行对比,都是当前估计值加上一段距离,来表示置信区间的上界。
总的来说,每轮当中:
计算每个arm的UCBUCBUCB值:UCBt(a)=<a,θ^t>+β1/2∣∣a∣∣V−1\mathrm{UCB}_t(a) = \left<{a,\hat \theta_t}\right> + \beta^{1/2} ||{a}||_{V^{-1}}UCBt(a)=⟨a,θ^t⟩+β1/2∣∣a∣∣V−1
选择UCBUCBUCB最大的arm,作为本轮输出AtA_tAt,获取本轮XtX_tXt
更新Vt、θ^tV_t、\hat \theta_tVt、θ^t:
θ^t−1=θ^t+Vt−1AtXt\hat \theta_{t-1}=\hat\theta_t + V_t^{-1} A_tX_tθ^t−1=θ^t+Vt−1AtXt
Vt=Vt−1+AtAtTV_t=V_{t-1}+A_tA_t^TVt=Vt−1+AtAtT
2.3.2 补充:范数相关内容
正定矩阵:V≻0V\succ 0V≻0,满足任意xTVx>0x^TVx>0xTVx>0
∣∣a∣∣V2=xTVx||a||^2_{V}=x^TVx∣∣a∣∣V2=xTVx
∣∣a∣∣V=xTVx||a||_V=\sqrt{x^TVx}∣∣a∣∣V=xTVx,称为矩阵范数
正定矩阵的平方根,是d×dd \times dd×d的
https://blog.csdn.net/creator123123/article/details/86175424
2.2.2 regretregretregret分析
前提条件如下:
- βt\beta_tβt是递增序列
- 任意两个决策之间的rrr(有效取值)之差小于等于1
- feature vector的模小于等于1
- θ∗\theta_*θ∗以1−δ1-\delta1−δ的概率位于椭圆形的confidence set内部
结论:
在概率为1−δ=1−1n1-\delta=1-\frac{1}{n}1−δ=1−n1下,有
Rn=O(dnlog(n))R_n = O\left(d\sqrt{n}\log(n)\right) Rn=O(dnlog(n))
这个RnR_nRn是满足o(n)o(n)o(n)的,即limn→∞Rnn=0\lim_{n\rightarrow \infty }\frac{R_n}{n}=0limn→∞nRn=0
regretregretregret的结论是从如下推出的(以概率1−δ1-\delta1−δ):
R^n≤8nβnlogdetVndetV0≤8dnβnlogtrace(V0)+nL2ddet1/dV0\hat R_n \le \sqrt{ 8 n \beta_{n} \, \log \frac{\det V_{n}}{ \det V_0 } } \le \sqrt{ 8 d n \beta_{n} \, \log \frac{trace(V_0)+n L^2}{ d\det^{1/d} V_0 } } \\ R^n≤8nβnlogdetV0detVn≤8dnβnlogddet1/dV0trace(V0)+nL2
其中
βn=λm2+2log(1δ)+dlogdλ+nL2dλ∣∣θ∗∣∣2≤m2\sqrt{\beta_n}=\sqrt{\lambda}m2+\sqrt{ 2 \log(\frac1\delta) + d\log \frac{d\lambda+nL^2}{d\lambda} } \\||\theta_*||_2\le m2 βn=λm2+2log(δ1)+dlogdλdλ+nL2∣∣θ∗∣∣2≤m2
使用了Elliptical Potential lemma:
∑t=1n1∧∣∣xt∣∣Vt−1−12≤2logdetVndetV0≤dlogtraceV0+nL2ddet1/dV0.\sum_{t=1}^n 1 \wedge ||{x_t}||_{V_{t-1}^{-1}}^2 \le 2 \log \frac{\det V_{n}}{\det V_0} \le d \log \frac{trace V_0+n L^2}{d\det^{1/d} V_0}\,. t=1∑n1∧∣∣xt∣∣Vt−1−12≤2logdetV0detVn≤dlogddet1/dV0traceV0+nL2.
令每轮的最优arm为At∗=argmaxa∈At<a,θ∗>A_t^* = \arg\max_{a\in \mathcal{A}_t} \left<{a,\theta_*}\right>At∗=argmaxa∈At⟨a,θ∗⟩,每轮的regretregretregret为rt=<θ∗,At∗−At>r_t=\left<\theta_*,A_t^*-A_t\right>rt=⟨θ∗,At∗−At⟩
由之前的分析,对于任意的arm,在椭圆上都能找到一个点,使得两个向量内积最大,设本轮的arm是AtA_tAt,对应的parameter vector是θ~t\tilde \theta_tθ~t,则有
<θ∗,At∗>≤UCBt(At∗)≤UCBt(At)=<θ~t,At>\left<{\theta_*,A_t^*}\right>\le UCB_t(A_t^*) \le UCB_t(A_t)=\left<\tilde \theta_t, A_t\right> ⟨θ∗,At∗⟩≤UCBt(At∗)≤UCBt(At)=⟨θ~t,At⟩
rt=<θ∗,At∗−At>≤<θ~t,−θ∗,At>≤∣∣At∣∣Vt−1−1∣∣θ~t−θ∗∣∣Vt−1r_t=\left<\theta_*,A^*_t-A_t\right> \le \left<\tilde \theta_t,-\theta_*,A_t\right> \le ||A_t||_{V^{-1}_{t-1}}||\tilde \theta_t-\theta_*||_{V_{t-1}} rt=⟨θ∗,At∗−At⟩≤⟨θ~t,−θ∗,At⟩≤∣∣At∣∣Vt−1−1∣∣θ~t−θ∗∣∣Vt−1
由条件(b)知rt<1<2r_t<1<2rt<1<2,以及βn≥max(1,βt)\beta_n \ge \max(1,\beta_t)βn≥max(1,βt)因此
rt≤2∧2βt−1∣∣At∣∣Vt−1−1≤2βn−1(1∧∣∣At∣∣Vt−1−1)Rn≤∑trt≤n∑trt2≤2nβn−1∑t(1∧∣∣At∣∣Vt−1−1)r_t \le 2 \wedge 2 \sqrt{\beta_{t-1}} ||{A_t}||_{V_{t-1}^{-1}} \le 2 \sqrt{\beta_{n-1}} (1 \wedge ||{A_t}||_{V_{t-1}^{-1}}) \\R_n \le \sum_t r_t \le \sqrt{n \sum_t r_t^2 } \le 2 \sqrt{n\beta_{n-1} \sum_t(1 \wedge ||{A_t}||_{V_{t-1}^{-1}})} rt≤2∧2βt−1∣∣At∣∣Vt−1−1≤2βn−1(1∧∣∣At∣∣Vt−1−1)Rn≤t∑rt≤nt∑rt2≤2nβn−1t∑(1∧∣∣At∣∣Vt−1−1)
再套用Elliptical Potential lemma可证得结论。
2.2.3 θ\thetaθ的置信区间分析
在估计θ∗\theta_*θ∗的值时,目标函数是
Lt(θ)=∑s=1t(Xs−<θ,As>)2+λ∣∣θ∣∣22L_t(\theta)=\sum_{s=1}^t\left(X_s-\left<\theta,A_s \right> \right)^2+\lambda ||\theta||^2_2 Lt(θ)=s=1∑t(Xs−⟨θ,As⟩)2+λ∣∣θ∣∣22
使目标函数最小,使用的是最小二乘估计:
θt=Vt−1∑s=1tAsXsV0=λIVt=V0+∑s=1tAsAsT\theta_t = V_t^{-1}\sum_{s=1}^t A_sX_s \\V_0 = \lambda I \\V_t=V_0 + \sum_{s=1}^{t} A_s A_s^T θt=Vt−1s=1∑tAsXsV0=λIVt=V0+s=1∑tAsAsT
下面分析每轮对θ\thetaθ的估计值θ^t\hat \theta_tθ^t相当于实际值θ∗\theta_*θ∗如何,分两种情况,第一种情况条件简单一些。
首先在比较简单的条件下进行分析:
- λ=0\lambda=0λ=0,Vt=∑s=1tAsAsTV_t=\sum_{s=1}^tA_sA_s^TVt=∑s=1tAsAsT,这样会要求ttt足够大,使得VtV_tVt是可逆的
- 噪声ηs\eta_sηs是独立的且满足1-subguassian
如果feature vector xxx是已知的,分析<θ^t−θ∗,x>\left<\hat \theta_t-\theta_*,x \right>⟨θ^t−θ∗,x⟩,结论是
P(<θ^t−θ∗,x>≥2∣∣x∣∣Vt−12log1δ)≤δ\mathbb{P}\left(\left<\hat \theta_t-\theta_*,x\right>\ge\sqrt{2||x||_{V_t^{-1}}^2\log{\frac{1}{\delta}}} \right)\le\delta P(⟨θ^t−θ∗,x⟩≥2∣∣x∣∣Vt−12logδ1)≤δ
注意到这个置信区间里面带着xxx。也就是说区间是与xxx有关的,如果xxx是已知的并且只有少量的feature vector,想去拿已知的xxx去对比一下θ\thetaθ的估计值和实际值,是可以的,但是如果xxx未知,也就是说feature vector可选的数量非常大,例如2d2^d2d数量级,就没法算了。
另一个方法是分析∣∣θ^t−θ∗,x∣∣Vt||\hat \theta_t-\theta_*,x||_{V_t}∣∣θ^t−θ∗,x∣∣Vt,结论是
P(∣∣θ^t−θ∗∣∣Vt≥22(dlog(6)+log1δ))≤δ\mathbb{P}\left(||\hat \theta_t-\theta_*||_{V_t}\ge2\sqrt{2\left(d\log(6)+\log{\frac{1}{\delta}}\right) }\right)\le\delta P(∣∣θ^t−θ∗∣∣Vt≥22(dlog(6)+logδ1))≤δ
更复杂一点的情况:
λ>0\lambda>0λ>0,Vt=λI+∑s=1tAsAsTV_t=\lambda I + \sum_{s=1}^{t} A_s A_s^TVt=λI+∑s=1tAsAsT,始终是可逆的
η\etaη只有在连续的做出决策的前提下才满足1-subguassian。
结论是:
P(∣∣θ^t–θ∗∣∣Vt(λ)≥λ∣∣θ∗∣∣2+2log(1δ)+logdetVt(λ)λd)≤δ\mathbb{P}\left({ ||{\hat \theta_t – \theta_*}||_{V_t(\lambda)} \ge \sqrt{\lambda} ||{\theta_*}||_2 + \sqrt{ 2\log(\frac{1}{\delta}) + \log \frac{\det V_t(\lambda)}{\lambda^d} } }\right) \le\delta P(∣∣θ^t–θ∗∣∣Vt(λ)≥λ∣∣θ∗∣∣2+2log(δ1)+logλddetVt(λ))≤δ
2.3 Sparse linear bandits
2.3.1 SETCSETCSETC算法
考虑参数向量θ\thetaθ是稀疏的情况,也就是说包含很多0,可能是人为选取了很多参数,但是有很多参数在模型中不影响最终rewardrewardreward的结果。
定义0-范数,等于向量中不为0的元素个数:∣∣θ∣∣0=∑iI{θi≠0}||\theta||_0=\sum_i\mathbb{I}\{\theta_i \neq 0\}∣∣θ∣∣0=∑iI{θi=0}
考虑arm的取值范围是ddd维空间中的立方体,即At=A=[−1,1]d\mathcal{A}_t=\mathcal{A}=[-1,1]^dAt=A=[−1,1]d,设要估计的参数的实际值是θ\thetaθ,既然AAA的每一个分量都是在[−1,1][-1,1][−1,1],则当θi>0\theta_i>0θi>0时AiA_iAi取1,当θi<0\theta_i<0θi<0时AiA_iAi取-1,当θi=0\theta_i=0θi=0时AiA_iAi取0,这样可以保证rewardrewardreward最大,并且AiA_iAi之间是独立的,即最优解a∗=sign(θ)a^*=sign(\theta)a∗=sign(θ):
在估计θ\thetaθ的过程中,保持着对θi\theta_iθi的置信区间Cit\mathcal{C}_i^tCit,如果置信区间反映不出θ\thetaθ的符号,即0∈Cit0\in \mathcal{C}_i^t0∈Cit,则AiA_iAi的取值就要均匀地从{−1,1}\{-1,1\}{−1,1}中随机选取,如果置信区间不包含0,说明θi\theta_iθi的符号已经确定了,AiA_iAi的取值从此之后也就确定了。
基于这个思路构建了SETCSETCSETC算法:
2.3.2 online linear predication
引入一个online algorithm,使用它去改进之前的confidence set。
设arm AtA_tAt对应的rewardrewardreward是Xt=<θ∗,At>+ηtX_t=\left<\theta_*,A_t\right>+\eta_tXt=⟨θ∗,At⟩+ηt,现在有一个online algorithm,可以输入AtA_tAt,对XtX_tXt进行预测,产生预测值X^t\hat X_tX^t,这个algorithm省略了具体的实现步骤,比如之前的最小二乘,什么算法好就可以用什么。
online algorithm相当于一个实现好了的函数,内部怎样不用管,只是拿来当子函数调用就行。
噪声在观测序列上是满足1-subgaussian的:
E[exp(ληt)∣Ft−1≤exp(λ22)]for all λ∈R\mathbb{E}\left[{ \exp(\lambda \eta_t ) | \mathcal{F}_{t-1} } \le \exp( \frac{\lambda^2}{2} ) \right]\quad \text{for all } \lambda \in \R E[exp(ληt)∣Ft−1≤exp(2λ2)]for all λ∈R
记ρn(θ)\rho_n(\theta)ρn(θ)为online algorithm和使用<θ,At>\left<\theta,A_t\right>⟨θ,At⟩分别进行预测,产生的regretregretregret的平方和的差,就是说有两个模型,一个是online algorithm,另一个是X^t=<θ,At>\hat X_t=\left<\theta,A_t\right>X^t=⟨θ,At⟩,参数是θ\thetaθ。
设无论θ\thetaθ怎么取值,ρn(θ)\rho_n(\theta)ρn(θ)总有上界$ \rho_n(\theta)\le B_n$。
总的步骤就是可以按任意顺序把AtA_tAt输入online algorithm,获取其估计值X^t\hat X_tX^t,用来更新confidence set,之后用真实值XtX_tXt去更新online algorithm(更新的具体步骤也是省略的)
每轮利用online algorithm的预测值来建立对θ∗\theta_*θ∗的confidence set的估计值的预测:
Ct+1={θ∈Rd:∣∣θ∣∣2+∑s=1t(X^s–<As,θ>)2≤βt(δ)}βt(δ)=1+2Bt+32log(8+1+Btδ)C_{t+1} = \{ \theta\in \R^d : ||\theta||_2+\sum_{s=1}^t (\hat X_s – \left<A_s,\theta\right>)^2 \le \beta_t(\delta) \} \\\beta_t(\delta)= 1 + 2 B_t + 32 \log\left( \frac{\sqrt{8}+\sqrt{1+B_t}}{\delta} \right) Ct+1={θ∈Rd:∣∣θ∣∣2+s=1∑t(X^s–⟨As,θ⟩)2≤βt(δ)}βt(δ)=1+2Bt+32log(δ8+1+Bt)
每轮都会产生置信区间,就可以选出最优的arm,再把最优的arm作为输入传给online algorithm,这样可以一直循环下去,就是OLR−UCBOLR-UCBOLR−UCB算法:
OLR−UCBOLR-UCBOLR−UCB算法的regretregretregret期望上界是:
R^n≤8dn(βn−1(δ)+m22)log(1+nd)\hat R_n \le \sqrt{ 8 d n \left(\beta_{n-1}(\delta)+m_2^2\right) \log\left( 1+ \tfrac{n }{ d }\right) } R^n≤8dn(βn−1(δ)+m22)log(1+dn)
对于θ∗\theta_*θ∗是稀疏的情况下,存在特定的online algorithm,可以使得算法的ρ\rhoρ上界为
ρn(θ)≤cX2∣∣θ∣∣0{log(e+n1/2L)+Cnlog(1+∣∣θ∣∣1∣∣θ∣∣0)}+(1+X2)Cn=O(m0logn)c>0,Cn=2+log2log(e+n1/2L)=O(log(logn))\rho_n(\theta) \le c X^2 ||{\theta}||_0 \left\{\log(e+n^{1/2}L) + C_n \log(1+\tfrac{||{\theta}||_1}{||{\theta}||_0 })\right\} + (1+X^2)C_n=O(m_0\log n) \\c>0,\,C_n = 2+ \log_2 \log(e+n^{1/2}L)=O(\log(\log n)) ρn(θ)≤cX2∣∣θ∣∣0{log(e+n1/2L)+Cnlog(1+∣∣θ∣∣0∣∣θ∣∣1)}+(1+X2)Cn=O(m0logn)c>0,Cn=2+log2log(e+n1/2L)=O(log(logn))
综合R^n、βn(δ)、ρn(θ)\hat R_n、\beta_n(\delta)、\rho_n(\theta)R^n、βn(δ)、ρn(θ),取δ=1n2\delta=\frac{1}{n^2}δ=n21,可得在sparse linear条件下,Rn=O(dnm0log(n)2)R_n=O(\sqrt{dnm_0}\log (n)^2)Rn=O(dnm0log(n)2)
2.4 Lower Bounds for Stochastic Linear Bandits
设Xt=<At,θ>+ηtX_t = \left<{A_t, \theta}\right> + \eta_tXt=⟨At,θ⟩+ηt,ηt∼N(0,1)\eta_t\sim \mathcal N(0,1)ηt∼N(0,1)
分析各种条件下regretregretregret的下界,都是基于前面章节的一些Lower Bounds的结论,就是说无论怎么选择策略,经过和环境之间的博弈,regretregretregret都有一个下限。
2.4.1 hypercube
A=[−1,1]d,θ∈Θ={−1/n,1/n}d\mathcal A = [-1, 1]^d,\theta \in \Theta = \{-\sqrt{1/n}, \sqrt{1/n}\}^dA=[−1,1]d,θ∈Θ={−1/n,1/n}d
第3行放缩是Markov’s不等式,定义事件:∑t=1nI{sign(At,i)≠sign(θi)}≥n2\sum_{t=1}^n\mathbb{I}{\{sign(A_{t,i}) \neq sign(\theta_i)\}}\ge\frac{n}{2}∑t=1nI{sign(At,i)=sign(θi)}≥2n,也就是AtiA_tiAti与θi\theta_iθi异号的次数大于等于n/2n/2n/2,事件的补就是同号次数大于等于n/2n/2n/2,由于θi\theta_iθi只有正负两个取值,只需令θ′\theta'θ′为θ\thetaθ的第iii位取反,即可构造补事件,再利用
pθ,i+pθ’,i≥12exp(−12∑t=1nEθ[<At,θ–θ’>2])≥12exp(−2)p_{\theta,i} + p_{\theta’,i} \geq \frac{1}{2} \exp\left(-\frac{1}{2}\sum_{t=1}^n \mathbb{E}_\theta[\left<{A_t, \theta – \theta’}\right>^2]\right) \ge\frac{1}{2} \exp\left(-2\right) pθ,i+pθ’,i≥21exp(−21t=1∑nEθ[⟨At,θ–θ’⟩2])≥21exp(−2)
2.4.2 sparse
稀疏条件下Rn=ω(dpn)R_n=\omega(dpn)Rn=ω(dpn)
对于∣∣θ0∣∣=p||\theta_0||=p∣∣θ0∣∣=p,d=pkd=pkd=pk,也就是说讲ddd维特征分成ppp个老虎机,每个有kkk个arm。
令A={ei∈Rk}p\mathcal{A}=\{e_i\in\mathbb{R}^k\}^pA={ei∈Rk}p,即ppp个kkk维单位向量,θT=[θ(1)T,θ(2)T,...θ(n)T]\theta^T=[\theta^{(1)T},\theta^{(2)T},...\theta^{(n)T}]θT=[θ(1)T,θ(2)T,...θ(n)T]
Δ>0\Delta>0Δ>0,Θ={Δei:i∈[k}⊂Rk\Theta=\{\Delta e_i:i \in [k\} \sub \mathbb{R}^kΘ={Δei:i∈[k}⊂Rk,θ∈Θp\theta \in \Theta^pθ∈Θp
也就是说,ppp个老虎机,玩家在每个老虎机选一个arm,每个老虎机只有一个arm是有rewardrewardreward的,其余arm都是0
VVV是p×dp\times dp×d矩阵:
Bt=VAt∈[k]pB_t=VA_t \in [k]^pBt=VAt∈[k]p表示玩家从ppp个老虎机中选择的最优arm
实际的最优arm是bi∗(θ)=argmaxb∈[k]θb(i)b^*_i(\theta)=\arg \max_{b\in [k]}\theta^{(i)}_bbi∗(θ)=argmaxb∈[k]θb(i)
因此Rn(θ)=∑i=1pΔEθ[∑tI{Bti≠bi∗}]R_n(\theta)=\sum_{i=1}^p\Delta\mathbb{E}_\theta\left[\sum_t \mathbb{I}\{B_{ti}\neq b_i^*\}\right]Rn(θ)=∑i=1pΔEθ[∑tI{Bti=bi∗}]
把一个老虎机的regretregretregret拆分成ppp个的和
中间的那个不等式是利用的之前章节的推论,就是老虎机只有一个arm的rewardrewardreward是正数,其他是0
只有第iii个arm的rewardrewardreward为正数时的regretregretregret存在下界:
2.4.3 Misspecified Models
这种情况是rewardrewardreward并不严格的符合parameter和feature之间的线性组合,设有kkk个arm,At∈RdA_t \in \mathbb{R}^dAt∈Rd,μ∈[0,1]k\mu \in [0,1]^kμ∈[0,1]k,Xt=μ(At)+ηX_t=\mu({A_t})+\etaXt=μ(At)+η
令θ\thetaθ是最接近μ\muμ的线性组合参数,即θ=argminθ∈Rdmaxx∈A∣μx–<x,θ>∣\theta=\arg\min_{\theta \in \R^d} \max_{x \in \mathcal{A}} |\mu_x – \left<{x, \theta}\right>|θ=argminθ∈Rdmaxx∈A∣μx–⟨x,θ⟩∣,ϵ=minθ∈Rdmaxx∈A∣μx–<x,θ>∣\epsilon = \min_{\theta \in \R^d} \max_{x \in \mathcal{A}} |\mu_x – \left<{x, \theta}\right>|ϵ=minθ∈Rdmaxx∈A∣μx–⟨x,θ⟩∣是μ\muμ和线性组合之间的最大误差,理想的regretregretregret是
Rn(A,μ)=O~(min{kn,dn+nϵ})R_n(\mathcal{A}, \mu) = \tilde O\left(\min\{\sqrt{kn},\, d\sqrt{n} + n\epsilon\}\right)\, Rn(A,μ)=O~(min{kn,dn+nϵ})
也就是使用UCBUCBUCB得到的regretregretregret的下限,但是实际上是达不到的
Bandit Algorithm教材学习笔记相关推荐
- 遗传算法 python 简书_遗传算法(Genetic Algorithm ,GA)学习笔记
1 遗传算法的概念 1.1 遗传算法的科学定义 遗传算法(Genetic Algorithm, GA) 是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程 ...
- 强化学习笔记:多臂老虎机问题(7)--Gradient Bandit Algorithm
目录 0. 前言 1. 算法原理 2. Python仿真 2.1 函数改造 2.2 softmax() 2.3 改造后的k_armed_bandit_one_run() 2.4 对比仿真 2.5 一点 ...
- 【Bandit Algorithms学习笔记】UCB算法的理论证明
文章目录 前言 算法优势 算法原理 UCB公式 UCB算法流程 相关定理及证明 定理7.1 证明 定理7.2 证明 总结 参考资料 前言 笔者毕设研究的是Bandit问题,因此最近在学习相关的内容,想 ...
- algorithm头文件下的常用函数-学习笔记
algorithm头文件下的常用函数-学习笔记 max(x,y),min(x,y),abs(x) swap(x,y) reverse(it,it2) next_permutation() fill( ...
- ceres快速教材及学习笔记(四)bundl adjustment,《视觉slam十四讲》第十讲ceres例子
0. 前言 本文是根据ceres官方教程内容ceres-solver官方教程链接,再结合自己理解的一个ceres快速学习笔记. 在博文ceres快速教材及学习笔记(一)hello,world!中,我们 ...
- 【学习笔记】Multi-Objective Differential Evolution Algorithm --MODEA
[学习笔记]Multi-Objective Differential Evolution Algorithm --MODEA 正文 (一)算法关键点 (二).概念定义 算法流程 算法伪代码.算法流程图 ...
- 上海lin上海linux培训ux,lin教材ux字符驱动设备-学习笔记(最新实例).pdf
- 1 - 字符驱动开发学习笔记 Linux下的设备驱动程序被组织为一组完成不同任务的函数的集合,通过 这些函数使得Windows 的设备操作犹如文件一般.在应用程序看来,硬件设备只 是一个设备文件, ...
- 下载量过百万的吴恩达机器学习和深度学习笔记更新了!(附PDF下载)
今天,我把吴恩达机器学习和深度学习课程笔记都更新了,并提供下载,这两本笔记非常适合机器学习和深度学习入门.(作者:黄海广) 0.导语 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在g ...
- Computer vision: models, learning and inference 学习笔记1:引言
学习笔记1:引言 目的 model,learning and inference 的含义 独特之处:基于模型的知识结构体系 最关键的是:模型(model) 目的 学习<computer visi ...
最新文章
- vue全局使用electron
- CentOS6实现路由器功能
- vue key重复_【第2112期】 import { reactive } from #39;vue#39;
- 什么是端口映射?内网端口映射工具推荐
- python初学第一节课
- unity自动生成敌人_Unity学习笔记二:敌人模块和敌人生成器模块脚本编写思路梳理(2)...
- Android 白天黑夜模式切换换肤
- vcs import src < ros2.repos 或 vcs import --input ros2.repos src 下载失败或速度慢
- 转贴:ubuntu 7.10 常用软件与编程环境搭建
- 显卡、显卡驱动、Nvcc、Cuda Driver、CudaToolkit 、Cudnn到底是什么?
- 小程序实现滚动加载(懒加载)
- 【2015年第4期】城市交通大数据技术及智能应用系统
- 安装Jenkins的超超超超简单的方法
- ESP8266单片机MicroPython保姆级把玩笔记
- C#趣味消消乐小游戏
- 企业级容器技术 k8s 资源监控的部署和ui界面的部署
- 记Vue报错Custom elements in iteration require ‘v-bind:key‘ directives.“错误解决
- 基于android 订餐外卖APP,前台后台服务都齐全
- Mybatis之一个SQL的运行过程
- 随即库 random 常用
热门文章
- linux 文件 复制 工具栏,Linux(Ubuntu)光盘镜像文件制作及使用攻略
- JavaScript实现flatten
- Powerbi 通过On-premises data gateway 连接本地多维数据库
- JavaScript for Qt Quick(QML)-安晓辉-专题视频课程
- SQLserver的Always On 可用性组
- Smartmontools硬盘检测工具
- 深度解析卡尔曼滤波在IMU中的使用
- 以java语言为工具的粗糙的飞机大战游戏的开发与实现
- 查找字符串中某个字符出现的次数
- .Net Core 实现WebSocket Server 的另外三种方式