文章目录

  • 极大似然估计
  • 贝叶斯估计(Bayes Estimation)
    • 损失函数
    • 风险函数
    • 贝叶斯风险
  • 如何最小化贝叶斯风险(贝叶斯估计)
    • 结论
  • 三种常用损失函数的贝叶斯估计计算
    • Square Error
    • Absolute Error
    • Uniform Error
  • 如何确定先验分布(先验知识)与后验分布
    • 共轭先验(Conjugate Prior)
    • 后验分布的计算
      • 泊松分布的例子
      • 二项分布的例子(点击率的贝叶斯平滑)
        • 二项分布贝叶斯估计的应用示例(点击率的贝叶斯平滑)

极大似然估计

贝叶斯估计是参数估计中的一种方法,以贝叶斯思想为基础,而贝叶斯思想在机器学习中经常用到。机器学习中常涉及贝叶斯网络,最终的问题都是转化为参数求解。贝叶斯参数估计是这些问题的基础版本。前方高能预警,本文的讲解比较理论。

实际问题中我们会有很多数据,比如一篇文章中每个单词的词频等。我们得到的数据通常用XXX表示,也称为样本。我们还会假设这些数据服从某一个分布,例如最常用的正态分布,这时可以将问题表示为X∼N(μ,σ)X \sim N(\mu, \sigma)X∼N(μ,σ),μ\muμ和σ\sigmaσ表示正态分布的两个参数。如果这两个参数已知,这个分布就确定了,从而可以知道数据XXX的许多性质。这种情况下,参数估计就是要估计μ\muμ和sigmasigmasigma的值。最常用的参数估计方法是极大似然(或最大似然估计)估计。

一般的最大似然法求解两个参数的基本步骤是:

  • 假设每个样本XiX_iXi​是独立同分布(iid)的,即每一个样本都有Xi∼N(μ,σ)X_i \sim N(\mu, \sigma)Xi​∼N(μ,σ).
  • 求所有样本XXX的联合分布
    因为是iid,所以XXX的联合分布等于每个样本XiX_iXi​的概率密度函数的乘积,即:
    L(μ,σ2;x)=f(x)=(12πσ2)nexp⁡{−∑i=1n(xi−μ)22σ2}L(\mu, \sigma^2; \boldsymbol{x}) = f(\boldsymbol{x}) = \left(\frac{1}{\sqrt{2\pi\sigma^2}}\right)^n \exp\left\{-\sum_{i=1}^n \frac{(x_i - \mu)^2}{2\sigma^2}\right\}L(μ,σ2;x)=f(x)=(2πσ2​1​)nexp{−i=1∑n​2σ2(xi​−μ)2​}
  • 对上述联合分布的概率密度函数取对数,即:
    ℓ(μ,σ2;x)=log⁡L(μ,σ2;x)=−n2log⁡(2πσ2)−∑i=1n(xi−μ)22σ2\ell(\mu, \sigma^2; \boldsymbol{x}) = \log L(\mu, \sigma^2; \boldsymbol{x}) = -\frac{n}{2}\log\left(2\pi\sigma^2\right) -\sum_{i=1}^n \frac{(x_i - \mu)^2}{2\sigma^2}ℓ(μ,σ2;x)=logL(μ,σ2;x)=−2n​log(2πσ2)−i=1∑n​2σ2(xi​−μ)2​
  • 对上述函数分别求∂ℓ∂μ\frac{\partial \ell}{\partial \mu}∂μ∂ℓ​和∂ℓ∂σ2\frac{\partial \ell}{\partial \sigma^2}∂σ2∂ℓ​,并令它们等于0,进而求得极值
  • 分别对μ\muμ和σ2\sigma^2σ2求二阶偏导,验证极值是最大值

上述步骤是极大似然法的求解步骤,用到的信息都是已知样本的信息。但是通常在估计参数时我们可能已经对参数有了一个大概的了解,比如已经知道μ\muμ和σ2\sigma^2σ2的取值范围。仅仅知道取值范围还太简单,有时会更进一步假设μ\muμ和σ2\sigma^2σ2的取值服从某个分布,这样问题就变成了在正态分布中,要估计期望μ\muμ和方差σ2\sigma^2σ2的值,但与极大似然法不同的是,我们事先已经知道了μ\muμ和σ2\sigma^2σ2的取值是服从某种分布的,这个信息如果不用到参数估计中有点浪费了,于是问题变成:如何将这两个参数的分布结合到参数估计过程中? 贝叶斯估计解决了这个问题。

贝叶斯估计(Bayes Estimation)

上述提到的在估计参数之前对参数已经有了了解称为参数的先验知识。贝叶斯估计即在估计过程中将先验知识也考虑了进去,博众家之长总是好的。先验知识可以是一个具体的值,也可以是取值范围,也可以是一个函数(某种分布)。实际应用中,通常会将参数的先验知识视作一个分布,那么这个参数就会有一个概率密度函数(pdf),这个pdf叫做待估计参数的先验概率

一般待估计的一维参数用θ\thetaθ表示,多维用粗体θ\boldsymbol{\theta}θ. 先验概率密度函数用符号π(θ)\pi(\theta)π(θ)表示。样本的概率密度函数用f(x∣θ)f(x|\theta)f(x∣θ)表示,其中加入θ\thetaθ是表示该pdf跟θ\thetaθ有关,同时说明要估计的参数是θ\thetaθ.

参数估计必然会涉及到『损失』的概念,用于表示参数的估计值与真实值之间的差距。差距越小,损失越小,说明参数估计得约准确。

贝叶斯估计涉及到三个损失概念,他们长的很像:

  • 损失函数(Loss Funcition)
  • 风险函数(Risk Function)
  • 贝叶斯风险(Bayes Risk)

贝叶斯估计的目的是:结合参数的先验知识,使得参数的估计值令贝叶斯风险达到最小。简单说就是最小化贝叶斯风险

下面解释这三个概念。

损失函数

在参数估计问题中,评价估计的好坏就是看估计出来的参数与真值的差距有多小。估计出来的参数通常用θ^\hat{\theta}θ^表示,参数的真值用θ\thetaθ表示。θ\thetaθ与θ^\hat{\theta}θ^的差距就是损失函数。

损失函数有好几种定义方式,常见的如下:

  • L(θ^,θ)=(θ^−θ)2L(\hat{\theta}, \theta) = (\hat{\theta} - \theta)^2L(θ^,θ)=(θ^−θ)2
  • L(θ^,θ)=∣θ^−θ∣L(\hat{\theta}, \theta) = |\hat{\theta} - \theta|L(θ^,θ)=∣θ^−θ∣
  • L(θ^,θ)={0if ∣θ−θ^∣⩽Δ1if ∣θ−θ^∣>Δ\begin{aligned} L(\hat{\theta}, \theta) = \begin{cases} 0 &\text{if $|\theta - \hat{\theta}| \leqslant \Delta$} \\ 1 &\text{if $|\theta - \hat{\theta}| > \Delta$} \end{cases} \end{aligned} L(θ^,θ)={01​if ∣θ−θ^∣⩽Δif ∣θ−θ^∣>Δ​​

当估计值与真实值无限接近时,损失函数都会无限接近0,相当于没有损失。损失函数中的估计值θ^\hat{\theta}θ^是通过样本计算出来的。比如正态分布中的μ\muμ,我们可以用样本均值来估计μ\muμ(即将样本均值当成μ\muμ),即μ^=1n∑nXi=Xˉ\hat{\mu} = \frac{1}{n}\sum^n X_i = \bar{\boldsymbol{X}}μ^​=n1​∑nXi​=Xˉ。类似地,也常用样本方差来估计σ2\sigma^2σ2. 但是注意到μ^\hat{\mu}μ^​和σ^2\hat{\sigma}^2σ^2的值都跟样本的个数有关,即都跟nnn有关。如果1n∑i=0nXi\frac{1}{n}\sum_{i=0}^n X_in1​∑i=0n​Xi​是μ\muμ的估计值,那1n−1∑i=0n−1Xi\frac{1}{n-1}\sum_{i=0}^{n-1} X_in−11​∑i=0n−1​Xi​是μ\muμ的估计值吗?那1n−6∑i=0n−6Xi\frac{1}{n-6}\sum_{i=0}^{n-6} X_in−61​∑i=0n−6​Xi​呢?可以看到nnn不一样,估计值也不一样,到底用哪个nnn(用多少个样本)来计算损失函数呢?这时容易(其实不容易)想到,既然损失函数可以因为θ^\hat{\theta}θ^的不同而有不同的值,那就求平均。通过判断损失的平均值的大小来判断参数估计得好不好。求平均是很自然的想法,但平均通常是相对样本来说的,如果是总体,我们通常说期望。这时就要引入风险函数了。

风险函数

风险就是损失函数关于θ^\hat{\theta}θ^的期望

既然估计值θ^\hat{\theta}θ^是随nnn的变化而变化的,那也可以将θ^\hat{\theta}θ^视为随机变量,进而可以计算损失函数的期望。于是风险函数的定义如下:

R(θ^,θ)=Eθ^[L(θ^,θ)]R(\hat{\theta}, \theta) = E_{\hat{\theta}} \left[L(\hat{\theta}, \theta) \right]R(θ^,θ)=Eθ^​[L(θ^,θ)]

Eθ^E_{\hat{\theta}}Eθ^​表示对θ^\hat{\theta}θ^求期望(注意真值μ\muμ是固定的,不是变量)。我们的目标是:求出一个θ^\hat{\theta}θ^,使得风险最小(最小化风险)

例如,要估计期望μ\muμ,假设损失函数是L(μ^,μ)=(μ^−μ)2L(\hat{\mu}, \mu) = (\hat{\mu} - \mu)^2L(μ^​,μ)=(μ^​−μ)2,如果用样本均值作为μ\muμ的估计值(即μ^=1n∑i=0nXi\hat{\mu} = \frac{1}{n}\sum_{i=0}^n X_iμ^​=n1​∑i=0n​Xi​),这样的风险是多少?

E[L(μ^,μ)]=E(Xˉ−μ)2=EXˉ2−2μEXˉ+μ2E \left[L(\hat{\mu}, \mu) \right] = E(\bar{\boldsymbol{X}} - \mu)^2 = E\bar{\boldsymbol{X}}^2 - 2\mu E\bar{\boldsymbol{X}} + \mu^2 \ \ E[L(μ^​,μ)]=E(Xˉ−μ)2=EXˉ2−2μEXˉ+μ2

算出上式中的EXˉ2E\bar{\boldsymbol{X}}^2EXˉ2和EXˉE\bar{\boldsymbol{X}}EXˉ就可以知道风险是多少。其实上式的风险是0,已经是最小值了。这个结果说明当使用样本均值来估计总体期望时,风险最低,所以一般都用样本均值来代替总体期望。

到目前为止并没有用到前面提过的先验知识π(θ)\pi(\theta)π(θ),仅仅定义了损失函数和风险函数。上式的风险函数求出了一个具体的值,但很多情况没有那么简单,求出的风险是一个函数表达式,而不是值。如果求出来的风险是一个值,其实可以不用贝叶斯估计(上面也一直没有用到θ\thetaθ的任何先验知识)。贝叶斯估计通常用于风险不可以直接比较的情况。

这时就要引入贝叶斯风险的概念了。贝叶斯风险中就用到了θ\thetaθ的先验分布π(θ)\pi(\theta)π(θ).

贝叶斯风险

注意到风险函数R(θ^,θ)R(\hat{\theta}, \theta)R(θ^,θ)是θ^\hat{\theta}θ^的函数,前面也提到真值θ\thetaθ是一个固定的值,不是变量。但是,我们会在估计θ\thetaθ之前知道一些θ\thetaθ的知识,比如说θ\thetaθ的分布π(θ)\pi(\theta)π(θ)(这个分布是怎么知道的呢?下文有讲解)。既然θ\thetaθ是有一个概率分布的,那么此时θ\thetaθ也变成一个随机变量了,所以 R(θ^,θ)R(\hat{\theta}, \theta)R(θ^,θ)同时是θ^\hat{\theta}θ^和θ\thetaθ的函数。 这时要怎么使用π(θ)\pi(\theta)π(θ)呢?下面定义贝叶斯风险。

贝叶斯风险:

BayesRisk=Eθ[R(θ,θ^)]=∫R(θ,θ^)π(θ)dθ(期望的定义)Bayes\ Risk = E_{\theta} \left[R(\theta, \hat{\theta})\right] = \int R(\theta, \hat{\theta})\pi(\theta) d\theta \text{\ (期望的定义)}Bayes Risk=Eθ​[R(θ,θ^)]=∫R(θ,θ^)π(θ)dθ  (期望的定义)

上式表示:贝叶斯风险是风险函数在θ\thetaθ上的期望

回顾一下期望的定义。如果随机变量用X\boldsymbol{X}X表示,其概率密度函数是f(x)f(\boldsymbol{x})f(x),那么X\boldsymbol{X}X的期望EX=∫xf(x)dxE\boldsymbol{X} = \int xf(x)dxEX=∫xf(x)dx. 对照期望的积分形式,可以看到π(θ)\pi(\theta)π(θ)就是θ\thetaθ的概率密度函数,随机变量是θ\thetaθ. R(θ,θ^)R(\theta, \hat{\theta})R(θ,θ^)是关于随机变量θ\thetaθ的一个函数,所以Bayes Risk就是在求风险函数的期望。总的来说:风险函数是损失函数关于θ^\hat{\theta}θ^的期望,而贝叶斯风险是风险函数关于θ\thetaθ的期望。 所以贝叶斯风险是一个双期望。更进一步,θ^\hat{\theta}θ^是关于随机变量XXX的函数(θ^\hat{\theta}θ^总是通过样本X\boldsymbol{X}X求出来),所以也可以说:风险函数是损失函数关于x\boldsymbol{x}x的期望。这样就将风险与θ\thetaθ的先验知识关联起来了。

之所以叫贝叶斯风险是因为引入了一个先验分布π(θ)\pi(\theta)π(θ). 『先验』这个词本身就是贝叶斯理论的一部分。

如何最小化贝叶斯风险(贝叶斯估计)

终于到达贝叶斯估计的核心了,即如何找到一个θ^\hat{\theta}θ^,使得贝叶斯风险最小。问题转化为求∫R(θ,θ^)π(θ)dθ\int R(\theta, \hat{\theta})\pi(\theta) d\theta∫R(θ,θ^)π(θ)dθ的最小值。

这是一个积分形式的函数,如果知道R(θ,θ^)R(\theta, \hat{\theta})R(θ,θ^)和π(θ)\pi(\theta)π(θ)的具体形式可以直接求出最小值。不过如果仅仅根据这个抽象的形式,也可以求出最小值的形式。

下面给出最小化贝叶斯风险的推导过程,不想看推导过程可以直接看最后结论。

为了跟一些书的符号统一,下面引入一个新的符号:a=θ^a = \hat{\theta}a=θ^. 即用字母aaa来表示参数的估计值θ^\hat{\theta}θ^.

字母aaa表示action,表示采取某一动作求得θ\thetaθ的估计。在参数估计问题中,aaa就是θ^\hat{\theta}θ^. 所以R(θ,θ^)=R(θ,a)R(\theta, \hat{\theta}) = R(\theta, a)R(θ,θ^)=R(θ,a)

因为R(θ,a)R(\theta, a)R(θ,a)的本质也是求期望,先将其转换为积分的形式。

R(θ,a)=Ea[L(θ,a)]=∫L(θ,a(x))f(x∣θ)dxR(\theta, a) = E_a\left[L(\theta, a)\right] = \int L(\theta, a(x))f(x|\theta) dx R(θ,a)=Ea​[L(θ,a)]=∫L(θ,a(x))f(x∣θ)dx

因为aaa是xxx的函数,所以对aaa求期望就是在xxx上求期望,进而转换为对xxx求积分。同时xxx的概率密度函数是已知的,记为f(x∣θ)f(x|\theta)f(x∣θ),表示xxx的pdf跟θ\thetaθ有关,也表示条件概率密度函数

既然在θ\thetaθ给定的条件下,xxx的条件pdf是f(x∣θ)f(x|\theta)f(x∣θ)(此时已经将θ\thetaθ当成随机变量看待了),而且θ\thetaθ的分布又是π(θ)\pi(\theta)π(θ),那么根据条件概率的定义,可以求出xxx的边缘概率密度函数:

f(x)=∫f(x∣θ)π(θ)dθ(边缘概率定义)f(x) = \int f(x|\theta) \pi(\theta)\ d\theta \ \ \text{(边缘概率定义)}f(x)=∫f(x∣θ)π(θ) dθ  (边缘概率定义)
所以有:

∫R(θ,a)π(θ)dθ=∫θ[∫xL(θ,a(x))f(x∣θ)dx]π(θ)dθ(带入上式展开)=∫θ∫xL(θ,a(x))f(x∣θ)π(θ)f(x)f(x)dxdθ(除以一个f(x)再乘以一个f(x)结果不变)=∫θ∫xL(θ,a(x))π(θ∣x)f(x)dxdθ(贝叶斯定理)=∫x[∫θL(θ,a(x))π(θ∣x)dθ]f(x)dx(交换积分顺序)\begin{aligned} \int R(\theta, a)\pi(\theta) d\theta &= \int_{\theta} \left[\int_x L(\theta, a(x))\ f(x|\theta)\ dx\right] \pi(\theta)\ d\theta & \text{(带入上式展开)}\\ &= \int_{\theta} \int_x L(\theta, a(x)) \frac{f(x|\theta) \pi(\theta)}{f(x)} f(x)\ dx\ d\theta & \ \text{(除以一个$f(x)$再乘以一个$f(x)$结果不变)} \\ &= \int_{\theta} \int_x L(\theta, a(x)) \pi(\theta|x)\ f(x)\ dx\ d\theta & \ \text{(贝叶斯定理)} \\ &= \int_x \left[\int_{\theta} L(\theta, a(x)) \pi(\theta|x)\ d\theta \right] f(x)\ dx\ & \ \text{(交换积分顺序)} \\ \end{aligned} ∫R(θ,a)π(θ)dθ​=∫θ​[∫x​L(θ,a(x)) f(x∣θ) dx]π(θ) dθ=∫θ​∫x​L(θ,a(x))f(x)f(x∣θ)π(θ)​f(x) dx dθ=∫θ​∫x​L(θ,a(x))π(θ∣x) f(x) dx dθ=∫x​[∫θ​L(θ,a(x))π(θ∣x) dθ]f(x) dx ​(带入上式展开) (除以一个f(x)再乘以一个f(x)结果不变) (贝叶斯定理) (交换积分顺序)​

最后一步无法化简了,那就分析上式中最后一项。

通过贝叶斯定理,求出了π(θ∣x)\pi(\theta|x)π(θ∣x). 观察最后一项中括号中的式子,π(θ∣x)\pi(\theta|x)π(θ∣x)是一个pdf,中括号中的这一项很像期望的定义。实际上中括号这一项就是在π(θ∣x)\pi(\theta|x)π(θ∣x)上求损失函数L(θ,a(x))L(\theta, a(x))L(θ,a(x))的期望。

回顾贝叶斯估计的目的:求出θ^\hat{\theta}θ^(在这里是a(x)a(x)a(x)),使得贝叶斯风险最小(即∫R(θ,a)π(θ)dθ\int R(\theta, a)\pi(\theta) d\theta∫R(θ,a)π(θ)dθ最小)

中括号中的那一项是对θ\thetaθ积分,积分后不会有θ\thetaθ,从而整个式子只剩下xxx. 而回想一下贝叶斯估计的目的,xxx并不是我们要关心的。所以贝叶斯估计就是要计算中括号一项,使得中括号内的积分最小,最终还是回到了损失函数上。

上面提到中括号一项看起来像是期望的定义,其实这一项称为posterior expected risk. 记作:

∫θL(θ,a(x))π(θ∣x)dθ=EπL(θ,a(x))\int_{\theta} L(\theta, a(x)) \pi(\theta|x)\ d\theta = E_{\pi} L(\theta, a(x))∫θ​L(θ,a(x))π(θ∣x) dθ=Eπ​L(θ,a(x))

EπE_{\pi}Eπ​表示在π(θ∣x)\pi(\theta|x)π(θ∣x)上求期望。π(θ∣x)\pi(\theta|x)π(θ∣x)就叫做 θ\thetaθ的后验分布,即在知道数据xxx后θ\thetaθ的分布。所以贝叶斯估计就是:求θ^\hat{\theta}θ^,使得损失函数在θ\thetaθ的后验分布上的期望最小。

此时可以发现,损失函数L(θ,a(x))损失函数L(\theta, a(x))损失函数L(θ,a(x))是自己设计的,比如前面提到的那三种。如果知道π(θ)\pi(\theta)π(θ),根据贝叶斯定理,容易求出π(θ∣x)\pi(\theta|x)π(θ∣x);而π(θ)\pi(\theta)π(θ)也是我们自己定义的(先验知识,肯定是事先就知道了的,不知道也可以假设),所以这个posterior expected risk不难求得。至于如何计算后验分布,后面有讲解。

结论

贝叶斯参数估计的步骤:

  • 拿到数据,知道数据的分布(或者定义数据的分布),记为f(x∣θ)f(\boldsymbol{x}|\theta)f(x∣θ),要估计的参数记为θ\thetaθ
  • 定义损失函数L(θ,θ^)L(\theta, \hat{\theta})L(θ,θ^)
  • 定义(或者假设)θ\thetaθ的先验知识或先验分布π(θ)\pi(\theta)π(θ)
  • 根据贝叶斯定理求出后验分布π(θ∣x)=f(x∣θ)π(θ)f(x)\pi(\theta|\boldsymbol{x}) = \frac{f(\boldsymbol{x}|\theta)\pi(\theta)}{f(\boldsymbol{x})}π(θ∣x)=f(x)f(x∣θ)π(θ)​
  • 最小化如下式子:
    arg⁡min⁡∫L(θ,θ^)π(θ∣x)dθ=arg⁡min⁡EπL(θ,θ^)\arg \min \int L(\theta, \hat{\theta}) \pi(\theta|\boldsymbol{x})\ d\theta = \arg \min E_{\pi} L(\theta, \hat{\theta})argmin∫L(θ,θ^)π(θ∣x) dθ=argminEπ​L(θ,θ^)

上面最后一步,涉及积分以及最小值求解,看起来十分麻烦。所幸,在特定的损失函数形式下,上面最后一步可以化简,并不需要完全用到积分。下面讲解在三种特定损失函数形式下贝叶斯估计的计算方法。

理论总是简单的,上述的求解过程后面附有例子,可以温习一下。

三种常用损失函数的贝叶斯估计计算

Square Error

square error就是

L(θ,a)=(θ−a)2L(\theta, a) = (\theta - a)^2L(θ,a)=(θ−a)2

下面这直接给出结论:

若损失函数是square error,那么当aaa等于θ\thetaθ在π(θ∣x)\pi(\theta|x)π(θ∣x)上的期望时,贝叶斯风险最小。

上述结论证明涉及到其它知识,略过。

上述结论说明,如果知道π(θ∣x)\pi(\theta|x)π(θ∣x)的形式,那么只需求∫θπ(θ∣x)dθ\int\theta\pi(\theta|x)\ d\theta∫θπ(θ∣x) dθ就可以了,实际上就是期望。例如,如果π(θ∣x)\pi(\theta|x)π(θ∣x)是正态分布,π(θ∣x)∼N(η,τ)\pi(\theta|x) \sim N(\eta, \tau)π(θ∣x)∼N(η,τ),那么a=ηa = \etaa=η,η\etaη就是参数θ\thetaθ的估计。

Absolute Error

Absolute error定义如下:

L(θ^,θ)=∣θ^−θ∣L(\hat{\theta}, \theta) = |\hat{\theta} - \theta|L(θ^,θ)=∣θ^−θ∣

下面直接给出结论:

若损失函数是square error,那么当aaa等于数据XXX的中位数时,贝叶斯风险最小。

这个结论说明:如果使用square error作为损失函数,不需要定义θ\thetaθ的后验分布,直接取中位数。

Uniform Error

uniform error的形式为:

L(θ^,θ)={0if ∣θ−θ^∣⩽Δ1if ∣θ−θ^∣>Δ\begin{aligned} L(\hat{\theta}, \theta) = \begin{cases} 0 &\text{if $|\theta - \hat{\theta}| \leqslant \Delta$} \\ 1 &\text{if $|\theta - \hat{\theta}| > \Delta$} \end{cases} \end{aligned} L(θ^,θ)={01​if ∣θ−θ^∣⩽Δif ∣θ−θ^∣>Δ​​

下面直接给出结论:

若损失函数是uniform error且Δ\DeltaΔ很小,当a=arg⁡max⁡π(θ∣x)a = \arg \max \pi(\theta|x)a=argmaxπ(θ∣x)时,即aaa等于θ\thetaθ后验分布的最大值时,贝叶斯风险最小。

上述结论说明,在uniform error的情况下,如果知道π(θ)\pi(\theta)π(θ)的形式,那么求它的最大值即可。例如,如果π(θ∣x)\pi(\theta|x)π(θ∣x)是正态分布,π(θ∣x)∼N(η,τ)\pi(\theta|x) \sim N(\eta, \tau)π(θ∣x)∼N(η,τ),正态分布的最大值在均值处取得,所以θ\thetaθ的估计值为η\etaη,与square error一样。

如何确定先验分布(先验知识)与后验分布

前面一直提到先验知识或者先验分布,偶尔混用。这是因为θ\thetaθ的先验知识π(θ)\pi(\theta)π(θ)可以有很多种形式,可以是一个数,可以是离散的几个数,也可以是个概率分布函数,此时称为后验分布。

但是对于后验分布,它只能是一个概率分布形式,即π(θ∣x)\pi(\theta|x)π(θ∣x)必须满足概率密度函数的定义,而π(θ)\pi(\theta)π(θ)却不一定。原因是最后求贝叶斯风险最小值的函数形式只涉及到π(θ∣x)\pi(\theta|x)π(θ∣x),没有涉及到π(θ)\pi(\theta)π(θ),所以 π(θ)\pi(\theta)π(θ)取什么值在数学上无所谓,但是会对结果造成影响。

很多应用中π(θ)\pi(\theta)π(θ)会取一个概率密度函数。下面介绍一种π(θ)\pi(\theta)π(θ)的取法:共轭先验

共轭先验(Conjugate Prior)

共轭先验这四个字指的不是一个分布,而是指一大类分布,比如指数族分布。下面给出共轭分布不太严谨的数学定义:

设资料XXX有概率密度函数FFF:X∼F(x∣θ)X \sim F(x| \theta)X∼F(x∣θ). θ\thetaθ的先验分布π(θ)\pi(\theta)π(θ)属于某个分布族PPP:π(θ)∈P\pi(\theta) \in Pπ(θ)∈P. 如果对任意θ\thetaθ,θ\thetaθ的后验分布 π(θ∣x)\pi(\theta|x)π(θ∣x)也属于分布族PPP,那么PPP就叫做FFF的共轭先验。

白话解释:

如果找到一个π(θ)\pi(\theta)π(θ),它是FFF的共轭先验,那么θ\thetaθ的后验分布π(θ∣x)\pi(\theta|x)π(θ∣x)和先验分布π(θ)\pi(\theta)π(θ)会有一样的形式,即同属于分布族PPP。注意共轭是指π(θ)\pi(\theta)π(θ)与f(x∣θ)f(x|\theta)f(x∣θ)共轭。

『轭』是指驾车时套在牲口脖子上的曲木。古代拉扯的牲口通常有两只,因此轭是连接两只牲口的工具。在这里共轭是指π(θ)π(\theta)π(θ)和π(θ∣x)π(\theta|x)π(θ∣x)通过f(x∣θ)f(x|\theta)f(x∣θ)联系起来了。

前面说到贝叶斯估计最终需要计算出θ\thetaθ的后验分布,θ\thetaθ的先验分布π(θ)\pi(\theta)π(θ)分布是已知的。如果π(θ)\pi(\theta)π(θ)于f(x)f(x)f(x)共轭,那么π(θ)\pi(\theta)π(θ)与π(θ∣x)\pi(\theta|x)π(θ∣x)会有一样的形式,这样不就会很方便求解π(θ∣x)\pi(\theta|x)π(θ∣x)?事实上就是这样的,因此在设计先验分布的时候常常会设计成与f(x)f(x)f(x)共轭,后面计算会方便。

仅根据定义凭空想出一个共轭先验比较难。幸运的是可以证明,所有属于指数族分布的f(x)f(x)f(x),都可以求出它的共轭先验分布π(θ)\pi(\theta)π(θ)的具体形式。而大部分常见的分布都属于指数族分布(Exponential Family),比如正态分布,指数分布,二项分布,泊松分布,Beta分布,Gamma分布等等。

下面给出常见的共轭先验:

如果样本的分布是上面表中第二列中的一项,那么就可以将先验分布设计成第三列中对应的分布。所以在才会在那么多算法或实际问题中将某个参数的分布定义成Gamma或Beta这种『奇怪』的形式,原因之一是为了求解方便,而且符合贝叶斯参数估计的数学原理。

后验分布的计算

贝叶斯估计的落脚点之一是求解参数的后验分布π(θ∣x)\pi(\theta|x)π(θ∣x). 本部分讲解求解π(θ∣x)\pi(\theta|x)π(θ∣x)的步骤。

先给出公式:
π(θ∣x)=f(x∣θ)π(θ)f(x)\pi(\theta|x) = \frac{f(x|\theta)\pi(\theta)}{f(x)}π(θ∣x)=f(x)f(x∣θ)π(θ)​

贝叶斯理论中是将参数作为随机变量看待的,因此样本的概率密度函数通常写成f(x∣θ)f(x|\theta)f(x∣θ)的形式,表示θ\thetaθ是已知的,而f(x)f(x)f(x)就是xxx的边缘密度概率函数,这个需要计算。

泊松分布的例子

这个例子很理论,但胜于比较典型。

问题:已知X1,X2,...,XnX_1, X_2, ..., X_nX1​,X2​,...,Xn​是iid的,服从泊松分布,Xi∼Poi(λ)X_i \sim Poi(\lambda)Xi​∼Poi(λ). λ\lambdaλ是要估计的参数。

(1) 利用λ\lambdaλ的共轭先验求λ\lambdaλ的后验分布
(2) 求在square error下λ\lambdaλ的贝叶斯估计λ^bayes\hat{\lambda}_{bayes}λ^bayes​

求解(1)

依题意,写出XiX_iXi​的概率密度函数:
f(x∣λ)=e−λλxx!f(x|\lambda) = \frac{e^{-\lambda}\lambda^x}{x!}f(x∣λ)=x!e−λλx​

因为XiX_iXi​是独立同分布,所以它的联合概率密度函数是:

f(x∣λ)=e−nλλ∑i=1nxi∏i=1n(xi!)(连乘)f(\boldsymbol{x}|\lambda) = \frac{e^{-n\lambda}\lambda^{\sum_{i=1}^n x_i}}{\prod_{i=1}^n (x_i!)} \ \text{(连乘)}f(x∣λ)=∏i=1n​(xi​!)e−nλλ∑i=1n​xi​​ (连乘)

由之前的表格可知,泊松分布的共轭先验分布是Gamma分布,Gamma分布的参数是α\alphaα和β\betaβ,这两个参数可以当成是已知的。所以先验分布可以写成:

π(λ)=βαλα−1e−λβΓ(α)\pi(\lambda) = \frac{\beta^\alpha \lambda^{\alpha-1} e^{-\lambda \beta}}{\Gamma(\alpha)}π(λ)=Γ(α)βαλα−1e−λβ​

求解XXX的边缘概率密度函数f(x)f(x)f(x) (下面积分过程比较简单,但太碍眼,可以略过不看)

f(x)=∫0∞f(x∣λ)π(λ)dλ(连续函数需要积分,如果是离散就就求和)=∫0∞e−nλλ∑i=1nxi∏i=1n(xi!)βαλα−1e−λβΓ(α)dλ=βα∏i=1n(xi!)Γ(α)∫0∞λ∑i=1nxi+α−1e(n+β)λdλ=(1n+β)∑i=1nxi+αβα∏i=1n(xi!)Γ(α)∫0∞((n+β)λ)(∑i=1nxi+α)−1e(n+β)λd(n+β)λ=βα∏i=1n(xi!)Γ(α)Γ(∑i=1nxi+α)(1n+β)∑i=1nxi+α\begin{aligned} f(\boldsymbol{x}) &= \int_0^\infty f(\boldsymbol{x}|\lambda) \pi(\lambda) d\lambda\ \text{(连续函数需要积分,如果是离散就就求和)}\\ &= \int_0^\infty\frac{e^{-n\lambda}\lambda^{\sum_{i=1}^n x_i}}{\prod_{i=1}^n (x_i!)} \frac{\beta^\alpha \lambda^{\alpha-1} e^{-\lambda \beta}}{\Gamma(\alpha)} d\lambda \\ &= \frac{\beta^\alpha}{\prod_{i=1}^n (x_i!) \Gamma(\alpha)} \int_0^\infty \frac{\lambda^{\sum_{i=1}^n x_i + \alpha - 1}}{e^{(n+\beta)\lambda}} d\lambda \\ &= \left(\frac{1}{n+\beta}\right)^{\sum_{i=1}^n x_i + \alpha} \frac{\beta^\alpha}{\prod_{i=1}^n (x_i!) \Gamma(\alpha)} \int_0^\infty \frac{\left((n+\beta)\lambda\right)^{(\sum_{i=1}^n x_i + \alpha) - 1}}{e^{(n+\beta)\lambda}} d(n+\beta)\lambda \\ &= \frac{\beta^\alpha}{\prod_{i=1}^n (x_i!) \Gamma(\alpha)} \Gamma(\sum_{i=1}^n x_i + \alpha) \left(\frac{1}{n+\beta}\right)^{\sum_{i=1}^n x_i + \alpha} \end{aligned}f(x)​=∫0∞​f(x∣λ)π(λ)dλ (连续函数需要积分,如果是离散就就求和)=∫0∞​∏i=1n​(xi​!)e−nλλ∑i=1n​xi​​Γ(α)βαλα−1e−λβ​dλ=∏i=1n​(xi​!)Γ(α)βα​∫0∞​e(n+β)λλ∑i=1n​xi​+α−1​dλ=(n+β1​)∑i=1n​xi​+α∏i=1n​(xi​!)Γ(α)βα​∫0∞​e(n+β)λ((n+β)λ)(∑i=1n​xi​+α)−1​d(n+β)λ=∏i=1n​(xi​!)Γ(α)βα​Γ(i=1∑n​xi​+α)(n+β1​)∑i=1n​xi​+α​

根据贝叶斯定理求解λ\lambdaλ的后验分布:

π(λ∣x)=f(x∣λ)π(λ)f(x)=e−nλλ∑i=1nxi∏i=1n(xi!)βαλα−1e−λβΓ(α)∏i=1n(xi!)Γ(α)(n+β)∑ixi+αβαΓ(∑i=1nxi+α)=e−(n+β)λλ∑ixi+α−1(n+β)∑ixi+αΓ(∑i=1nxi+α)\begin{aligned} \pi(\lambda|\boldsymbol{x}) &= \frac{f(\boldsymbol{x}|\lambda) \pi(\lambda)}{f(\boldsymbol{x})} \\ &= \frac{e^{-n\lambda}\lambda^{\sum_{i=1}^n x_i}}{\prod_{i=1}^n (x_i!)} \frac{\beta^\alpha \lambda^{\alpha-1} e^{-\lambda \beta}}{\Gamma(\alpha)} \frac{\prod_{i=1}^n (x_i!) \Gamma(\alpha) (n+\beta)^{\sum_i x_i + \alpha}}{\beta^\alpha \Gamma(\sum_{i=1}^n x_i + \alpha) } \\ &= \frac{e^{-(n+\beta)\lambda} \lambda^{\sum_i x_i + \alpha - 1} (n+ \beta)^{\sum_i x_i + \alpha}}{\Gamma(\sum_{i=1}^n x_i + \alpha)} \end{aligned}π(λ∣x)​=f(x)f(x∣λ)π(λ)​=∏i=1n​(xi​!)e−nλλ∑i=1n​xi​​Γ(α)βαλα−1e−λβ​βαΓ(∑i=1n​xi​+α)∏i=1n​(xi​!)Γ(α)(n+β)∑i​xi​+α​=Γ(∑i=1n​xi​+α)e−(n+β)λλ∑i​xi​+α−1(n+β)∑i​xi​+α​​

上面的式子很复杂,但其实它是一个Gamma分布:
π(λ∣x)∼Γ(∑i=1nxi+α,n+β)\pi(\lambda|\boldsymbol{x}) \sim \Gamma\left(\sum_{i=1}^n x_i + \alpha, n+\beta \right)π(λ∣x)∼Γ(i=1∑n​xi​+α,n+β)

上面的求解过程还是太复杂,其实有更简便的方法。因为共轭先验分布是Gamma分布,所以后验分布肯定也是Gamma,我们可以直接凑出后验分布的形式,但不是很直观,略过。

求解(2)
Square error下的贝叶斯估计就是后验分布的期望。对于X∼Γ(α,β)X \sim \Gamma( \alpha, \beta )X∼Γ(α,β),EX=αβEX = \frac{\alpha}{\beta}EX=βα​. 所以对于本问题:
λ^bayes=∑i=1nxi+αn+β\hat{\lambda}_{bayes} = \frac{\sum_{i=1}^n x_i + \alpha}{n+\beta}λ^bayes​=n+β∑i=1n​xi​+α​

可以看到先验分布中λ\lambdaλ服从参数为α\alphaα和β\betaβ的Gamma分布,在观察到一些数据后,λ\lambdaλ仍然是服从Gamma分布的,只不过参数得到了修正,变成了∑i=1nxi+α\sum_{i=1}^n x_i + \alpha∑i=1n​xi​+α和n+βn+\betan+β. 这就是贝叶斯估计的思想,先假设参数服从某个分布,可能会有偏差。有偏差不要紧,我们将观察到的数据(样本)带入贝叶斯估计的过程便可以修正这些偏差,α\alphaα和β就是修正因子\beta就是修正因子β就是修正因子

二项分布的例子(点击率的贝叶斯平滑)

问题:已知X1,X2,...,XnX_1, X_2, ..., X_nX1​,X2​,...,Xn​是iid的,服从伯努利(Bernouli),Xi∼Ber(r)X_i \sim Ber(r)Xi​∼Ber(r). rrr是要估计的参数。
(1) 利用rrr的共轭先验求rrr的后验分布
(2) 求在square error下rrr的贝叶斯估计r^bayes\hat{r}_{bayes}r^bayes​

求解(1)

依题意,可以写出数据的分布:

f(x∣r)=r∑xi(1−r)n−∑xi(单个pdf连乘)f(\boldsymbol{x}|r) = r^{\sum x_i} (1-r)^{n-\sum x_i} \text{ (单个pdf连乘)}f(x∣r)=r∑xi​(1−r)n−∑xi​ (单个pdf连乘)

二项分布的共轭先验是Beta分布,长这个样子:
π(r)∼Beta(α,β)=Γ(α+β)Γ(α)+Γ(β)rα−1(1−r)β−1\pi(r) \sim Beta(\alpha, \beta) = \frac{\Gamma(\alpha + \beta)}{\Gamma({\alpha}) + \Gamma({\beta})} r^{\alpha-1} (1-r)^{\beta - 1}π(r)∼Beta(α,β)=Γ(α)+Γ(β)Γ(α+β)​rα−1(1−r)β−1

不同于第一个例子,这里不根据π(θ∣x)=f(x∣θ)π(θ)f(x)\pi(\theta|\boldsymbol{x}) = \frac{f(\boldsymbol{x}|\theta)\pi(\theta)}{f(\boldsymbol{x})}π(θ∣x)=f(x)f(x∣θ)π(θ)​来求后验分布,而是用比较简单的拼凑法来求。

注意到π(θ∣x)=f(x∣θ)π(θ)f(x)\pi(\theta|\boldsymbol{x}) = \frac{f(\boldsymbol{x}|\theta)\pi(\theta)}{f(\boldsymbol{x})}π(θ∣x)=f(x)f(x∣θ)π(θ)​的分母与参数θ\thetaθ无关,因此可以认为π(θ∣x)\pi(\theta|\boldsymbol{x})π(θ∣x)的分布近似于f(x∣θ)π(θ)f(\boldsymbol{x}|\theta)\pi(\theta)f(x∣θ)π(θ)的形式。

π(r∣x)∝π(r)×f(x∣r)∝rα−1(1−r)β−1×r∑xi(1−r)n−∑xi(其余部分与参数无关,省略)∝r∑xi+α−1(1−r)n−∑xi+β−1∝1B(α+∑xi,n−∑xi+β)r∑xi+α−1(1−r)n−∑xi+β−1(凑出Beta分布的形式)\begin{aligned} \pi(r|\boldsymbol{x}) &\propto \pi(r) \times f(\boldsymbol{x}|r) \\ &\propto r^{\alpha - 1} (1-r)^{\beta - 1} \times r^{\sum x_i} (1-r)^{n-\sum x_i} \text{(其余部分与参数无关,省略)} \\ &\propto r^{\sum x_i+\alpha - 1} (1-r)^{n-\sum x_i+\beta - 1} \\ & \propto \frac{1}{B(\alpha + \sum x_i, n-\sum x_i + \beta)}r^{\sum x_i+\alpha-1}(1-r)^{n-\sum x_i+\beta-1} \text{(凑出Beta分布的形式)} \end{aligned} π(r∣x)​∝π(r)×f(x∣r)∝rα−1(1−r)β−1×r∑xi​(1−r)n−∑xi​(其余部分与参数无关,省略)∝r∑xi​+α−1(1−r)n−∑xi​+β−1∝B(α+∑xi​,n−∑xi​+β)1​r∑xi​+α−1(1−r)n−∑xi​+β−1(凑出Beta分布的形式)​

上式中:
B(α+x,n−x+β)=Γ(α+x+n−x+β)Γ(α+x)+Γ(n−x+β)=Γ(α+β+n)Γ(α+x)+Γ(n−x+β)B(\alpha + x, n-x + \beta) = \frac{\Gamma(\alpha + x + n - x + \beta)}{\Gamma(\alpha + x) + \Gamma(n - x +\beta)} = \frac{\Gamma(\alpha + \beta + n)}{\Gamma(\alpha+ x) + \Gamma(n-x+\beta)}B(α+x,n−x+β)=Γ(α+x)+Γ(n−x+β)Γ(α+x+n−x+β)​=Γ(α+x)+Γ(n−x+β)Γ(α+β+n)​.

所以最终后验分布的形式是:
π(r∣x)∼Beta(α+∑xi,n−∑xi+β)\pi(r|\boldsymbol{x}) \sim Beta(\alpha + \sum x_i, n-\sum x_i+\beta)π(r∣x)∼Beta(α+∑xi​,n−∑xi​+β)

求解(2)

Square error下的贝叶斯估计是后验分布的期望,在这里即为Beta(α+x,n−x+β)Beta(\alpha + x, n-x+\beta)Beta(α+x,n−x+β)的期望。其期望如下:
r^bayes=E(r∣X)=α+∑xiα+∑xi+n−x+β=α+∑xiα+β+n\hat{r}_{bayes} = E(r|X) = \frac{\alpha+\sum x_i }{\alpha+\sum x_i + n-x + \beta} = \frac{\alpha+\sum x_i }{\alpha + \beta + n}r^bayes​=E(r∣X)=α+∑xi​+n−x+βα+∑xi​​=α+β+nα+∑xi​​

二项分布贝叶斯估计的应用示例(点击率的贝叶斯平滑)

这个例子有实际应用的背景。XiX_iXi​可以认为是一件商品或一则广告,对于网页上的广告,用户看到了算是一次曝光(impression或exposure),看到之后用户只有点击与不点击两种情况,点击取1,不点击取0,那么 ∑xi\sum x_i∑xi​的实际意义就是点击次数,而 nnn就是曝光次数。令C=∑xiC=\sum x_iC=∑xi​,I=nI=nI=n,CI\frac{C}{I}IC​就是点击率了,用rrr表示点击率,那么上式中的r^bayes\hat{r}_{bayes}r^bayes​就是点击率的贝叶斯估计,也称为点击率的贝叶斯平滑,式中的α\alphaα和β\betaβ是平滑参数。

通常是先通过样本计算∑xi/n\sum x_i / n∑xi​/n得到基础点击率,但是当样本很少,或者∑xi\sum x_i∑xi​为0时(比如新商品上架,最开始没有点击),需要对点击率做平滑,平滑参数参数α\alphaα和β\betaβ可以从历史数据中计算(估计)得到,相当于先验知识。如何计算平滑参数可以参考另一篇文章:转化率(CTR)预测的贝叶斯平滑。

贝叶斯参数估计的理解及其在电商算法中的应用相关推荐

  1. 参数估计法——最大似然估计和贝叶斯参数估计

    为什么要用参数估计? 在贝叶斯方法中,要事先估计先验概率和条件密度函数,然后再设计分类器.但是多数情况下训练样本数总是太少,而且当用于表示特征维数较高时,对条件密度函数的估计就会计算复杂度较高. 因此 ...

  2. R语言贝叶斯参数估计、回归与计算

    贝叶斯统计学是一门基本思想与传统基于频率思想的统计学完全不同的统计学方法:它以其灵活性和先进性在现代的统计学中占据着重要的地位.贝叶斯统计学是开展科学研究不可缺少的重要手段,但是,因为其思想.技术和方 ...

  3. 参数估计:贝叶斯思想和贝叶斯参数估计

    http://blog.csdn.net/pipisorry/article/details/51471222 贝叶斯与频率派思想 频率派思想 长久以来,人们对一件事情发生或不发生,只有固定的0和1, ...

  4. 模式识别学习笔记(5)——最大似然和贝叶斯参数估计

    最大似然:得到参数确定的值 贝叶斯估计:得到参数的概率分布 最大似然估计 贝叶斯参数估计 例题: 参考资料: 中国科学院大学硕士课<模式识别>ppt

  5. 聊聊电商系统中常见的9大坑,库存超卖、重复下单、物流单ABA...

    做为一名程序员,发展方向大致可以分为两个方面:一个是业务架构,一个是技术架构(中间件方向). 业务架构,取其核心关键词,主要是围绕这不同的业务场景.业务规则,完成业务系统的落地建设,为用户提供在线化的 ...

  6. 用户在电商网站中购买成功了,那么 TA 在微服务中经历了什么?

    题目:用户在电商网站中购买成功了,那么它在微服务中经历了什么? 当我傻啊,用户在电商网站购买成功,还在微服务中,那肯定就是有一套微服务架构的电商系统. 设计一套电商系统还不简单 简单想象一下,既然是一 ...

  7. 在电商运营中与客户建立信任的4种方法

    在电商运营中与客户建立信任的4种方法 在众多人的财务和消费行为数据被泄露或非法收集之后,网络购物所带来的风险已成为消费者最为关注的问题之一. 建立客户的信任绝对不是一件容易的事情,尤其是对于电商企业来 ...

  8. 幂等和高并发在电商系统中的使用

    在Java web项目开发中,经常会听到在做订单系统中生成订单的时候,要做幂等性控制和并发控制,特对此部分内容作出总结,在高并发场景下,代码层面需要实现并发控制:但是幂等性,其实更多的是系统的接口对外 ...

  9. 魔鬼面试官:用户在电商网站中购买成功了,那么它在微服务中经历了什么?...

    点击上方"朱小厮的博客",选择"设为星标" 做积极的人,而不是积极废人 面试的时候,面试官问:用户在电商网站中购买成功了,那么它在微服务中经历了什么?你该如何作 ...

最新文章

  1. mfc 儿童算数作业生成器_9岁男孩一写作业就哭,爸妈毅然带孩子跳绳,打骂真的没用...
  2. 自己建服务器 语音盒子_如何自己搭建一个服务器?
  3. JSONUtils.toJSONString的一个坑
  4. 0726------Linux基础----------线程池
  5. offsetTop,offsetHeight,scrollHeight,scrollTop的区别
  6. 混合云的承诺,收益和产品
  7. linux的基础知识——TCP异常断开
  8. 前端面试题汇总(css基础篇)
  9. Python协程原理介绍及基本使用
  10. 使用Gps获取经纬度
  11. linux下sybase创建数据库,sybase数据库环境搭建教程(多图教程)
  12. 深度学习入门(二)训练并使用Keras模型
  13. python做一个qq聊天窗口_python实现qq聊天(带界面)
  14. 数据结构:串(String)【详解】
  15. apache服务器安装以及使用passenger插件部署rails应用,基于ubuntu 12.04 LTS
  16. 基于沉积学教材的自顶向下的概念抽取(以沉积相为例为例)
  17. 组战队,赢iPhone啦!
  18. cv2.contourArea、cv2.arcLength、cv2.approxPolyDP、cv2.convexHull、cv2.boundingRect、cv2.minAreaRect
  19. 【linux】内核模块管理:lsmod、insmod、rmmod、modinfo、modprobe、depmod命令
  20. Linux服务器CPU100%问题

热门文章

  1. ubuntu中flashcache使用教程
  2. Windows 10 IIS所有的html返回空白
  3. 序列代码UVa 111 History Grading (最长公共子序列)
  4. 更换分布式文件系统副本组成员的硬件或操作系统——第一步:计划
  5. [合作赞助]九叔生日由中国移动、51cto、奇虎360以及一帆浩瀚联合举办
  6. 购买笔记本不得不说的11点应用技巧
  7. 磁盘阵列——RAID0制作方法
  8. 面试:Zookeeper
  9. JS 数据结构之旅 :通过JS实现栈、队列、二叉树、二分搜索树、AVL树、Trie树、并查集树、堆
  10. ORA-00845: MEMORY_TARGET not supported on this system