欢迎光临
我们一直在努力

MAP(最大后验)估计理论(1)以及相关应用


1、 贝叶斯背景

MAP 本质是贝叶斯统计中的概念。贝叶斯公式:

p(θ∣D)=p(D∣θ),p(θ)p(D)
p(\\theta \\mid D) = \\frac{p(D \\mid \\theta), p(\\theta)}{p(D)}
p(θD)=p(D)p(Dθ),p(θ)

  • θ\\thetaθ:未知参数或状态
  • DDD:观测数据
  • p(D∣θ)p(D\\mid\\theta)p(Dθ):似然函数(Likelihood)
  • p(θ)p(\\theta)p(θ):先验分布(Prior)
  • p(θ∣D)p(\\theta\\mid D)p(θD):后验分布(Posterior)
  • p(D)=∫p(D∣θ)p(θ)dθp(D) = \\int p(D\\mid\\theta)p(\\theta)d\\thetap(D)=p(Dθ)p(θ)dθ:边缘似然(Evidence),常作为归一化因子

1.1 最大后验定义

MAP 的定义:

θ^MAP=arg⁡max⁡θp(θ∣D)
\\hat{\\theta}_{\\mathrm{MAP}} = \\arg \\max_{\\theta} p(\\theta \\mid D)
θ^MAP=argθmaxp(θD)

代入贝叶斯公式:

θ^MAP=arg⁡max⁡θp(D∣θ),p(θ)
\\hat{\\theta}_{\\mathrm{MAP}} = \\arg \\max_{\\theta} p(D \\mid \\theta), p(\\theta)
θ^MAP=argθmaxp(Dθ),p(θ)

  • 对比 MLE(最大似然估计):

θ^MLE=arg⁡max⁡θp(D∣θ)
\\hat{\\theta}_{\\mathrm{MLE}} = \\arg \\max_{\\theta} p(D \\mid \\theta)
θ^MLE=argθmaxp(Dθ)

  • 关系:

    • 若先验均匀:MAP=MLE\\text{MAP} = \\text{MLE}MAP=MLE
    • MAP = MLE + 先验约束
  • MAP 可以理解为在数据拟合的同时考虑先验正则化


1.2 对数形式

通常求解 MAP 时使用对数:

θ^MAP=arg⁡max⁡θ(log⁡p(D∣θ)+log⁡p(θ))
\\hat{\\theta}_{\\mathrm{MAP}} =
\\arg\\max_{\\theta}
\\big( \\log p(D\\mid\\theta) + \\log p(\\theta) \\big)
θ^MAP=argθmax(logp(Dθ)+logp(θ))

  • log⁡p(D∣θ)\\log p(D\\mid\\theta)logp(Dθ):数据拟合项
  • log⁡p(θ)\\log p(\\theta)logp(θ):正则化 / 先验项

2、 一维高斯观测的 MAP 推导

假设观测模型:

yi=θ+ϵi,ϵi∼N(0,σ2)
y_i = \\theta + \\epsilon_i,
\\quad
\\epsilon_i \\sim \\mathcal{N}(0, \\sigma^2)
yi=θ+ϵi,ϵiN(0,σ2)

先验:

θ∼N(μ0,σ02)
\\theta \\sim \\mathcal{N}(\\mu_0, \\sigma_0^2)
θN(μ0,σ02)


2.1 似然函数

p(D∣θ)=∏i=1N12πσ2exp⁡((yi−θ)22σ2)
p(D\\mid\\theta) =
\\prod_{i=1}^N
\\frac{1}{\\sqrt{2\\pi\\sigma^2}}
\\exp\\Big(
\\frac{(y_i-\\theta)^2}{2\\sigma^2}
\\Big)
p(Dθ)=i=1N2πσ21exp(2σ2(yiθ)2)

对数似然:

log⁡p(D∣θ)=−N2log⁡(2πσ2)−12σ2∑i(yi−θ)2
\\log p(D\\mid\\theta)=
-\\frac{N}{2} \\log(2\\pi\\sigma^2)-
\\frac{1}{2\\sigma^2} \\sum_i (y_i-\\theta)^2
logp(Dθ)=2Nlog(2πσ2)2σ21i(yiθ)2


2.2 先验对数

log⁡p(θ)=−12log⁡(2πσ02)−12σ02(θ−μ0)2
\\log p(\\theta)=
-\\frac12 \\log(2\\pi \\sigma_0^2)-
\\frac{1}{2\\sigma_0^2} (\\theta-\\mu_0)^2
logp(θ)=21log(2πσ02)2σ021(θμ0)2


2.3 MAP 公式

把根据将两项加起来:

log⁡p(D∣θ)+log⁡p(θ)=常数⏟与 θ 无关−[12σ2∑i(yi−θ)2+12σ02(θ−μ0)2]
\\log p(D \\mid \\theta)
+
\\log p(\\theta)=
\\underbrace{\\text{常数}}_{\\text{与 }\\theta\\text{ 无关}}-
\\left[
\\frac{1}{2\\sigma^2}
\\sum_i (y_i-\\theta)^2
+
\\frac{1}{2\\sigma_0^2}
(\\theta-\\mu_0)^2
\\right]
logp(Dθ)+logp(θ)= θ 无关常数[2σ21i(yiθ)2+2σ021(θμ0)2]

关键认知点:

  • 常数项 不影响 arg⁡max⁡\\arg\\maxargmax
  • 最大化负的东西 ⇔ 最小化正的东西

因此:

arg⁡max⁡θ(log⁡p(D∣θ)+log⁡p(θ))
\\arg\\max_\\theta
\\big(
\\log p(D \\mid \\theta)
+
\\log p(\\theta)
\\big)
argθmax(logp(Dθ)+logp(θ))

等价于

θ^MAP=arg⁡min⁡θ12σ2∑i(yi−θ)2+12σ02(θ−μ0)2
\\hat{\\theta}_{\\mathrm{MAP}}=
\\arg \\min_{\\theta}
\\frac{1}{2\\sigma^2} \\sum_i (y_i-\\theta)^2
+
\\frac{1}{2\\sigma_0^2} (\\theta-\\mu_0)^2
θ^MAP=argθmin2σ21i(yiθ)2+2σ021(θμ0)2

  • 直观:最小化数据残差 + 先验残差

求导:

∂∂θ[12σ2∑i(yi−θ)2+12σ02(θ−μ0)2]=0
\\frac{\\partial}{\\partial \\theta}
\\left[
\\frac{1}{2\\sigma^2} \\sum_i (y_i-\\theta)^2
+
\\frac{1}{2\\sigma_0^2} (\\theta-\\mu_0)^2
\\right]
= 0
θ[2σ21i(yiθ)2+2σ021(θμ0)2]=0

−1σ2∑i(yi−θ)−1σ02(μ0−θ)=0
-\\frac{1}{\\sigma^2} \\sum_i (y_i-\\theta)-
\\frac{1}{\\sigma_0^2} (\\mu_0-\\theta)
= 0
σ21i(yiθ)σ021(μ0θ)=0

解出闭式解:

θ^MAP=Nσ2yˉ+1σ02μ0Nσ2+1σ02
\\hat{\\theta}_{\\mathrm{MAP}}=
\\frac{\\frac{N}{\\sigma^2} \\bar{y}
+
\\frac{1}{\\sigma_0^2} \\mu_0}
{\\frac{N}{\\sigma^2}
+
\\frac{1}{\\sigma_0^2}}
θ^MAP=σ2N+σ021σ2Nyˉ+σ021μ0

  • yˉ=1N∑iyi\\bar{y} = \\frac{1}{N} \\sum_i y_iyˉ=N1iyi
  • 直观:数据平均和先验平均加权融合,权重与方差成反比

详细求解过程:

  • 展开平方项
  • 先分别展开:

    数据项

    ∑i(yi−θ)2=∑i(yi2−2yiθ+θ2)
    \\sum_i (y_i-\\theta)^2=
    \\sum_i (y_i^2 – 2y_i\\theta + \\theta^2)
    i(yiθ)2=i(yi22yiθ+θ2)

    先验项

    (θ−μ0)2=θ2−2μ0θ+μ02
    (\\theta-\\mu_0)^2=
    \\theta^2 – 2\\mu_0\\theta + \\mu_0^2
    (θμ0)2=θ22μ0θ+μ02


    2.对 θ\\thetaθ 求导

    J(θ)J(\\theta)J(θ) 求导:

    第一项

    ∂∂θ[12σ2∑i(yi−θ)2]=1σ2∑i(θ−yi)
    \\frac{\\partial}{\\partial\\theta}
    \\left[
    \\frac{1}{2\\sigma^2}
    \\sum_i (y_i-\\theta)^2
    \\right]=
    \\frac{1}{\\sigma^2}
    \\sum_i (\\theta – y_i)
    θ[2σ21i(yiθ)2]=σ21i(θyi)

    第二项

    ∂∂θ[12σ02(θ−μ0)2]=1σ02(θ−μ0)
    \\frac{\\partial}{\\partial\\theta}
    \\left[
    \\frac{1}{2\\sigma_0^2}
    (\\theta-\\mu_0)^2
    \\right]=
    \\frac{1}{\\sigma_0^2}(\\theta-\\mu_0)
    θ[2σ021(θμ0)2]=σ021(θμ0)

    3.令导数为零(一阶最优条件)

    1σ2∑i(θ−yi)+1σ02(θ−μ0)=0
    \\frac{1}{\\sigma^2}
    \\sum_i (\\theta – y_i)
    +
    \\frac{1}{\\sigma_0^2}(\\theta-\\mu_0)
    =0
    σ21i(θyi)+σ021(θμ0)=0

    整理:

    Nσ2θ−1σ2∑iyi+1σ02θ−1σ02μ0=0
    \\frac{N}{\\sigma^2}\\theta-
    \\frac{1}{\\sigma^2}\\sum_i y_i
    +
    \\frac{1}{\\sigma_0^2}\\theta-
    \\frac{1}{\\sigma_0^2}\\mu_0
    =0
    σ2Nθσ21iyi+σ021θσ021μ0=0


    4.把 θ\\thetaθ 项合并

    θ(Nσ2+1σ02)=1σ2∑iyi+1σ02μ0
    \\theta
    \\left(
    \\frac{N}{\\sigma^2}
    +
    \\frac{1}{\\sigma_0^2}
    \\right)=
    \\frac{1}{\\sigma^2}\\sum_i y_i
    +
    \\frac{1}{\\sigma_0^2}\\mu_0
    θ(σ2N+σ021)=σ21iyi+σ021μ0


    5.解出 θ\\thetaθ

    两边同时除以系数:

    θ^MAP=1σ2∑iyi+1σ02μ0Nσ2+1σ02
    \\hat{\\theta}_{\\mathrm{MAP}}=
    \\frac
    {
    \\frac{1}{\\sigma^2}\\sum_i y_i
    +
    \\frac{1}{\\sigma_0^2}\\mu_0
    }
    {
    \\frac{N}{\\sigma^2}
    +
    \\frac{1}{\\sigma_0^2}
    }
    θ^MAP=σ2N+σ021σ21iyi+σ021μ0

    注意:

    ∑iyi=Nyˉ
    \\sum_i y_i = N \\bar y
    iyi=Nyˉ

    代入即可得到上面的结果:

    θ^MAP=Nσ2yˉ+1σ02μ0Nσ2+1σ02
    \\boxed{
    \\hat{\\theta}_{\\mathrm{MAP}}=
    \\frac{\\frac{N}{\\sigma^2} \\bar{y}
    +
    \\frac{1}{\\sigma_0^2} \\mu_0}
    {\\frac{N}{\\sigma^2}
    +
    \\frac{1}{\\sigma_0^2}}
    }
    θ^MAP=σ2N+σ021σ2Nyˉ+σ021μ0

    6.这条公式的“物理意义”(非常重要)

    精度加权平均

    把它改写成:

    θ^MAP=wdyˉ+wpμ0
    \\hat{\\theta}_{\\mathrm{MAP}}=
    w_d \\bar y
    +
    w_p \\mu_0
    θ^MAP=wdyˉ+wpμ0

    其中

    wd=Nσ2Nσ2+1σ02,wp=1σ02Nσ2+1σ02
    w_d = \\frac{\\frac{N}{\\sigma^2}}{\\frac{N}{\\sigma^2}+\\frac{1}{\\sigma_0^2}},
    \\quad
    w_p = \\frac{\\frac{1}{\\sigma_0^2}}{\\frac{N}{\\sigma^2}+\\frac{1}{\\sigma_0^2}}
    wd=σ2N+σ021σ2N,wp=σ2N+σ021σ021

    权重 ∝ 精度(方差的倒数)


    3、 多维高斯线性模型 MAP

    3.1 问题设定

    假设我们有:

  • 观测模型(线性高斯):
  • y=Hx+v,v∼N(0,R)
    \\mathbf{y} = H \\mathbf{x} + \\mathbf{v}, \\quad \\mathbf{v} \\sim \\mathcal{N}(0, R)
    y=Hx+v,vN(0,R)

    • y∈Rm\\mathbf{y} \\in \\mathbb{R}^myRm:观测向量
    • x∈Rn\\mathbf{x} \\in \\mathbb{R}^nxRn:未知状态向量
    • H∈Rm×nH \\in \\mathbb{R}^{m \\times n}HRm×n:观测矩阵
    • R∈Rm×mR \\in \\mathbb{R}^{m \\times m}RRm×m:观测噪声协方差(正定)
  • 先验分布:
  • x∼N(μ0,Σ0)
    \\mathbf{x} \\sim \\mathcal{N}(\\mu_0, \\Sigma_0)
    xN(μ0,Σ0)

    • μ0∈Rn\\mu_0 \\in \\mathbb{R}^nμ0Rn:先验均值
    • Σ0∈Rn×n\\Sigma_0 \\in \\mathbb{R}^{n \\times n}Σ0Rn×n:先验协方差(正定)

    目标:求 最大后验估计(MAP):

    x^MAP=arg⁡max⁡xp(x∣y)
    \\hat{\\mathbf{x}}_{\\text{MAP}} = \\arg\\max_{\\mathbf{x}} p(\\mathbf{x}|\\mathbf{y})
    x^MAP=argxmaxp(xy)


    3.2 对数后验推导

    根据贝叶斯公式:

    p(x∣y)∝p(y∣x)p(x)
    p(\\mathbf{x}|\\mathbf{y}) \\propto p(\\mathbf{y}|\\mathbf{x}) p(\\mathbf{x})
    p(xy)p(yx)p(x)

    • 观测似然:

    p(y∣x)=1(2π)m/2∣R∣1/2exp⁡(−12(y−Hx)TR−1(y−Hx))
    p(\\mathbf{y}|\\mathbf{x}) =
    \\frac{1}{(2\\pi)^{m/2} |R|^{1/2}}
    \\exp\\Big(
    -\\frac12 (\\mathbf{y}-H\\mathbf{x})^T R^{-1} (\\mathbf{y}-H\\mathbf{x})
    \\Big)
    p(yx)=(2π)m/2R1/21exp(21(yHx)TR1(yHx))

    • 先验:

    p(x)=1(2π)n/2∣Σ0∣1/2exp⁡(−12(x−μ0)TΣ0−1(x−μ0))
    p(\\mathbf{x}) =
    \\frac{1}{(2\\pi)^{n/2} |\\Sigma_0|^{1/2}}
    \\exp\\Big(
    -\\frac12 (\\mathbf{x}-\\mu_0)^T \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)
    \\Big)
    p(x)=(2π)n/2Σ01/21exp(21(xμ0)TΣ01(xμ0))

    取对数(丢掉常数项,因为不影响最大化):

    log⁡p(x∣y)=−12(y−Hx)TR−1(y−Hx)−12(x−μ0)TΣ0−1(x−μ0)+const
    \\log p(\\mathbf{x}|\\mathbf{y})=
    -\\frac12 (\\mathbf{y}-H\\mathbf{x})^T R^{-1} (\\mathbf{y}-H\\mathbf{x})
    -\\frac12 (\\mathbf{x}-\\mu_0)^T \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)+
    \\text{const}
    logp(xy)=21(yHx)TR1(yHx)21(xμ0)TΣ01(xμ0)+const


    3.3 转化为加权最小二乘问题

    MAP = 最大化后验 → 最小化负对数后验:

    x^MAP=arg⁡min⁡x(y−Hx)TR−1(y−Hx)⏟观测残差+(x−μ0)TΣ0−1(x−μ0)⏟先验正则
    \\hat{\\mathbf{x}}_{\\text{MAP}}=
    \\arg\\min_{\\mathbf{x}}
    \\underbrace{(\\mathbf{y}-H\\mathbf{x})^T R^{-1} (\\mathbf{y}-H\\mathbf{x})}_{\\text{观测残差}}
    +
    \\underbrace{(\\mathbf{x}-\\mu_0)^T \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)}_{\\text{先验正则}}
    x^MAP=argxmin观测残差(yHx)TR1(yHx)+先验正则(xμ0)TΣ01(xμ0)

    • 解释:

      • 数据残差项:拟合观测
      • 先验项:约束解靠近先验
    • 权重由协方差矩阵的逆决定 → 协方差越小,约束越强


    3.4 求闭式解

    这是典型的二次型最小化问题,具体内容参见下面。

    3.4.1 梯度求零

    x\\mathbf{x}x 求梯度:

    ∇x[(y−Hx)TR−1(y−Hx)+(x−μ0)TΣ0−1(x−μ0)]=0
    \\nabla_\\mathbf{x}
    \\Big[
    (\\mathbf{y}-H\\mathbf{x})^T R^{-1} (\\mathbf{y}-H\\mathbf{x})
    +
    (\\mathbf{x}-\\mu_0)^T \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)
    \\Big]
    = 0
    x[(yHx)TR1(yHx)+(xμ0)TΣ01(xμ0)]=0

    计算梯度:

  • ∇x(y−Hx)TR−1(y−Hx)=−2HTR−1(y−Hx)
    \\nabla_\\mathbf{x}
    (\\mathbf{y}-H\\mathbf{x})^T R^{-1} (\\mathbf{y}-H\\mathbf{x})=
    -2 H^T R^{-1} (\\mathbf{y}-H\\mathbf{x})
    x(yHx)TR1(yHx)=2HTR1(yHx)

  • ∇x(x−μ0)TΣ0−1(x−μ0)=2Σ0−1(x−μ0)
    \\nabla_\\mathbf{x}
    (\\mathbf{x}-\\mu_0)^T \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)=
    2 \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)
    x(xμ0)TΣ01(xμ0)=2Σ01(xμ0)

    合并:

    −2HTR−1(y−Hx)+2Σ0−1(x−μ0)=0
    -2 H^T R^{-1} (\\mathbf{y}-H\\mathbf{x})
    +
    2 \\Sigma_0^{-1} (\\mathbf{x}-\\mu_0)
    = 0
    2HTR1(yHx)+2Σ01(xμ0)=0

    除以 2 并整理:

    HTR−1Hx+Σ0−1x=HTR−1y+Σ0−1μ0
    H^T R^{-1} H \\mathbf{x}
    +
    \\Sigma_0^{-1} \\mathbf{x}=
    H^T R^{-1} \\mathbf{y}
    +
    \\Sigma_0^{-1} \\mu_0
    HTR1Hx+Σ01x=HTR1y+Σ01μ0


    3.4.2 闭式解

    x^MAP=(Σ0−1+HTR−1H)−1(HTR−1y+Σ0−1μ0)
    \\boxed{
    \\hat{\\mathbf{x}}_{\\text{MAP}}=
    (\\Sigma_0^{-1} + H^T R^{-1} H)^{-1}
    (H^T R^{-1} \\mathbf{y} + \\Sigma_0^{-1} \\mu_0)
    }
    x^MAP=(Σ01+HTR1H)1(HTR1y+Σ01μ0)

    • 条件协方差:

    ΣMAP=(Σ0−1+HTR−1H)−1
    \\boxed{
    \\Sigma_{\\text{MAP}}=
    (\\Sigma_0^{-1} + H^T R^{-1} H)^{-1}
    }
    ΣMAP=(Σ01+HTR1H)1

    • 直观理解:

      • 先验协方差小 → 先验更可信
      • 观测协方差小 → 数据更可信
      • MAP 均值 = 两者加权融合

    3.5 数值稳定处理

    • 矩阵求逆可能数值不稳定
    • 推荐使用 Cholesky 分解 或 信息矩阵形式
    3.5.1 信息矩阵形式

    Λ0=Σ0−1,Λy=HTR−1H
    \\Lambda_0 = \\Sigma_0^{-1}, \\quad
    \\Lambda_y = H^T R^{-1} H
    Λ0=Σ01,Λy=HTR1H

    ΣMAP=(Λ0+Λy)−1,x^MAP=ΣMAP(Λ0μ0+HTR−1y)
    \\Sigma_{\\text{MAP}} = (\\Lambda_0 + \\Lambda_y)^{-1},
    \\quad
    \\hat{x}_{\\text{MAP}} = \\Sigma_{\\text{MAP}} (\\Lambda_0 \\mu_0 + H^T R^{-1} y)
    ΣMAP=(Λ0+Λy)1,x^MAP=ΣMAP(Λ0μ0+HTR1y)

    • 更稳定,尤其在协方差条件数很差时
    3.5.2 Cholesky 求解
  • Λ=Σ0−1+HTR−1H
    \\Lambda = \\Sigma_0^{-1} + H^T R^{-1} H
    Λ=Σ01+HTR1H

  • Cholesky 分解
    Λ=LLT
    \\Lambda = L L^T
    Λ=LLT

  • 先解
    Lz=HTR−1y+Σ0−1μ0
    L z = H^T R^{-1} y + \\Sigma_0^{-1} \\mu_0
    Lz=HTR1y+Σ01μ0

  • 再解
    LTx^MAP=z
    L^T \\hat{x}_{\\text{MAP}} = z
    LTx^MAP=z

  • 避免显式求逆,提高数值稳定性


    3.6 与卡尔曼滤波的联系

    • 卡尔曼滤波后验公式:

    x^k∣k=x^k∣k−1+Kk(yk−Hx^k∣k−1),Kk=Pk∣k−1HT(HPk∣k−1HT+R)−1
    \\hat{x}_{k|k}=
    \\hat{x}_{k|k-1}
    +
    K_k (y_k – H \\hat{x}_{k|k-1}),
    \\quad
    K_k=
    P_{k|k-1} H^T (H P_{k|k-1} H^T + R)^{-1}
    x^kk=x^kk1+Kk(ykHx^kk1),Kk=Pkk1HT(HPkk1HT+R)1

    • 可以看作 动态 MAP:

      • (x^k∣k−1,Pk∣k−1)(\\hat{x}_{k|k-1}, P_{k|k-1})(x^kk1,Pkk1) = 先验
      • (x^k∣k,Pk∣k)(\\hat{x}_{k|k}, P_{k|k})(x^kk,Pkk) = MAP 后验
    • 数学上完全一致,只是卡尔曼做了增量更新


    3.7 直觉与几何解释

  • 先验协方差 → 椭球,表示可能解的范围
  • 观测噪声协方差 → 观测约束椭球
  • MAP 均值 → 两个椭球交集的重心
  • 条件协方差 → 椭球体积,表示后验不确定性

  • 3.8 小结

    项目符号含义
    观测矩阵 HHH 状态到观测的线性映射
    观测协方差 RRR 数据噪声协方差
    先验均值 μ0\\mu_0μ0 先验最可能解
    先验协方差 Σ0\\Sigma_0Σ0 先验不确定性
    MAP 均值 x^MAP\\hat{x}_{\\text{MAP}}x^MAP 后验最可能解
    条件协方差 ΣMAP\\Sigma_{\\text{MAP}}ΣMAP 后验不确定性
    信息矩阵 Λ=Σ0−1+HTR−1H\\Lambda = \\Sigma_0^{-1} + H^T R^{-1} HΛ=Σ01+HTR1H 更稳定的计算方式
    • 核心思想:MAP = 数据 + 先验 的加权融合
    • 高斯情况下 → 二次型最小化
    • 数值计算 → 信息矩阵 + Cholesky

    赞(0)
    未经允许不得转载:171主机测评 » MAP(最大后验)估计理论(1)以及相关应用
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址