2

ML白板推导系列笔记

 2 years ago
source link: https://bebinca.github.io/2021/10/12/ML%E7%99%BD%E6%9D%BF%E6%8E%A8%E5%AF%BC%E7%B3%BB%E5%88%97%E7%AC%94%E8%AE%B0/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Step by Step

ML白板推导系列笔记

Created2021-10-12|Updated2021-11-07|Knowledge
Word count:5k|Reading time:26min|Post View:93

不断更新中

课程地址:【机器学习】【白板推导系列】【合集 1~23】_哔哩哔哩_bilibili

Introduction Frequentists vs Bayesians

Data: X=(x1,…,xN)N∗pTX = (x_1, \dots, x_N)^T_{N*p}X=(x1​,…,xN​)N∗pT​

X服从概率模型 X∼p(x∣θ)X \sim p(x|\theta)X∼p(x∣θ)

θ\thetaθ 是未知的常量,X是随机变量,常用MLE极大似然估计:

θMLE=argmaxθlogP(X∣θ)\theta_{MLE}=\substack{argmax\\ \theta} log P(X|\theta)θMLE​=argmaxθ​logP(X∣θ), logP(X∣θ)log P(X|\theta)logP(X∣θ)一般记为L(θ)L(\theta)L(θ)

此处log是为了方便计算,如果不log的话P等于每个独立同分布的xix_ixi​的连乘,加上log符号只要求和即可

认为参数θ\thetaθ也是一个随机变量,服从概率分布θ∼p(θ)\theta \sim p(\theta)θ∼p(θ),把p(θ)p(\theta)p(θ)称为先验

先验概率、后验概率:先验概率指全事件背景下A事件发生的概率,后验指B事件发生条件下A事件发生的概率

似然:已知结果求原因

借助贝叶斯定理把先验后验和似然联系起来:

P(θ∣X)=P(X∣θ)∗P(θ)P(X)P(\theta|X) = \displaystyle\frac{P(X|\theta) * P(\theta)}{P(X)}P(θ∣X)=P(X)P(X∣θ)∗P(θ)​

则P(θ∣X)P(\theta|X)P(θ∣X)为后验, P(X∣θ)P(X|\theta)P(X∣θ) 为似然, P(θ)P(\theta)P(θ) 为先验

P(X)P(X)P(X) 实际上是个积分: P(X)=∫θP(X∣θ)P(θ)dθP(X) = \int _{\theta} P(X|\theta)P(\theta)d\thetaP(X)=∫θ​P(X∣θ)P(θ)dθ

MAP最大后验概率估计

引入一个参数估计方法MAP最大后验概率估计:

MAP: 让最大后验概率最大的点作为概率估计(众数mode)

θMAP=argmaxθP(θ∣X)=argmaxθP(X∣θ)∗P(θ)\theta_{MAP}=\substack{argmax\\ \theta} P(\theta | X)=\substack{argmax\\ \theta} P(X|\theta) * P(\theta)θMAP​=argmaxθ​P(θ∣X)=argmaxθ​P(X∣θ)∗P(θ)

这里第二个等号原理:贝叶斯公式,观察到P(X)P(X)P(X)与θ\thetaθ无关

贝叶斯估计

MAP严格意义上不是贝叶斯派用的方法。贝叶斯估计就是要求出来概率分布。

贝叶斯估计: p(θ∣X)=p(X∣θ)∗p(θ)∫θp(X∣θ)p(θ)dθp(\theta|X)=\displaystyle\frac{p(X|\theta)*p(\theta)}{\int _{\theta} p(X|\theta)p(\theta)d\theta}p(θ∣X)=∫θ​p(X∣θ)p(θ)dθp(X∣θ)∗p(θ)​

应用,比如能用来做贝叶斯预测:数据XXX,新样本数据xˉ\bar{x}xˉ,求p(xˉ∣X)p(\bar{x}|X)p(xˉ∣X)

用θ\thetaθ把XXX和xˉ\bar{x}xˉ联系起来

p(xˉ∣X)=∫θp(xˉ,θ∣X)dθ=∫θp(xˉ∣θ)∗p(θ∣X)dθp(\bar{x}|X)=\int_{\theta}p(\bar{x},\theta|X)d\theta=\int_{\theta}p(\bar{x}|\theta)*p(\theta|X)d\thetap(xˉ∣X)=∫θ​p(xˉ,θ∣X)dθ=∫θ​p(xˉ∣θ)∗p(θ∣X)dθ

这里有疑问==这里假设了X和xˉ\bar{x}xˉ独立吗,因为x之间独立同分布?

可以看到这里后半部分就是后验。

  1. P(X)P(X)P(X)的计算非常复杂,引申出很多新的计算方法。

    贝叶斯发展出了概率图模型,贝叶斯本质就是求积分的问题,比如采样方法MCMC,比如蒙特卡洛

  2. 发展出统计机器学习,实际上是一个优化问题

    • 设计模型,比如概率模型
    • 得到loss function
    • 解LF的算法,比如梯度下降

Math Basics - Gaussian Distribution - MLE

Data: X=(x1,…,xN)N∗pTX = (x_1, \dots, x_N)^T_{N*p}X=(x1​,…,xN​)N∗pT​,其中xi∈Rp,xiiid∼N(μ,Σ)x_i \in \R^p, \ x_i \ \substack{ iid \\ \sim} \ N(\mu, \Sigma)xi​∈Rp, xi​ iid∼​ N(μ,Σ)

θ=(μ,Σ)\theta = (\mu, \Sigma)θ=(μ,Σ),所以MLE: θMLE=argmaxθP(X∣θ)\theta_{MLE}=\substack{argmax \\ \theta} P(X|\theta)θMLE​=argmaxθ​P(X∣θ)

简化计算,令p=1p =1p=1, θ=(μ,σ2)\theta = (\mu, \sigma^2)θ=(μ,σ2)

高斯分布:

一维: p(x)=12πσexp(−(x−μ)22σ2)p(x) = \frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(x-\mu)^2}{2\sigma^2})p(x)=2π​σ1​exp(−2σ2(x−μ)2​)

高维: p(x)=1(2π)p/2∣Σ∣1/2exp(−12(x−μ)TΣ−1(x−μ))p(x) = \frac{1}{(2\pi)^{p/2}|\Sigma|^{1/2}}exp(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))p(x)=(2π)p/2∣Σ∣1/21​exp(−21​(x−μ)TΣ−1(x−μ))

L(θ)=logP(X∣θ)=Σi=1Nlogp(xi∣θ)=Σi=1Nlog12πσexp(−(xi−μ)22σ2)=Σi=1Nlog[12π+log1σ−(xi−μ)22σ2]\begin{aligned} L(\theta) &= log P(X|\theta) = \Sigma ^N _{i=1} log\ p(x_i|\theta)\\ &= \Sigma ^N _{i=1} log \frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(x_i-\mu)^2}{2\sigma^2}) \\&= \Sigma ^N _{i=1} log[\frac{1}{\sqrt{2\pi}} + log\frac{1}{\sigma}-\frac{(x_i-\mu)^2}{2\sigma^2}] \end{aligned}L(θ)​=logP(X∣θ)=Σi=1N​log p(xi​∣θ)=Σi=1N​log2π​σ1​exp(−2σ2(xi​−μ)2​)=Σi=1N​log[2π​1​+logσ1​−2σ2(xi​−μ)2​]​

所以对μ\muμ:

μMLE=argmaxμΣi=1N(−(xi−μ)22σ2)=argminμΣi=1N(xi−μ)2\mu_{MLE} = \substack{argmax\\ \mu}\ \Sigma_{i=1}^N (-\frac{(x_i-\mu)^2}{2\sigma^2}) = \substack{argmin\\ \mu}\ \Sigma_{i=1}^N (x_i-\mu)^2μMLE​=argmaxμ​ Σi=1N​(−2σ2(xi​−μ)2​)=argminμ​ Σi=1N​(xi​−μ)2

∂∂μΣi=1N(xi−μ)2=Σi=1N2(μ−xi)=0\frac{\partial}{\partial \mu} \Sigma_{i=1}^N (x_i-\mu)^2 = \Sigma^N_{i=1}\ 2(\mu-x_i) = 0∂μ∂​Σi=1N​(xi​−μ)2=Σi=1N​ 2(μ−xi​)=0

解得:μMLE=Σi=1NxiN\mu_{MLE} = \displaystyle\frac{\Sigma^N_{i=1} x_i}{N}μMLE​=NΣi=1N​xi​​

所以对σ2\sigma^2σ2:

σMLE2=argmaxσ2Σi=1N(−logσ−(xi−μ)22σ2)\sigma^2_{MLE} = \substack{argmax \\ \sigma^2}\ \Sigma^N_{i=1} (-log\ \sigma-\frac{(x_i-\mu)^2}{2\sigma^2})σMLE2​=argmaxσ2​ Σi=1N​(−log σ−2σ2(xi​−μ)2​)

∂∂σΣi=1N(−logσ−(xi−μ)22σ2)=−1σ+(xi−μ)222σ3=0\frac{\partial}{\partial \sigma}\Sigma^N_{i=1} (-log\ \sigma-\frac{(x_i-\mu)^2}{2\sigma^2}) = -\frac{1}{\sigma}+\frac{(x_i-\mu)^2}{2}\frac{2}{\sigma^3}=0∂σ∂​Σi=1N​(−log σ−2σ2(xi​−μ)2​)=−σ1​+2(xi​−μ)2​σ32​=0

解得:σMLE2=Σi=1N(xi−μMLE)2N=1NΣi=1Nxi2−μMLE2\sigma^2_{MLE}=\displaystyle\frac{\Sigma_{i=1}^N(x_i-\mu_{MLE})^2}{N} = \frac{1}{N}\Sigma_{i=1}^N\ x_i^2 - \mu^2_{MLE}σMLE2​=NΣi=1N​(xi​−μMLE​)2​=N1​Σi=1N​ xi2​−μMLE2​

Math Basics - Gaussian Distribution - MLE(unbiased vs biased)

无偏性准则:

满足E(θ^)=θE(\hat{\theta})=\thetaE(θ^)=θ称θ^\hat{\theta}θ^为θ\thetaθ的无偏估计。E(θ^)−θE(\hat{\theta})-\thetaE(θ^)−θ称为偏差,若E(θ^)≠θ,limn→∞E(θ^)=θE(\hat{\theta}) \ne \theta,\ \substack{lim\\ n \rightarrow \infty} E(\hat{\theta})=\thetaE(θ^)=θ, limn→∞​E(θ^)=θ则称为渐进无偏估计。

纠偏:若E(θ^)=aθ+bE(\hat{\theta})=a\theta+bE(θ^)=aθ+b,则1a(θ^−b)\frac{1}{a}(\hat{\theta}-b)a1​(θ^−b)是无偏估计。

对于μMLE\mu_{MLE}μMLE​:

E[μMLE]=E[1NΣi=1Nxi]=1NΣi=1NE[xi]=μE[\mu_{MLE}] = E[\frac{1}{N}\Sigma_{i=1}^N x_i] = \frac{1}{N}\Sigma_{i=1}^N E[x_i] = \muE[μMLE​]=E[N1​Σi=1N​xi​]=N1​Σi=1N​E[xi​]=μ

所以μMLE\mu_{MLE}μMLE​是无偏估计

对于σMLE2\sigma^2_{MLE}σMLE2​:

E[σMLE2]=E[1NΣi=1Nxi2−μMLE2]=E[1NΣi=1Nxi2−μ2]−E[μMLE2−μ2]=1NΣi=1N(E(xi2)−μ2)−(E(μMLE2)−E2(μMLE))=σ2−Var(μMLE)\begin{aligned} E[\sigma^2_{MLE}] &= E[\frac{1}{N}\Sigma_{i=1}^N\ x_i^2 - \mu^2_{MLE}] \\ &= E[\frac{1}{N}\Sigma_{i=1}^N\ x_i^2 - \mu^2] -E[\mu_{MLE}^2-\mu^2] \\ &= \frac{1}{N}\Sigma^N_{i=1}(E(x_i^2)-\mu^2)-(E(\mu^2_{MLE})-E^2(\mu_{MLE})) \\ &= \sigma^2 - Var(\mu_{MLE}) \end{aligned}E[σMLE2​]​=E[N1​Σi=1N​ xi2​−μMLE2​]=E[N1​Σi=1N​ xi2​−μ2]−E[μMLE2​−μ2]=N1​Σi=1N​(E(xi2​)−μ2)−(E(μMLE2​)−E2(μMLE​))=σ2−Var(μMLE​)​

求Var(μMLE)Var(\mu_{MLE})Var(μMLE​):

Var(μMLE)=Var(Σi=1NxiN)=1N2Σi=1NVar(xi)=σ2/NVar(\mu_{MLE}) = Var(\frac{\Sigma^N_{i=1} x_i}{N}) = \frac{1}{N^2} \Sigma_{i=1}^N\ Var(x_i) = \sigma^2/NVar(μMLE​)=Var(NΣi=1N​xi​​)=N21​Σi=1N​ Var(xi​)=σ2/N

E[σMLE2]=N−1Nσ2E[\sigma^2_{MLE}] = \frac{N-1}{N}\sigma^2E[σMLE2​]=NN−1​σ2

所以σMLE2\sigma^2_{MLE}σMLE2​是有偏估计,修正为无偏估计是Σi=1N(xi−μMLE)2N−1\displaystyle\frac{\Sigma_{i=1}^N(x_i-\mu_{MLE})^2}{N-1}N−1Σi=1N​(xi​−μMLE​)2​

无偏有偏的原因理解,有点没懂

Math Basics - Gaussian Distribution - from pdf perspective

从概率密度角度观察高斯分布。

正定矩阵广义定义:设MMM是n阶方阵,如果对任何非零向量zzz,都有zTMz>0z^TMz \gt 0zTMz>0,其中zTz^TzT 表示zzz的转置,就称M为正定矩阵

Data: X=(x1,…,xN)N∗pTX = (x_1, \dots, x_N)^T_{N*p}X=(x1​,…,xN​)N∗pT​,其中xi∈Rp,xiiid∼N(μ,Σ)x_i \in \R^p, \ x_i \ \substack{ iid \\ \sim} \ N(\mu, \Sigma)xi​∈Rp, xi​ iid∼​ N(μ,Σ)

p(x)=1(2π)p/2∣Σ∣1/2exp(−12(x−μ)TΣ−1(x−μ))p(x) = \frac{1}{(2\pi)^{p/2}|\Sigma|^{1/2}}exp(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))p(x)=(2π)p/2∣Σ∣1/21​exp(−21​(x−μ)TΣ−1(x−μ))

其中μ=(μ1,…,μp)T\mu=(\mu_1, \dots,\mu_p)^Tμ=(μ1​,…,μp​)T,Σ=(σ1,…,σp)p×p\Sigma=(\sigma_1, \dots, \sigma_p)_{p \times p}Σ=(σ1​,…,σp​)p×p​。本节我们假定Σ\SigmaΣ是正定的(实际上一定是半正定对称的)

(x−μ)TΣ−1(x−μ)(x-\mu)^T\Sigma^{-1}(x-\mu)(x−μ)TΣ−1(x−μ) 可以看作xxx和μ\muμ的马氏距离。Σ=I\Sigma = IΣ=I (单位矩阵)时,马氏距离=欧氏距离。


对于Σ\SigmaΣ方差矩阵,进行特征分解:

前置知识:矩阵的特征分解_shuijinghua的博客-CSDN博客_特征分解

Σ=UΛUT,UUT=UTU=I,Λ=diag(λi),i=1,…,p\Sigma = U \Lambda U^T, \ UU^T = U^TU = I, \ \Lambda=diag(\lambda_i), i = 1, \dots,pΣ=UΛUT, UUT=UTU=I, Λ=diag(λi​),i=1,…,p

UUU是特征向量组成的正交矩阵,U=(u1,…,up)p×pU=(u_1,\dots,u_p)_{p\times p}U=(u1​,…,up​)p×p​

正交矩阵的转置就是正交矩阵的逆

Σ=UΛUT=(u1λ1,…,upλp)[u1T…upT]=Σi=1puiλiuiT\begin{aligned} \Sigma &= U \Lambda U^T = (u_1\lambda_1, \dots, u_p\lambda_p) \left[\begin{matrix} u_1^T \\ \dots \\ u_p^T \end{matrix}\right] \\ &= \Sigma_{i=1} ^p u_i\lambda_iu_i^T \end{aligned}Σ​=UΛUT=(u1​λ1​,…,up​λp​)⎣⎡​u1T​…upT​​⎦⎤​=Σi=1p​ui​λi​uiT​​

Σ−1=(UΛUT)−1=UΛ−1UT\Sigma^{-1} = (U \Lambda U^T)^{-1} = U \Lambda^{-1}U^{T}Σ−1=(UΛUT)−1=UΛ−1UT,其中Λ−1=diag(1λi)\Lambda^{-1} = diag(\frac{1}{\lambda_i})Λ−1=diag(λi​1​),

所以原式 =Σi=1pui1λiuiT=\Sigma_{i=1} ^p u_i\ \frac{1}{\lambda_i}u_i^T=Σi=1p​ui​ λi​1​uiT​


回到马氏距离的式子:

(x−μ)TΣ−1(x−μ)=(x−μ)TΣi=1pui1λiuiT(x−μ)=Σi=1p(x−μ)Tui1λiuiT(x−μ)\begin{aligned} &(x-\mu)^T\Sigma^{-1}(x-\mu) \\ =& (x-\mu)^T\ \Sigma_{i=1} ^p u_i\frac{1}{\lambda_i}u_i^T(x-\mu) \\=& \Sigma_{i=1} ^p (x-\mu)^Tu_i\frac{1}{\lambda_i}u_i^T(x-\mu) \end{aligned}==​(x−μ)TΣ−1(x−μ)(x−μ)T Σi=1p​ui​λi​1​uiT​(x−μ)Σi=1p​(x−μ)Tui​λi​1​uiT​(x−μ)​

定义p×1p\times 1p×1的向量yyy, yi=(x−μ)Tuiy_i = (x-\mu)^Tu_iyi​=(x−μ)Tui​,则原式=Σi=1pyi1λiyiT=Σi=1pyi2λi=\displaystyle \Sigma_{i=1} ^p y_i\frac{1}{\lambda_i}y_i^T =\Sigma_{i=1} ^p \frac{y_i^2}{\lambda_i}=Σi=1p​yi​λi​1​yiT​=Σi=1p​λi​yi2​​

怎么理解呢,拿p=2p=2p=2举个例子,令马氏距离式子为Δ\DeltaΔ:

Δ=y12λ1+y22λ2\Delta = \frac{y_1^2}{\lambda_1} + \frac{y_2^2}{\lambda_2}Δ=λ1​y12​​+λ2​y22​​,取定它等于111的话,这其实是个关于y1,y2y_1, y_2y1​,y2​轴的椭圆,取定它的值不断变化(就是改变了概率),椭圆变大变小,其实是等高线(每个概率对应一个椭圆),这就是二维高斯分布的图像。

Math Basics - Gaussian Distribution - Limitation

方差矩阵参数过多。

方差矩阵是对称的,Σp×p\Sigma_{p\times p}Σp×p​实际上是有p(p+1)2=O(p2)\frac{p(p+1)}{2}=O(p^2)2p(p+1)​=O(p2)个参数。高维的话这样参数会很多,所以我们一般会做一些简化,比如假设Σ\SigmaΣ是对角矩阵:

Σ=(λ1…λp)\Sigma = \left( \begin{matrix} \lambda_1 & &\\ & \dots & \\ & & \lambda_p \end{matrix} \right)Σ=⎝⎛​λ1​​…​λp​​⎠⎞​

那前面就不需要做正交分解了,相当于不需要uiu_iui​了,可以直接把关于yiy_iyi​的方程看作关于xix_ixi​的方程。此时椭圆的图像就不是斜的了(之前是因为yiy_iyi​轴和xix_ixi​轴有偏差)

进一步假设λi\lambda_iλi​的值全部相同,椭圆就会变成一个圆。这种情况叫各向同性。

举个例子:在factor analysis因子分析中,就假设zzz是一个对角矩阵;概率PCA是因子分析的特殊情况,zzz是各向同性。

比如对于两团分开的数据点,用一个高斯分布表达就不确切。解决用混合模型,比如两个高斯分布。

Math Basics - Gaussian Distribution - Margional & Conditional Probability

已知高斯分布,求边缘概率分布以及条件概率分布。

Data: X=(x1,…,xN)N∗pTX = (x_1, \dots, x_N)^T_{N*p}X=(x1​,…,xN​)N∗pT​,其中xi∈Rp,xiiid∼N(μ,Σ)x_i \in \R^p, \ x_i \ \substack{ iid \\ \sim} \ N(\mu, \Sigma)xi​∈Rp, xi​ iid∼​ N(μ,Σ)

p(x)=1(2π)p/2∣Σ∣1/2exp(−12(x−μ)TΣ−1(x−μ))p(x) = \frac{1}{(2\pi)^{p/2}|\Sigma|^{1/2}}exp(-\frac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))p(x)=(2π)p/2∣Σ∣1/21​exp(−21​(x−μ)TΣ−1(x−μ))

其中μ=(μ1,…,μp)T\mu=(\mu_1, \dots,\mu_p)^Tμ=(μ1​,…,μp​)T,Σ=(σ1,…,σp)p×p\Sigma=(\sigma_1, \dots, \sigma_p)_{p \times p}Σ=(σ1​,…,σp​)p×p​。

所以可以把问题转化为:

已知X=(xaxb)X=\left( \begin{matrix} x_a \\ x_b\end{matrix} \right)X=(xa​xb​​),其中xax_axa​是mmm维,xbx_bxb​是nnn维,m+n=pm+n=pm+n=p

同理μ=(μaμb)\mu=\left( \begin{matrix} \mu_a \\ \mu_b\end{matrix} \right)μ=(μa​μb​​), Σ=(ΣaaΣabΣbaΣbb)\Sigma=\left( \begin{matrix} \Sigma_{aa} &\Sigma_{ab} \\ \Sigma_{ba} &\Sigma_{bb}\end{matrix} \right)Σ=(Σaa​Σba​​Σab​Σbb​​)

求:P(xa)P(x_a)P(xa​), P(xb∣xa)P(x_b|x_a)P(xb​∣xa​)

PRML书有个方法:配方法。这里讲另一个。

前置定理:X∼N(μ,Σ)X \sim N(\mu, \Sigma)X∼N(μ,Σ),y=AX+By = AX+By=AX+B,则y∼N(Aμ+B,AΣAT)y \sim N(A\mu+B, A\Sigma A^T)y∼N(Aμ+B,AΣAT)

XXX是p×1p \times 1p×1的,AAA是q×pq \times pq×p

xa=(Im0)(xaxb)x_a = \begin{matrix}(I_m & 0)\end{matrix} \left( \begin{matrix} x_a \\ x_b \end{matrix}\right)xa​=(Im​​0)​(xa​xb​​),矩阵维数:m×1,m×p,p×1m\times 1, m \times p, p \times 1m×1,m×p,p×1

所以xa∼N(μ1,Σ1)x_a \sim N(\mu_1, \Sigma_1)xa​∼N(μ1​,Σ1​),其中

μ1=(Im0)μ=μa\mu_1 = \begin{matrix}(I_m & 0)\end{matrix} \mu = \mu_aμ1​=(Im​​0)​μ=μa​

Σ1=(Im0)Σ(Im0)=Σaa\Sigma_1 = \begin{matrix}(I_m & 0)\end{matrix} \Sigma \left( \begin{matrix}I_m \\ 0\end{matrix} \right)=\Sigma_{aa}Σ1​=(Im​​0)​Σ(Im​0​)=Σaa​

所以xa∼N(μa,Σaa)x_a \sim N(\mu_a, \Sigma_{aa})xa​∼N(μa​,Σaa​)

对于P(xb∣xa)P(x_b|x_a)P(xb​∣xa​):

定义变量xb⋅a=xb−ΣbaΣaa−1xax_{b·a}=x_b-\Sigma_{ba}\Sigma_{aa}^{-1}x_axb⋅a​=xb​−Σba​Σaa−1​xa​,那么假如xb⋅a∼N(μˉ,Σˉ)x_{b·a} \sim N(\bar{\mu},\bar{\Sigma})xb⋅a​∼N(μˉ​,Σˉ),有xb=xb⋅a+ΣbaΣaa−1xax_b=x_{b·a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_axb​=xb⋅a​+Σba​Σaa−1​xa​,就能求出结果。所以尝试求xb⋅ax_{b·a}xb⋅a​。

所以构造:(舒尔分解)

xb⋅a=xb−ΣbaΣaa−1xax_{b·a}=x_b-\Sigma_{ba}\Sigma_{aa}^{-1}x_axb⋅a​=xb​−Σba​Σaa−1​xa​

μb⋅a=μb−ΣbaΣaa−1μa\mu_{b·a}=\mu_b - \Sigma_{ba}\Sigma_{aa}^{-1}\mu_aμb⋅a​=μb​−Σba​Σaa−1​μa​

Σbb⋅a=Σbb−ΣbaΣaa−1Σab\Sigma_{bb·a}=\Sigma_{bb}-\Sigma_{ba}\Sigma_{aa}^{-1}\Sigma_{ab}Σbb⋅a​=Σbb​−Σba​Σaa−1​Σab​

xb⋅a=(−ΣbaΣaa−1In)(xaxb)x_{b·a}=\begin{matrix}(-\Sigma_{ba}\Sigma_{aa}^{-1} & I_n)\left(\begin{matrix}x_a \\ x_b \end{matrix}\right) \end{matrix}xb⋅a​=(−Σba​Σaa−1​​In​)(xa​xb​​)​

然后根据前面的定理有:

E(xb⋅a)=(−ΣbaΣaa−1In)⋅(μaμb)=μb⋅aE(x_{b·a})=(\begin{matrix}-\Sigma_{ba}\Sigma_{aa}^{-1} & I_n\end{matrix})·\left( \begin{matrix} \mu_a \\ \mu_b \end{matrix} \right)=\mu_{b·a}E(xb⋅a​)=(−Σba​Σaa−1​​In​​)⋅(μa​μb​​)=μb⋅a​

Var(xb⋅a)=(−ΣbaΣaa−1In)(ΣaaΣabΣbaΣbb)((−ΣbaΣaa−1)TIn)=Σbb⋅aVar(x_{b·a})=(\begin{matrix}-\Sigma_{ba}\Sigma_{aa}^{-1} & I_n\end{matrix}) \left( \begin{matrix} \Sigma_{aa} &\Sigma_{ab} \\ \Sigma_{ba} &\Sigma_{bb}\end{matrix} \right) \left(\begin{matrix} (-\Sigma_{ba}\Sigma_{aa}^{-1})^T \\ I_n\end{matrix}\right)=\Sigma_{bb·a}Var(xb⋅a​)=(−Σba​Σaa−1​​In​​)(Σaa​Σba​​Σab​Σbb​​)((−Σba​Σaa−1​)TIn​​)=Σbb⋅a​

所以xb⋅a∼N(μb⋅a,Σbb⋅a)x_{b·a} \sim N(\mu_{b·a}, \Sigma_{bb·a})xb⋅a​∼N(μb⋅a​,Σbb⋅a​)


证明xb⋅ax_{b·a}xb⋅a​和xax_axa​独立:

那么根据xb=xb⋅a+ΣbaΣaa−1xax_b=x_{b·a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_axb​=xb⋅a​+Σba​Σaa−1​xa​:

xb∣xa=xb⋅a∣xa+ΣbaΣaa−1xa∣xa=xb⋅a+ΣbaΣaa−1xax_b | x_a = x_{b·a} | x_a + \Sigma_{ba}\Sigma_{aa}^{-1}x_a | x_a = x_{b·a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_axb​∣xa​=xb⋅a​∣xa​+Σba​Σaa−1​xa​∣xa​=xb⋅a​+Σba​Σaa−1​xa​

所以E(xb∣xa)=μb⋅a+ΣbaΣaa−1xaE(x_b|x_a) = \mu_{b·a}+\Sigma_{ba}\Sigma_{aa}^{-1}x_aE(xb​∣xa​)=μb⋅a​+Σba​Σaa−1​xa​,Var(xb∣xa)=Σbb⋅aVar(x_b|x_a) = \Sigma_{bb·a}Var(xb​∣xa​)=Σbb⋅a​。

反过来也是一样的。

Math Basics - Gaussian Distribution - Joint Probability

下面利用上边四个量,求解线性模型:

已知:p(x)=N(μ,Λ−1),p(y∣x)=N(Ax+b,L−1)p(x)=\mathcal{N}(\mu,\Lambda^{-1}),p(y|x)=\mathcal{N}(Ax+b,L^{-1})p(x)=N(μ,Λ−1),p(y∣x)=N(Ax+b,L−1),求解:p(y),p(x∣y)p(y),p(x|y)p(y),p(x∣y)。

解:令 y=Ax+b+ϵ,ϵ∼N(0,L−1)y=Ax+b+\epsilon,\epsilon\sim\mathcal{N}(0,L^{-1})y=Ax+b+ϵ,ϵ∼N(0,L−1),所以 E[y]=E[Ax+b+ϵ]=Aμ+b\mathbb{E}[y]=\mathbb{E}[Ax+b+\epsilon]=A\mu+bE[y]=E[Ax+b+ϵ]=Aμ+b,Var[y]=AΛ−1AT+L−1Var[y]=A \Lambda^{-1}A^T+L^{-1}Var[y]=AΛ−1AT+L−1。因此:

p(y)=N(Aμ+b,L−1+AΛ−1AT)p(y)=\mathcal{N}(A\mu+b,L^{-1}+A\Lambda^{-1}A^T)p(y)=N(Aμ+b,L−1+AΛ−1AT)

引入 z=(xy)z=\begin{pmatrix}x\\y\end{pmatrix}z=(xy​),我们可以得到 Cov[x,y]=E[(x−E[x])(y−E[y])T]Cov[x,y]=\mathbb{E}[(x-\mathbb{E}[x])(y-\mathbb{E}[y])^T]Cov[x,y]=E[(x−E[x])(y−E[y])T]。

对于这个协方差可以直接计算:

Cov(x,y)=E[(x−μ)(Ax−Aμ+ϵ)T]=E[(x−μ)(x−μ)TAT]=Var[x]AT=Λ−1AT\begin{aligned} Cov(x,y) &= \mathbb{E}[(x-\mu)(Ax-A\mu+\epsilon)^T] \\ &=\mathbb{E}[(x-\mu)(x-\mu)^TA^T] \\ &=Var[x]A^T \\&=\Lambda^{-1}A^T \end{aligned}Cov(x,y)​=E[(x−μ)(Ax−Aμ+ϵ)T]=E[(x−μ)(x−μ)TAT]=Var[x]AT=Λ−1AT​

注意到协方差矩阵的对称性,所以

p(z)=N(μAμ+b),(Λ−1Λ−1ATAΛ−1L−1+AΛ−1AT)p(z)=\mathcal{N}\begin{pmatrix}\mu\\A\mu+b\end{pmatrix},\begin{pmatrix}\Lambda^{-1}&\Lambda^{-1}A^T\\A\Lambda^{-1}&L^{-1}+A\Lambda^{-1}A^T\end{pmatrix}p(z)=N(μAμ+b​),(Λ−1AΛ−1​Λ−1ATL−1+AΛ−1AT​)

根据之前的公式,我们可以得到:

E[x∣y]=μ+Λ−1AT(L−1+AΛ−1AT)−1(y−Aμ−b)\mathbb{E}[x|y]=\mu+\Lambda^{-1}A^T(L^{-1}+A\Lambda^{-1}A^T)^{-1}(y-A\mu-b)E[x∣y]=μ+Λ−1AT(L−1+AΛ−1AT)−1(y−Aμ−b)

Var[x∣y]=Λ−1−Λ−1AT(L−1+AΛ−1AT)−1AΛ−1Var[x|y]=\Lambda^{-1}-\Lambda^{-1}A^T(L^{-1}+A\Lambda^{-1}A^T)^{-1}A\Lambda^{-1}Var[x∣y]=Λ−1−Λ−1AT(L−1+AΛ−1AT)−1AΛ−1

Linear Regression - Least Squre Method

假设数据集为: D=(x1,y1),(x2,y2),⋯,(xN,yN)\mathcal{D}={(x_1, y_1),(x_2, y_2),\cdots,(x_N, y_N)}D=(x1​,y1​),(x2​,y2​),⋯,(xN​,yN​)

后面我们记: X=(x1,x2,⋯,xN)T,Y=(y1,y2,⋯,yN)TX=(x_1,x_2,\cdots,x_N)^T,Y=(y_1,y_2,\cdots,y_N)^TX=(x1​,x2​,⋯,xN​)T,Y=(y1​,y2​,⋯,yN​)T

线性回归假设: f(w)=wTxf(w)=w^Txf(w)=wTx

对这个问题,采用二范数定义的平方误差来定义损失函数:

L(w)=∑i=1N∣∣wTxi−yi∣∣22L(w)=\sum\limits_{i=1}^N||w^Tx_i-y_i||^2_2L(w)=i=1∑N​∣∣wTxi​−yi​∣∣22​

展开得到:

L(w)=(wTx1−y1,⋯,wTxN−yN)⋅(wTx1−y1,⋯,wTxN−yN)T=(wTXT−YT)⋅(Xw−Y)=wTXTXw−YTXw−wTXTY+YTY=wTXTXw−2wTXTY+YTY\begin{aligned} L(w) &= (w^Tx_1-y_1,\cdots,w^Tx_N-y_N)\cdot (w^Tx_1-y_1,\cdots,w^Tx_N-y_N)^T\\ &= (w^TX^T-Y^T)\cdot (Xw-Y)\\ &= w^TX^TXw-Y^TXw-w^TX^TY+Y^TY\\ &= w^TX^TXw-2w^TX^TY+Y^TY \end{aligned}L(w)​=(wTx1​−y1​,⋯,wTxN​−yN​)⋅(wTx1​−y1​,⋯,wTxN​−yN​)T=(wTXT−YT)⋅(Xw−Y)=wTXTXw−YTXw−wTXTY+YTY=wTXTXw−2wTXTY+YTY​

最小化这个值的 w^\hat{w}w^ :

w^=argminwL(w)⟶∂∂wL(w)=0⟶2XTXw^−2XTY=0⟶w^=(XTX)−1XTY=X+Y\begin{aligned} \hat{w}=\mathop{argmin}\limits_wL(w)&\longrightarrow\frac{\partial}{\partial w}L(w)=0\\ &\longrightarrow2X^TX\hat{w}-2X^TY=0\\ &\longrightarrow \hat{w}=(X^TX)^{-1}X^TY=X^+Y \end{aligned}w^=wargmin​L(w)​⟶∂w∂​L(w)=0⟶2XTXw^−2XTY=0⟶w^=(XTX)−1XTY=X+Y​

这个式子中 (XTX)−1XT(X^TX)^{-1}X^T(XTX)−1XT 又被称为伪逆。对于行满秩或者列满秩的 XXX,可以直接求解,但是对于非满秩的样本集合,需要使用奇异值分解(SVD)的方法,对 XXX 求奇异值分解,得到 X=UΣVTX=U\Sigma V^TX=UΣVT

于是: X+=VΣ−1UTX^+=V\Sigma^{-1}U^TX+=VΣ−1UT

在几何上,最小二乘法相当于模型(这里就是直线)和试验值的距离的平方求和,假设我们的试验样本张成一个 ppp 维空间(满秩的情况):X=Span(x1,⋯,xN)X=Span(x_1,\cdots,x_N)X=Span(x1​,⋯,xN​)

而模型可以写成 f(w)=Xβf(w)=X\betaf(w)=Xβ,也就是 x1,⋯,xNx_1,\cdots,x_Nx1​,⋯,xN​ 的某种组合,而最小二乘法就是说希望 YYY 和这个模型距离越小越好,于是它们的差应该与这个张成的空间垂直: XT⋅(Y−Xβ)=0⟶β=(XTX)−1XTYX^T\cdot(Y-X\beta)=0\longrightarrow\beta=(X^TX)^{-1}X^TYXT⋅(Y−Xβ)=0⟶β=(XTX)−1XTY


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK