Loading...
Navigation
Table of Contents

贝叶斯定理及应用Data

贝叶斯定理

不同于频率主义者,贝叶斯主义者则根据未知的命题来赋值概率,这样的理念导致贝叶斯主义者有更多的机会使用贝叶斯定理。贝叶斯定理,是关于随机事件A和B的条件概率的一则定理。其中包含先验概论,后验概论,共轭先验的概念参考这里

Reference

符号说明

设有$N个$样本/随机变量$X=\{x_1,x_2,\dots,x_N\}$,每个样本有$M$维,即$x_i=\{x^1_i,\dots,x^M_i\}$。

$p(x;\theta)$表示$x$的pdf,其中$\theta$为参数,$p(X;\theta)$表示$X$里所有变量的联合pdf,$p(x|\theta)$表示某个随机变量$\theta$下$x$的条件pdf。

极大似然估计MLE

MLE和MAP都是针对同分布数据集进行概率分布参数的估计,如果是对于不同分布的数据混一起进行估计,需要用到高斯混合模型GMM.

目标:在MLE中,首先指定数据符合什么形式的分布,然后是用已有的数据确定(估计)分布的未知参数值。给定样本集合$X$,我们可以

  1. 把样本看作随机变量:把所有样本对应的随机变量的pdf乘起来得到联合pdf;
  2. 把$\theta$看作自变量:而如果我们将样本看作固定的值,将$\theta$看作自变量(不能叫随机变量,所以我们写成$p(x;\theta)$而不是$p(x|\theta)$),那么这个函数就叫做似然函数,我们的目标是找到使得似然函数最大的$\theta$,因为这样的$\theta$看起来似乎更匹配这些样本的真实分布。

$$p(X;\theta)=p(x_1,\dots,x_N;\theta)=\prod_{k=1}^N p(x_k;\theta)=L(\theta;X)$$
$${\hat{\theta }}_ {\mathrm{MLE}}(X)=\arg \max_{\theta}L(\theta;x)$$
通过对$\theta$求导,便可以找到使得$L(\theta)$的那个$\theta$。ML的具体介绍参见维基百科

Example:给定一组一维样本$X$,$x_i$可以取0或1,对于这种过于简单的情况,我们会跳过设置Bernouli分布的参数$p$,直接得到$P(x=0)=\frac{\#(x=0)}{N}$,其实这本质上就是MLE的思想。机器学习中类别特征,如果使用MLE来估计分布,其实就是像这样简单的认为频率就是概率;当然,如果假设$x_i$服从正态分布,那么就要定义一个$\theta=(\mu,\sigma^2)$,然后用定义计算。


最大后验估计MAP

目标. 在MAP中,也是首先指定数据符合什么形式的分布,然后是用已有的数据确定(估计)分布的参数值。然而不同于MLE,MAP将$\theta$看成随机变量,其有自己的分布。假设$\theta$存在一个先验分布$p(\theta)$,这就允许我们将$\theta$作为贝叶斯公式中的随机变量,所以$\theta$的后验分布就是
$$p(\theta|X)=\frac{p(X|\theta )p(\theta)}{\int _{\Theta }p(X|\theta ')p(\theta ') d\theta'}$$
有了后验分布后,我们的目标是找到后验分布$p(\theta|X)$的众数(Mode)作为最终的估计值。考虑到后验分布的分母和$\theta$没关系,此外每个样本是iid的,所以
$${\hat{\theta }}_ {\mathrm{MAP}}(X)=\arg \max _{\theta}p(X|\theta)p(\theta)=\arg \max_{\theta}p(x_1|\theta)\cdots p(x_N|\theta)\cdot p(\theta)$$
可以看出,MAP和ML的区别是MAP多乘了个先验$p(\theta)$。在MAP中,若先验$p(\theta)$服从均匀分布,则MAP和ML会得到相同的结果;若$p(\theta)$的方差非常的小,MAP和ML的结果自然也会非常的相似。先验分布的选择依赖于人的直觉,数据量越大,先验分布作用越小,即MLE和MAP没差。

当然也可以对上式取个log,就把乘法变成了加法。这时会发现$p(\theta)$项其实起到了正则化的作用。如果其服从gauss分布$f(\theta)=\frac{1}{\sqrt{2\pi}}\exp(-\frac{\theta^2}{2})$,则相当于加了L2正则;如果服从laplace分布,则相当于加了L1正则。MAP的具体介绍参见维基百科


贝叶斯估计(Bayesian Estimation)

目标:给定的一个新样本$x_{new}$,贝叶斯估计的目标是计算(估计)出它出现的概率(服从训练样本服从的分布的置信度)。从理论上来说,给定训练样本$X$,类似于MAP,其先使用贝叶斯公式求出训练样本的参数$\theta$的分布(注意这里是分布,不是求出最似然的那个$\theta$;求分布则是要把每个$\theta$对应的后验概率算出来,不能忽略贝叶斯公式的分母),然后利用$\theta$来估计新样本出现的概率。
$$p(x_{new}|X)=\int p(x_{new}|\theta)p(\theta|X)d\theta$$
$$p(\theta|X)=\frac{p(X|\theta)p(\theta)}{p(X)}=\frac{p(X|\theta)p(\theta)}{\int _{\Theta }p(X|\theta ')p(\theta') d\theta'}$$
贝叶斯估计可以采用增量学习的方法来进行在线计算。


贝叶斯线性回归

之前提到的估计都是用来估计一组样本的分布,建模对象是一些样本$X$。贝叶斯线性回归的建模对象是样本和样本对应的label,即$X$和$y$。更为具体来说,建模对象是$y$,只不过$y$依赖于$X$,其本质也是估计$y$这个随机变量分布的参数。以下用一个例子来阐述这个问题和之前的区别:

Example:给定一些学生集合$X$和他们的成绩集合$Y$,用$x$代表某个学生的特征,$y$代表其考试成绩,所以可以假设$y$服从正态分布,结合线性模型,可以得出$y \sim \mathcal{N}(\alpha+\beta x,\sigma)$。可以看出,$x$和$\alpha$是一样的,都是用来决定$y$的分布,只不过$x$是定值(样本)。如果想用MLE的方法来估计的$y$,则可以通过最大化似然函数来确定$\alpha$等参数的值
$$L(\alpha,\beta,\sigma^2;X,Y)=\prod_{i=1}^n N(y_i;\alpha+\beta x_i,\sigma^2)$$
这里$N(y_i;\alpha+\beta x_i,\sigma^2)$是指参数为$\alpha+\beta x_i,\sigma$的正态分布pdf在样本$y_i$处的取值。这个例子告诉我们,现在的建模对象是$y$。

下面以一元线性回归为例介绍贝叶斯线性回归。作为线性模型,贝叶斯线性回归假设$y=\alpha+\beta x+\varepsilon$(有的地方不写$\varepsilon$,只是少了个建模参数,没有区别)。

参考StackExchange


朴素贝叶斯法

朴素贝叶斯法是机器学习模型,貌似和上述的都不一样?它是用贝叶斯公式估计分类问题里面的$y$的后验分布,不是线性分类器?

以分类问题为例,给定训练数据集,首先学习features和label的联合概率分布,然后给定的输入$x$,利用贝叶斯定理来求出label的后验分布,取后验概率最大的$y$作为label。

朴素贝叶斯法的推导和最大后验基本一样,不同之处在于其是为了求给定$X$下$y$的后验分布,而不是给定$X$下估计其先验参数$\theta$的分布。以多分类问题为例,设训练集中有M个类别特征$x^1,\dots,x^M$,标签$y$可以取$c^1,\dots,c^K$,则$y$的后验分布为
$$P(y=c^k|x=a)=\frac{P(y=c^k)\prod_j P(x^j=a^j|Y=c^k)}{\sum_k P(y=c^k)\prod_j P(x^j=a^j|Y=c^k)}$$
这里条件概率之所以可以写成$\prod_j P(x^j=a^j|Y=c^k)$,是因为假设了不同的特征是条件独立的,所以叫朴素贝叶斯;此外,$P(y=c^k)$和$P(x^j=a^j|Y=c^k)$这些离散型的分布是要预先计算出来的,比如可以通过极大似然估计计算,由于$X^j$都是离散特征,所以如上一节所说,直接计算频率就得到了概率分布。

Last updated on Jan 30, 2020.