UCB算法 && LinUCB

UCB(Upper Confidence Bound,置信区间上界)算法是解决 Multi-Armed Bandit(多臂老虎机) 问题最经典的算法之一。它的核心任务是在探索(Exploration,尝试新事物)与利用(Exploitation,选择已知表现最好的事物)之间取得完美的平衡。

1. Multi-Armed Bandit(多臂老虎机)问题

多臂老虎机(Multi-Armed Bandit,简称 MAB)是机器学习和概率论中的一个经典问题模型。这个名字来源于赌场的单臂老虎机(Slot Machine)。想象一下,你面前停着一排共 N 台老虎机(或者一台拥有多根摇杆的老虎机),每台老虎机的吐钱概率和金额都是未知的。你手里有有限的硬币,你的目标是:通过制定一套摇号策略,让你最后赢到的钱最多

1.1 核心矛盾:探索与利用的博弈

多臂老虎机问题之所以经典,是因为它完美地抽象了人类在决策时面临的根本矛盾——探索与利用的权衡(Exploration-Exploitation Trade-off)

  • 利用(Exploitation):根据已知信息做出选择。比如,你前几次摇 3 号老虎机赚得最多,于是接下来的硬币全部投给 3 号。它的风险是,你可能会错失赚得更多的机会(万一 5 号其实是个隐藏大奖呢?)。
  • 探索(Exploration):去尝试那些你还不了解的老虎机。比如,去摇一摇从未碰过的 5 号和 7 号。它的风险是,你可能会浪费大把硬币(万一它们其实极度亏钱呢?)。

如何用最少的试错成本(数学上称为累积遗憾,Cumulative Regret),在最短时间内摸清哪台老虎机最赚钱,并把大部分硬币投入其中,就是 MAB 算法要解决的核心问题。

1.2 互联网和工业界的核心应用

在现实生活中,只要面临“在不确定性中做最优化选择”的场景,都可以用多臂老虎机模型来解决。

  • 动态 A/B 测试(高效流量分配)

    • 传统方法:将新版网页和旧版网页各分 50% 的流量,跑满两周再看结果。如果新版很烂,这两周会白白损失大量用户。
    • MAB 方法:一开始各分 50%。运行 2 小时后发现新网页点击率明显更高,算法会自动动态调整,把接下来的 70%、80% 流量直接转给新网页。
  • 推荐系统与广告冷启动:

    • 当抖音、淘宝上线了一个完全没有历史数据的新视频或新商品(冷启动)时,它就是一台未知的“老虎机”。
    • 推荐系统需要使用 MAB 算法,分出少量的流量“探索”它,测试用户的点击率;一旦发现它是爆款,再迅速“利用”并全网分发。
  • 临床药物试验:

    • 有多种新药可以治疗某种疾病,但不知道哪种副作用最小、疗效最好。
    • 实验不能拿病人的生命开玩笑,MAB 算法可以动态调整,让后续进来的病人有更高的概率分到目前表现最好的药物,同时减少对劣质药物的尝试。

1.3 解决 MAB 问题的三大经典算法

为了攻克这个难题,科学家们设计了多种不同思路的策略:

  • ϵ−Greedy\epsilon-GreedyϵGreedy 算法(贪婪策略)
    • 思路:极度直白。每次有 1−ϵ1-\epsilon1ϵ(比如 90%)的概率选择目前已知最赚钱的老虎机(利用),有 ϵ\epsilonϵ(比如 10%)的概率完全随机选一台老虎机(探索)。
    • 缺点:到后期即使已经摸透了所有机器,它依然会雷打不动地浪费 10% 的流量去盲目随机。
  • UCB 算法(置信区间上界)
    • 思路:它不再随机探索,而是引入“不确定性”加成。谁很久没被摇过了,谁的潜力上限(UCB 得分)就被抬高,从而获得优先探索权。这是一种确定性的聪明探索
  • 汤普森采样(Thompson Sampling)
    • 思路:一种基于贝叶斯概率的算法。它为每台老虎机维护一个收益概率分布(如 Beta 分布)。每次做决策时,从每台机器的分布里各自“随机抽取一个数”,谁抽到的数大就摇谁。随着摇的次数变多,好机器的分布会越来越窄且集中在高位,从而被选中的概率呈压倒性优势。

1.4 MAB 的家族演进

多臂老虎机问题随着实际业务的发展,演进出了不同的技术分支:

老虎机类型特点现实比喻标准 MAB (如 UCB1)每台机器的吐钱概率是固定且互相独立的。认为广告 A 在全网任何时间、对任何人的点击率都是 5%。上下文 MAB (如 LinUCB)引入了环境特征(Context)。考虑了用户画像。广告 A 对“年轻人”吐钱概率是 10%,对“老人”是 1%。非平稳 MAB (Non-stationary)老虎机的吐钱概率随时间在动态发生改变。用户的兴趣在变。早晨用户喜欢看新闻老虎机,深夜喜欢看情感治愈老虎机。

老虎机类型特点现实比喻
标准 MAB (如 UCB1)每台机器的吐钱概率是固定且互相独立的。认为广告 A 在全网任何时间、对任何人的点击率都是 5%。
上下文 MAB (如 LinUCB)引入了环境特征(Context)。考虑了用户画像。广告 A 对“年轻人”吐钱概率是 10%,对“老人”是 1%。
非平稳 MAB (Non-stationary)老虎机的吐钱概率随时间在动态发生改变。用户的兴趣在变。早晨用户喜欢看新闻老虎机,深夜喜欢看情感治愈老虎机。

2. UCB 算法

2.1 核心思想:乐观面对不确定性

UCB 算法遵循一个非常直观的哲学原则:乐观面对不确定性(Optimism in the face of uncertainty)

当我们对一个物品(比如一首歌、一个商品或一个广告)不够了解时,它的真实点击率(收益)对我们来说是不确定的。传统方法可能因为新物品的前一两次尝试表现不好就彻底放弃它,而 UCB 会认为:“它现在表现不好,可能只是因为我们尝试得太少。万一它其实是个宝藏呢?”

因此,UCB 不仅看一个物品的平均历史收益,还会给它的不确定性(波动范围)一个溢价。它为每个物品计算一个“高估”的得分(即置信区间上界),谁的上限高,就推荐谁。

2.2 数学公式与直观理解

在第 ttt 次选择时,UCB 算法(通常指最经典的 UCB1 算法)会选择以下分值最高的那个臂(物品) aaa

Scorea=Rˉa+c⋅ln⁡tNa(t)\text{Score}_{a}=\bar{R}_{a}+c\cdot \sqrt{\frac{\ln t}{N_{a}(t)}}Scorea=Rˉa+cNa(t)lnt

这个公式由非常清晰的两部分组成:

  • 第一项 Rˉa\bar{R}_{a}Rˉa:利用(Exploitation)。这是物品 aaa 在过去被选中的次数里,获得的平均真实收益(例如:点击次数 / 展示次数)。它代表了当前已知的价值。
  • 第二项 c⋅ln⁡tNa(t)c \cdot \sqrt{\frac{\ln t}{N_a(t)}}cNa(t)lnt:探索(Exploration)。这是置信区间的半径(不确定性量度)。
    • ttt:当前总的推荐次数(随时间不断增大)。
    • Na(t)N_a(t)Na(t):物品 aaa 历史上被推荐的总次数。
    • ccc:探索系数(超参数),用来控制我们有多“冒险”。

这一项是如何精妙运作的?

  • 当一个物品很少被推荐时Na(t)N_a(t)Na(t) 非常小,分母小导致整个根式项变得非常大。即使它的平均收益 Rˉa\bar{R}_{a}Rˉa 很低,第二项也会把它强行拉起来,让它获得被推荐的机会(触发探索)。
  • 当一个物品被频繁推荐时Na(t)N_a(t)Na(t) 越来越大,分母变大导致第二项迅速缩小(趋近于0)。此时,该物品的得分将完全由它的真实表现 Rˉa\bar{R}_{a}Rˉa 决定(转化为利用)。
  • 分子中的 lntln tlnt :随着时间推移,总推荐次数 (t) 在变大,这确保了即使某个物品之前被冷落了很久((N_a(t)) 没变),随着时间演进,它的不确定性也会微弱地增长,直到有一天它的总分再次超越其他物品,从而获得“重见天日”被重新测试的机会。

2.3 数学背后的推导:霍夫丁不等式

为什么置信区间半径恰好是 ln⁡tNa(t)\sqrt{\frac{\ln t}{N_{a}(t)}}Na(t)lnt 呢?这并不是科学家拍脑袋想出来的,而是基于概率论中的霍夫丁不等式(Hoeffding’s Inequality)

霍夫丁不等式指出,如果我们对一个真实均值为 μ\muμ 的随机变量进行了 NNN 次独立重复试验,得到的样本均值为 Rˉ\bar{R}Rˉ,那么样本均值偏离真实均值超过 ϵ\epsilonϵ 的概率存在一个上限:

P(μ>Rˉ+ϵ)≤e−2Nϵ2P(\mu >\bar{R}+\epsilon )\le e^{-2N\epsilon ^{2}}P(μ>Rˉ+ϵ)e2Nϵ2

为了保证算法在长期运行中,推荐犯错的概率被控制在极小的范围内(通常设为 1/t41/t^41/t4 等与时间相关的倒数),我们可以令这个概率上限等于 δ\deltaδ(例如令 δ=1t2\delta = \frac{1}{t^2}δ=t21):

e−2Nϵ2=1t2  ⟹  −2Nϵ2=−2ln⁡t  ⟹  ϵ=ln⁡tNe^{-2N\epsilon ^{2}}=\frac{1}{t^{2}}\implies -2N\epsilon ^{2}=-2\ln t\implies \epsilon =\sqrt{\frac{\ln t}{N}}e2Nϵ2=t212Nϵ2=2lntϵ=Nlnt

这也就是为什么 UCB 选择将 Rˉ+ϵ\bar{R} + \epsilonRˉ+ϵ 作为每一个臂的最高潜在收益上限。

2.4 UCB 算法的执行步骤

在实际系统或推荐场景中,UCB 的运行极其简单:

  • 初始化:对所有可用的物品(Arms)各尝试一次,确保每个物品的初始 Na=1N_a = 1Na=1,避免分母为 0。
  • 循环推荐
    • 计算当前所有物品的 UCB 得分。
    • 选择得分最高的物品推荐给用户。
    • 观察用户的反馈(如是否点击,点击记为 1,未点击记为 0)。
    • 更新该物品的 Na=Na+1N_a = N_a + 1Na=Na+1,并更新其平均收益 Rˉa\bar{R}_{a}Rˉa
    • 总时间步自增 t=t+1t = t + 1t=t+1

2.5 UCB 的局限性与向 LinUCB 的演进

虽然 UCB 算法非常优雅且有严格的数学证明,但在真正的工业界推荐系统中,它有一个致命的弱点:无法引入上下文特征(Context)

  • UCB 的视角:它认为一个物品的点击率在全网是固定的(例如,它认为广告 A 的点击率就是 5%)。
  • 现实的场景:同一个广告,给“18岁喜欢数码的男生”看点击率可能是 10%,而给“50岁喜欢园艺的阿姨”看点击率可能是 0.1%。

因为经典 UCB 无法根据用户的性别、年龄、当前时间等特征进行“因人而异”的推荐,所以科学家们才在它的基础上,将第一项 Rˉa\bar{R}_{a}Rˉa 升级为了线性回归模型来引入特征,这就是 LinUCB。

3. LinUCB 算法

LinUCB(Linear Upper Confidence Bound)是一种将线性回归UCB(置信区间上界) 算法相结合的经典推荐与广告算法。它属于上下文多臂老虎机(Contextual Multi-Armed Bandit, Contextual MAB)的范畴。

传统的老虎机算法(如 UCB)在推荐时只看物品(Arm)的历史表现,而 LinUCB 的核心突破在于:它假设用户特征、上下文特征与物品特征之间存在线性关系,从而能够根据当前特定的上下文实现精细化的个性化推荐。

3.1 核心思想:探索与利用的平衡

LinUCB 的精髓在于对“不确定性”建模。它为每个物品(Arm)计算一个得分,这个得分由两部分组成,即 预估收益(利用, Exploitation) 和 置信区间宽度(探索, Exploration)

Scorea=μ^a+α⋅Uncertaintya\text{Score}_{a}=\hat{\mu }_{a}+\alpha \cdot \text{Uncertainty}_{a}Scorea=μ^a+αUncertaintya

  • μ^a\hat{\mu }_{a}μ^a:基于当前特征,用线性模型预测的期望收益。
  • Uncertaintya\text{Uncertainty}_{a}Uncertaintya:该预测的不确定性(标准差)。如果一个物品被展示的次数很少,它的不确定性就很大。
  • α\alphaα:一个超参数,用来调节探索的力度。α\alphaα 越大,越倾向于推荐新物品。

LinUCB 每次都会选择 Scorea\text{Score}_{a}Scorea 最高的物品进行推荐。这被称为 乐观面对不确定性(Optimism in the Face of Uncertainty):如果一个物品我们不够了解(不确定性大),我们就“乐观”地给它一个机会,以此来收集数据。

3.2 数学原理与公式推导

假设对于某一个特定的物品 aaa,当前的上下文特征向量为 xt\mathbf{x}_{t}xt。LinUCB 假设物品 aaa 的真实收益 yty_{t}yt 与特征 xt\mathbf{x}_{t}xt 满足线性关系:

E[yt∣a,xt]=xtTθa∗\mathbf{E}[y_{t}|a,\mathbf{x}_{t}]=\mathbf{x}_{t}^{T}\mathbf{\theta }_{a}^{*}E[yta,xt]=xtTθa

其中 θa∗\mathbf{\theta }_{a}^{*}θa 是该物品待求解的未知真实参数矩阵。

3.2.1 参数估计(岭回归)

为了求解 θa\mathbf{\theta }_{a}θa,LinUCB 在收集到的历史数据上应用了岭回归(Ridge Regression)。设历史在该物品上积累的特征矩阵为 Da\mathbf{D}_{a}Da(可以理解为XXX),对应的收益向量为 ca\mathbf{c}_{a}ca(可以理解为yyy)。根据岭回归公式,参数估计值 θ^a\hat{\mathbf{\theta }}_{a}θ^a 为:

θ^a=(DaTDa+Id)−1DaTca\hat{\mathbf{\theta }}_{a}=(\mathbf{D}_{a}^{T}\mathbf{D}_{a}+\mathbf{I}_{d})^{-1}\mathbf{D}_{a}^{T}\mathbf{c}_{a}θ^a=(DaTDa+Id)1DaTca

为了简化实时计算,我们定义两个缓存矩阵:

  • Aa=DaTDa+Id\mathbf{A}_a = \mathbf{D}_a^T \mathbf{D}_a + \mathbf{I}_dAa=DaTDa+Id (特征的协方差矩阵,Id\mathbf{I}_{d}Id 为单位矩阵)
  • ba=DaTca\mathbf{b}_a = \mathbf{D}_a^T \mathbf{c}_aba=DaTca (特征与收益的交叉乘积项)

则参数估计值可写为:θ^a=Aa−1ba\hat{\boldsymbol{\theta}}_a = \mathbf{A}_a^{-1} \mathbf{b}_aθ^a=Aa1ba

3.2.2 构建 UCB 上界

根据线性回归的统计学性质,当前预估收益 xtTθ^a\mathbf{x}_t^T \hat{\boldsymbol{\theta}}_axtTθ^a 的方差可以表示为 xtTAa−1xt\mathbf{x}_t^T \mathbf{A}_a^{-1} \mathbf{x}_txtTAa1xt(推导见附录)。由此,根据其置信上界,LinUCB 的最终选择策略(即预估得分)公式为:

at=argmax a∈A(xtTθ^a+αxtTAa−1xt)a_{t}=\underset{a\in \mathcal{A}}{\mathrm{argmax}\>}\left(\mathbf{x}_{t}^{T}\hat{\mathbf{\theta }}_{a}+\alpha \sqrt{\mathbf{x}_{t}^{T}\mathbf{A}_{a}^{-1}\mathbf{x}_{t}}\right)at=aAargmax(xtTθ^a+αxtTAa1xt)

  • 第一项 xtTθ^a\mathbf{x}_t^T \hat{\boldsymbol{\theta}}_axtTθ^a:当前上下文下的期望收益预测值
  • 第二项 αxtTAa−1xt\alpha \sqrt{\mathbf{x}_t^T \mathbf{A}_a^{-1} \mathbf{x}_t}αxtTAa1xt置信区间半径(不确定性) 。如果某个物品在类似的特征空间下被展示得很少,Aa−1\mathbf{A}_{a}^{-1}Aa1 在该方向上的值就会很大,从而拉高这一项,触发“探索”机制。

3.2.3 LinUCB 算法的两个变体

在 Yahoo! 提出该算法的经典论文中,引入了两种模式:

  • Disjoint LinUCB(独立线性模型):每个物品 aaa 拥有完全独立的参数 θa\mathbf{\theta }_{a}θa。适用于不同物品间属性差异极大、彼此没有共性的场景(如推荐完全不同品类的商品)。
  • Hybrid LinUCB(混合线性模型):不仅每个物品有独立参数,所有物品还共享一部分全局参数 β\mathbf{\beta }β。公式变为:xtTθ^a+ztTβ^\mathbf{x}_t^T \hat{\boldsymbol{\theta}}_a + \mathbf{z}_t^T \hat{\boldsymbol{\beta}}xtTθ^a+ztTβ^。这允许新物品能够快速从老物品的共享特征(如用户年龄、性别等通用偏好)中借用信息,缓解冷启动。

3.2.4 为什么 LinUCB 在工业界广受欢迎?

  • 在线实时更新:更新参数极其简单。每次用户产生行为(点击或未点击),不需要像深度学习模型那样重新进行复杂的全量训练,只需对矩阵 Aa\mathbf{A}_{a}Aa 和向量 ba\mathbf{b}_{a}ba 进行简单的矩阵加法即可完成增量更新。
  • 天然解决冷启动:新物品上线时由于没有历史数据,其第二项不确定性分值极高,算法会自动给予它曝光机会(冷启动),并在收集到数据后迅速将分值修正到真实水平。
  • 数理逻辑严密:通过严格的数学边界控制 Regret(遗憾值),在理论上能保证模型以极快的速度收敛到最优策略。

附录

为什么当前预估收益 xtTθ^a\mathbf{x}_t^T \hat{\boldsymbol{\theta}}_axtTθ^a 的方差可以表示为 xtTAa−1xt\mathbf{x}_t^T \mathbf{A}_a^{-1} \mathbf{x}_txtTAa1xt

这个方差表达式的得出,源于线性回归(以及岭回归)中参数估计值的统计学性质。下面我们通过矩阵代数和方差传播公式,一步步推导为什么它的方差恰好是 xtTAa−1xt\mathbf{x}_t^T \mathbf{A}_a^{-1} \mathbf{x}_txtTAa1xt

为了书写简便,我们省去代表特定物品的下标 aaa

1. 核心数学基础:方差传播公式

在概率论中,设 v\mathbf{v}v 是一个常数向量,θ^\hat{\mathbf{\theta }}θ^ 是一个随机向量。如果我们要计算线性组合 vTθ^\mathbf{v}^T \hat{\boldsymbol{\theta}}vTθ^ 的方差,根据协方差矩阵的性质,有如下标准公式:

Var(vTθ^)=vT⋅Var(θ^)⋅v\text{Var}(\mathbf{v}^{T}\hat{\mathbf{\theta }})=\mathbf{v}^{T}\cdot \text{Var}(\hat{\mathbf{\theta }})\cdot \mathbf{v}Var(vTθ^)=vTVar(θ^)v

在 LinUCB 中,当前到来的用户特征向量 xt\mathbf{x}_{t}xt 是一个已知的、确定的常数向量,而通过历史数据拟合出来的估计参数 θ^\hat{\mathbf{\theta }}θ^ 是一个包含随机误差的随机向量。因此,根据方差传播公式,预估收益的方差为:

Var(xtTθ^)=xtT⋅Var(θ^)⋅xt\text{Var}(\mathbf{x}_{t}^{T}\hat{\mathbf{\theta }})=\mathbf{x}_{t}^{T}\cdot \text{Var}(\hat{\mathbf{\theta }})\cdot \mathbf{x}_{t}Var(xtTθ^)=xtTVar(θ^)xt

接下来的核心任务,就是求出参数估计值 θ^\hat{\mathbf{\theta }}θ^ 的协方差矩阵 Var(θ^)\text{Var}(\hat{\boldsymbol{\theta}})Var(θ^)

2. 传统线性回归(OLS)下的方差推导

我们先从不带正则化的传统线性回归看起。假设真实关系为 y=Xθ∗+ϵ\mathbf{y} = \mathbf{X}\boldsymbol{\theta}^* + \boldsymbol{\epsilon}y=Xθ+ϵ,其中噪声 ϵ\mathbf{\epsilon }ϵ 独立同分布,且方差为 σ2\sigma ^{2}σ2,即 Var(ϵ)=σ2I\text{Var}(\boldsymbol{\epsilon}) = \sigma^2 \mathbf{I}Var(ϵ)=σ2I

传统最小二乘法的参数估计值为:

θ^=(XTX)−1XTy\hat{\mathbf{\theta }}=(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\mathbf{y}θ^=(XTX)1XTy

y=Xθ∗+ϵ\mathbf{y} = \mathbf{X}\boldsymbol{\theta}^* + \boldsymbol{\epsilon}y=Xθ+ϵ 代入上式:

θ^=(XTX)−1XT(Xθ∗+ϵ)=θ∗+(XTX)−1XTϵ\hat{\mathbf{\theta }}=(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}(\mathbf{X}\mathbf{\theta }^{*}+\mathbf{\epsilon })=\mathbf{\theta }^{*}+(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\mathbf{\epsilon }θ^=(XTX)1XT(Xθ+ϵ)=θ+(XTX)1XTϵ

由于真实参数 θ∗\mathbf{\theta }^{*}θ 和特征矩阵 X\mathbf{X}X 都是常数,θ^\hat{\mathbf{\theta }}θ^ 的方差完全由随机噪声 ϵ\mathbf{\epsilon }ϵ 决定:

Var(θ^)=Var(θ∗+(XTX)−1XTϵ)\text{Var}(\hat{\mathbf{\theta }})=\text{Var}\left(\mathbf{\theta }^{*}+(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\mathbf{\epsilon }\right)Var(θ^)=Var(θ+(XTX)1XTϵ)

Var(θ^)=[(XTX)−1XT]⋅Var(ϵ)⋅[(XTX)−1XT]T\text{Var}(\hat{\mathbf{\theta }})=\left[(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\right]\cdot \text{Var}(\mathbf{\epsilon })\cdot \left[(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\right]^{T}Var(θ^)=[(XTX)1XT]Var(ϵ)[(XTX)1XT]T

Var(ϵ)=σ2I\text{Var}(\boldsymbol{\epsilon}) = \sigma^2 \mathbf{I}Var(ϵ)=σ2I 代入,并将转置展开(注意 (XTX)−1(\mathbf{X}^T\mathbf{X})^{-1}(XTX)1 是对称矩阵):

Var(θ^)=σ2(XTX)−1XTX(XTX)−1=σ2(XTX)−1\text{Var}(\hat{\mathbf{\theta }})=\sigma ^{2}(\mathbf{X}^{T}\mathbf{X})^{-1}\mathbf{X}^{T}\mathbf{X}(\mathbf{X}^{T}\mathbf{X})^{-1}=\sigma ^{2}(\mathbf{X}^{T}\mathbf{X})^{-1}Var(θ^)=σ2(XTX)1XTX(XTX)1=σ2(XTX)1

如果假设噪声的标准差 σ=1\sigma = 1σ=1,那么传统线性回归中参数的方差就是 (XTX)−1(\mathbf{X}^T\mathbf{X})^{-1}(XTX)1

3. 岭回归(LinUCB)下的引入与统一

在 LinUCB 中,为了解决冷启动时没有数据(矩阵不可逆)的问题,我们在历史特征的协方差矩阵 XTX\mathbf{X}^T\mathbf{X}XTX 上人为加上了单位矩阵 I\mathbf{I}I 进行正则化,并将其定义为 A\mathbf{A}A

A=XTX+I\mathbf{A}=\mathbf{X}^{T}\mathbf{X}+\mathbf{I}A=XTX+I

在带有 L2 正则化的空间中,基于贝叶斯线性回归(Bayesian Linear Regression)的理论,若先验分布为标准正态分布,观察到数据后的后验分布中,参数 θ^\hat{\mathbf{\theta }}θ^ 的协方差矩阵精确地变为了:

Var(θ^)=σ2A−1\text{Var}(\hat{\mathbf{\theta }})=\sigma ^{2}\mathbf{A}^{-1}Var(θ^)=σ2A1

在 LinUCB 理论公式的推导中,通常为了简化,假设噪声项的标准差 σ=1\sigma = 1σ=1。因此,参数的协方差矩阵直接表示为:

Var(θ^)=A−1\text{Var}(\hat{\mathbf{\theta }})=\mathbf{A}^{-1}Var(θ^)=A1

4. 最终合成

现在,我们将步骤 3 得到的 Var(θ^)=A−1\text{Var}(\hat{\boldsymbol{\theta}}) = \mathbf{A}^{-1}Var(θ^)=A1 代回步骤 1 的方差传播公式中:

Var(xtTθ^)=xtT⋅Var(θ^)⋅xt=xtTA−1xt\text{Var}(\mathbf{x}_{t}^{T}\hat{\mathbf{\theta }})=\mathbf{x}_{t}^{T}\cdot \text{Var}(\hat{\mathbf{\theta }})\cdot \mathbf{x}_{t}=\mathbf{x}_{t}^{T}\mathbf{A}^{-1}\mathbf{x}_{t}Var(xtTθ^)=xtTVar(θ^)xt=xtTA1xt

由此证明,当前特征 xt\mathbf{x}_{t}xt 下的预测收益的方差(即不确定性),在数理上完美对应了开根号后的 xtTA−1xt\sqrt{\mathbf{x}_{t}^{T}\mathbf{A}^{-1}\mathbf{x}_{t}}xtTA1xt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

comli_cn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值