注意:粗体的都是向量或矩阵,非粗体的为标量
example: y y y为标量, 而 y \boldsymbol{y} y 为向量
我们使用贝叶斯估计方法学习线性回归的参数。在线性回归中,我们学习从输入向量 x ∈ R n \boldsymbol{x} \in \mathbb{R}^{n} x∈Rn预测标量 y ∈ R y \in \mathbb{R} y∈R的线性映射。即假设 p ( y ) = N ( y ; w T x , σ 2 ) p(y)=\mathcal{N}(y ; \boldsymbol{w^{T}x}, \sigma^{2}) p(y)=N(y;wTx,σ2)
该预测由向量 w ∈ R n \boldsymbol{w}\in \mathbb{R}^{n} w∈Rn 参数化:
y ^ = w T x \hat{y}=\boldsymbol{w^{T}}\boldsymbol{x} y^=wTx
给定一组 m m m个训练样本 ( X ( t r a i n ) , y t r a i n ) (\boldsymbol{X}^{(train)},\boldsymbol{y}^{train}) (X(train),ytrain),我们可以表示整个训练集对 y y y的预测:
y ^ ( t r a i n ) = X ( t r a i n ) w . \boldsymbol{\hat{y}}^{(train)}=\boldsymbol{X}^{(train)}\boldsymbol{w}. y^(train)=X(train)w.
表示为 y ( t r a i n ) \boldsymbol{y}^{(train)} y(train)上的高斯条件分布,我们得到
p ( y ( train ) ∣ X ( train ) , w ) = N ( y (train) ) ; X ( train ) w , σ 2 I ) ∝ exp ( − 1 2 ( y ( train ) − X (train ) w ) ⊤ ( y ( train ) − X ( train ) w ) ) \begin{aligned} p\left(\boldsymbol{y}^{(\text {train })} \mid \boldsymbol{X}^{(\text {train })}, \boldsymbol{w}\right) &=\mathcal{N}\left(\boldsymbol{y}^{\text {(train) })} ; \boldsymbol{X}^{(\text {train })} \boldsymbol{w}, \sigma^{2}\boldsymbol{I}\right) \\ & \propto \exp \left(-\frac{1}{2}\left(\boldsymbol{y}^{(\text {train })}-\boldsymbol{X}^{\text {(train })} \boldsymbol{w}\right)^{\top}\left(\boldsymbol{y}^{(\text {train })}-\boldsymbol{X}^{(\text {train })} \boldsymbol{w}\right)\right) \end{aligned} p(y(train )∣X(train ),w)=N(y(train) );X(train )w,σ2I)∝exp(−21(y(train )−X(train )w)⊤(y(train )−X(train )w))
其中,我们根据标准的 MSE 公式假设 y y y 上的高斯方差为 σ 2 \sigma^{2} σ2。在下文中,为减少符号
负担,我们将 ( X ( t r a i n ) , y t r a i n ) (\boldsymbol{X}^{(train)},\boldsymbol{y}^{train}) (X(train),ytrain),简单表示为 ( X , y ) (\boldsymbol{X,y}) (X,y)。
由上可得 y ∼ N ( X w , σ 2 I ) \boldsymbol{y} \sim\mathcal{N}(\boldsymbol{Xw},\sigma^{2}\boldsymbol{I}) y∼N(Xw,σ2I)
为确定模型参数向量 w \boldsymbol{w} w 的后验分布,我们首先需要指定一个先验分布。先验应
该反映我们对这些参数取值的信念。虽然有时将我们的先验信念表示为模型的参数很难或很不自然,但在实践中我们通常假设一个相当广泛的分布来表示 θ \boldsymbol{\theta} θ 的高度不确定性。实数值参数通常使用高斯作为先验分布:
p ( w ) = N ( w ; μ 0 , Λ 0 ) ∝ exp ( − 1 2 ( w − μ 0 ) ⊤ Λ 0 − 1 ( w − μ 0 ) ) p(\boldsymbol{w})=\mathcal{N}\left(\boldsymbol{w} ; \boldsymbol{\mu}_{0}, \boldsymbol{\Lambda}_{0}\right) \propto \exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{0}\right)^{\top} \boldsymbol{\Lambda}_{0}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{0}\right)\right) p(w)=N(w;μ0,Λ0)∝exp(−21(w−μ0)⊤Λ0−1(w−μ0))
其中, μ 0 \boldsymbol{ \mu_{0}} μ0 和 Λ 0 \boldsymbol{ \Lambda_{0}} Λ0分别是先验分布的均值向量和协方差矩阵
除非有理由使用协方差矩阵的特定结构,我们通常假设其为对角协方差矩阵 Λ 0 \boldsymbol{ \Lambda_{0}} Λ0 = d i a g ( λ 0 ) \boldsymbol{ \mathrm{diag(\boldsymbol{\lambda_{0}})}} diag(λ0)。
确定好先验后,我们现在可以继续确定模型参数的后验分布。
数据集: D = { X , y } = { < x i , y i > } i = 1 n D =\left\{\boldsymbol{X,y}\right\}= \left\{<\boldsymbol{x}_{i}, y_{i}>\right\}_{i=1}^{n} D={X,y}={<xi,yi>}i=1n, 其中 x i ∈ R n \boldsymbol{x}_{i} \in \mathbb{R}^{n} xi∈Rn, y i ∈ R y_{i} \in \mathbb{R} yi∈R
p ( w ∣ X , y ) = p ( w ∣ D ) − − − > ( 贝叶斯公式 ) = p ( w , D ) p ( D ) = p ( D ∣ w ) p ( w ) p ( D ) ① \begin{aligned} p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y}) &=p(\boldsymbol{w} \mid D)--->(贝叶斯公式)\\ &=\frac{p(\boldsymbol{w} , D)}{p(D)}\\ &=\frac{p(D \mid \boldsymbol{w} ) p(\boldsymbol{w})}{p(D)}\quad\quad\quad\quad① \end{aligned} p(w∣X,y)=p(w∣D)−−−>(贝叶斯公式)=p(D)p(w,D)=p(D)p(D∣w)p(w)①
而 p ( D ∣ w ) = p ( y ∣ X , w ) = N ( y ∣ X w , σ 2 I ) ② p(D \mid \boldsymbol{w})=p(\boldsymbol{y} \mid \boldsymbol{X,w})=\mathcal{N}(\boldsymbol{y} \mid \boldsymbol{Xw},\sigma^{2}\boldsymbol{I})\quad\quad② p(D∣w)=p(y∣X,w)=N(y∣Xw,σ2I)②
所以由①②得:
p ( w ∣ X , y ) = p ( y ∣ X , w ) p ( w ) p ( D ) ∝ p ( y ∣ X , w ) p ( w ) p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y})=\frac{p(\boldsymbol{y} \mid \boldsymbol{X,w})p(\boldsymbol{w})}{p(D)} \propto p(\boldsymbol{y} \mid \boldsymbol{X,w})p(\boldsymbol{w}) p(w∣X,y)=p(D)p(y∣X,w)p(w)∝p(y∣X,w)p(w)
因为 p ( D ) p(D) p(D)为一个定值,确定模型参数的后验分布不产生影响,也就是说,在求 w M A P = a r g m a x w p ( w ∣ D ) \boldsymbol{w_{MAP}}=\underset{\boldsymbol{w}}{argmax}\quad p(\boldsymbol{w} \mid D) wMAP=wargmaxp(w∣D)时, p ( D ) p(D) p(D)对 w w w来说是一个常量乘项,因为后面是要求最大后验概率。
emm这一点不知道大家能不能理解,就是相当于求 y = m ( x 2 + 2 x + 1 ) y=m(x^{2}+2x+1) y=m(x2+2x+1)的极值与求 y = x 2 + 2 x + 1 y=x^{2}+2x+1 y=x2+2x+1的极值是等价的, m m m并不影响求其极值
p ( w ∣ X , y ) = p ( w ∣ D ) ∝ p ( y ∣ X , w ) p ( w ) ∝ exp ( − 1 2 ( y − X w ) ⊤ ( y − X w ) ) exp ( − 1 2 ( w − μ 0 ) ⊤ Λ 0 − 1 ( w − μ 0 ) ) ∝ exp ( − 1 2 ( − 2 y ⊤ X w + w ⊤ X ⊤ X w + w ⊤ Λ 0 − 1 w − 2 μ 0 ⊤ Λ 0 − 1 w ) ) . \begin{aligned} p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y}) &=p(\boldsymbol{w} \mid D)\\ & \propto p(\boldsymbol{y} \mid \boldsymbol{X}, \boldsymbol{w}) p(\boldsymbol{w}) \\ & \propto \exp \left(-\frac{1}{2}(\boldsymbol{y}-\boldsymbol{X} \boldsymbol{w})^{\top}(\boldsymbol{y}-\boldsymbol{X} \boldsymbol{w})\right) \exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{0}\right)^{\top} \boldsymbol{\Lambda}_{0}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{0}\right)\right) \\ & \propto \exp \left(-\frac{1}{2}\left(-2 \boldsymbol{y}^{\top} \boldsymbol{X} \boldsymbol{w}+\boldsymbol{w}^{\top} \boldsymbol{X}^{\top} \boldsymbol{X} \boldsymbol{w}+\boldsymbol{w}^{\top} \boldsymbol{\Lambda}_{0}^{-1} \boldsymbol{w}-2 \boldsymbol{\mu}_{0}^{\top} \boldsymbol{\Lambda}_{0}^{-1} \boldsymbol{w}\right)\right) . \end{aligned} p(w∣X,y)=p(w∣D)∝p(y∣X,w)p(w)∝exp(−21(y−Xw)⊤(y−Xw))exp(−21(w−μ0)⊤Λ0−1(w−μ0))∝exp(−21(−2y⊤Xw+w⊤X⊤Xw+w⊤Λ0−1w−2μ0⊤Λ0−1w)).
现在我们定义 Λ m = ( X T X + Λ 0 − 1 ) − 1 \boldsymbol{\Lambda_{m}}=(\boldsymbol{X^{T}X+\Lambda_{0}^{-1}})^{-1} Λm=(XTX+Λ0−1)−1 和 μ m = Λ m ( X T y + Λ 0 − 1 μ 0 ) \boldsymbol{\mu_{m}}=\boldsymbol{\Lambda_{m}}(\boldsymbol{X^{T}y+\Lambda_{0}^{-1}\mu_{0})} μm=Λm(XTy+Λ0−1μ0) 。使用这些新的变量,我们发现后验可改写为高斯分布:
p ( w ∣ X , y ) ∝ exp ( − 1 2 ( w − μ m ) ⊤ Λ m − 1 ( w − μ m ) + 1 2 μ m ⊤ Λ m − 1 μ m ) ∝ exp ( − 1 2 ( w − μ m ) ⊤ Λ m − 1 ( w − μ m ) ) ③ \begin{aligned} p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y}) & \propto \exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)^{\top} \boldsymbol{\Lambda}_{m}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)+\frac{1}{2} \boldsymbol{\mu}_{m}^{\top} \boldsymbol{\Lambda}_{m}^{-1} \boldsymbol{\mu}_{m}\right) \\ & \propto \exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)^{\top} \boldsymbol{\Lambda}_{m}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)\right) \end{aligned}\quad\quad\quad③ p(w∣X,y)∝exp(−21(w−μm)⊤Λm−1(w−μm)+21μm⊤Λm−1μm)∝exp(−21(w−μm)⊤Λm−1(w−μm))③
分布的积分必须归一这个事实意味着要删去所有不包括参数向量 w \boldsymbol{w} w 的项。式③显示了如何标准化多元高斯分布。
p ( w ∣ X , y ) ∝ exp ( − 1 2 ( w − μ m ) ⊤ Λ m − 1 ( w − μ m ) ) p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y}) \propto \exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)^{\top} \boldsymbol{\Lambda}_{m}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)\right) p(w∣X,y)∝exp(−21(w−μm)⊤Λm−1(w−μm))
求最大后验概率 w M A P \boldsymbol{w_{MAP}} wMAP,等价于求
w M A P = a r g m a x w p ( w ∣ X , y ) ∝ a r g m a x w exp ( − 1 2 ( w − μ m ) ⊤ Λ m − 1 ( w − μ m ) ) ∝ a r g m i n w ( w − μ m ) ⊤ Λ m − 1 ( w − μ m ) ∝ a r g m i n w ( w T Λ m − 1 w − w T Λ m − 1 μ m − μ m T Λ m − 1 w + μ m T Λ m − 1 μ m ) ∝ a r g m i n w ( w T Λ m − 1 w − w T Λ m − 1 μ m − μ m T Λ m − 1 w ) \begin{aligned} \boldsymbol{w_{MAP}} &=\underset{w}{argmax}\quad p(\boldsymbol{w} \mid \boldsymbol{X}, \boldsymbol{y})\\ &\propto \underset{w}{argmax}\quad\exp \left(-\frac{1}{2}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)^{\top} \boldsymbol{\Lambda}_{m}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)\right)\\ &\propto \underset{w}{argmin}\quad\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)^{\top} \boldsymbol{\Lambda}_{m}^{-1}\left(\boldsymbol{w}-\boldsymbol{\mu}_{m}\right)\\ &\propto \underset{w}{argmin}\quad \left(\boldsymbol{w}^{T}\boldsymbol{\Lambda_{m}^{-1}w-w^{T}\Lambda_{m}^{-1}\mu_{m}-\mu_{m}^{T}\Lambda_{m}^{-1}w+\mu_{m}^{T}\Lambda_{m}^{-1}\mu_{m}}\right)\\ &\propto \underset{w}{argmin}\quad \left(\boldsymbol{w}^{T}\boldsymbol{\Lambda_{m}^{-1}w-w^{T}\Lambda_{m}^{-1}\mu_{m}-\mu_{m}^{T}\Lambda_{m}^{-1}w}\right)\\ \end{aligned} wMAP=wargmaxp(w∣X,y)∝wargmaxexp(−21(w−μm)⊤Λm−1(w−μm))∝wargmin(w−μm)⊤Λm−1(w−μm)∝wargmin(wTΛm−1w−wTΛm−1μm−μmTΛm−1w+μmTΛm−1μm)∝wargmin(wTΛm−1w−wTΛm−1μm−μmTΛm−1w)
记 L ( w ) = w T Λ m − 1 w − w T Λ m − 1 μ m − μ m T Λ m − 1 w \boldsymbol{L(w)} =\boldsymbol{w}^{T}\boldsymbol{\Lambda_{m}^{-1}w-w^{T}\Lambda_{m}^{-1}\mu_{m}-\mu_{m}^{T}\Lambda_{m}^{-1}w} L(w)=wTΛm−1w−wTΛm−1μm−μmTΛm−1w
∂ L ( w ) ∂ w = Λ m − 1 w + Λ m − T w − Λ m − 1 μ m − Λ m − T μ m = ( Λ m − 1 + Λ m − T ) w − ( Λ m − 1 + Λ m − T ) μ m \begin{aligned} \frac{\partial \boldsymbol{L(w)}}{\partial \boldsymbol{w}} &=\boldsymbol{\Lambda_{m}^{-1}w + \Lambda_{m}^{-T}w - \Lambda_{m}^{-1}\mu_{m}-\Lambda_{m}^{-T}\mu_{m}}\\ &=\boldsymbol{(\Lambda_{m}^{-1}+\Lambda_{m}^{-T})w-(\Lambda_{m}^{-1}+\Lambda_{m}^{-T})\mu_{m}} \end{aligned} ∂w∂L(w)=Λm−1w+Λm−Tw−Λm−1μm−Λm−Tμm=(Λm−1+Λm−T)w−(Λm−1+Λm−T)μm
令 ∂ L ( w ) ∂ w = 0 \frac{\partial \boldsymbol{L(w)}}{\partial \boldsymbol{w}}=0 ∂w∂L(w)=0
( Λ m − 1 + Λ m − T ) w = ( Λ m − 1 + Λ m − T ) μ m \boldsymbol{(\Lambda_{m}^{-1}+\Lambda_{m}^{-T})w=(\Lambda_{m}^{-1}+\Lambda_{m}^{-T})\mu_{m}} (Λm−1+Λm−T)w=(Λm−1+Λm−T)μm
两边同时左乘 ( Λ m − 1 + Λ m − T ) − 1 \boldsymbol{(\Lambda_{m}^{-1}+\Lambda_{m}^{-T})}^{-1} (Λm−1+Λm−T)−1可得:
w = μ m \boldsymbol{w=\mu_{m}} w=μm
又因为 Λ m = ( X T X + Λ 0 − 1 ) − 1 \boldsymbol{\Lambda_{m}}=(\boldsymbol{X^{T}X+\Lambda_{0}^{-1}})^{-1} Λm=(XTX+Λ0−1)−1 , μ m = Λ m ( X T y + Λ 0 − 1 μ 0 ) \boldsymbol{\mu_{m}}=\boldsymbol{\Lambda_{m}}(\boldsymbol{X^{T}y+\Lambda_{0}^{-1}\mu_{0})} μm=Λm(XTy+Λ0−1μ0),如果我们设置 Λ 0 = 1 α I \boldsymbol{\Lambda_{0}}=\frac{1}{\alpha}\boldsymbol{I} Λ0=α1I,
则 w = ( X T X + α I ) − 1 X T y \boldsymbol{w=}(\boldsymbol{X^{T}X+}\alpha\boldsymbol{I})^{-1}\boldsymbol{X^{T}y} w=(XTX+αI)−1XTy。
至此上面的公式推导完毕!!!
检查此后验分布可以让我们获得贝叶斯推断效果的一些直觉。大多数情况下,我们设置 μ 0 = 0 ⃗ \boldsymbol{\mu_{0} }= \vec{0} μ0=0。
如果我们设置 Λ 0 = 1 α I \boldsymbol{\Lambda_{0}}=\frac{1}{\alpha}\boldsymbol{I} Λ0=α1I,那么 μ m \boldsymbol{\mu_{m} } μm 对 w \boldsymbol{w} w 的估计就和频率派带权重衰减惩罚 α w T w \alpha\boldsymbol{w^{T}w} αwTw 的线性回归的估计是一样的。
一个区别是若 α \alpha α 设为 0 则贝叶斯估计是未定义的——我们不能将贝叶斯学习过程初始化为一个无限宽的 w \boldsymbol{w} w 先验。更重要的区别是贝叶斯估计会给出一个协方差矩阵,表示 w \boldsymbol{w} w 所有不同值的可能范围,而不仅是估计 μ m \boldsymbol{\mu_{m}} μm。