PRML学习总结之2------概率分布之一

PRML学习总结之2——概率分布之一

本章主要介绍一些重要的概率分布,包括伯努利分布与二项分布,多项式分布,Beta分布,Dirichlet分布以及Gaussian分布。其中详细介绍了Gaussian分布。同时 介绍了指数家族(The Exponential Family)的一些性质。最后介绍了两种无参数的方法:核密度估计以及KNN。


基本的知识

1.先验分布(prior distribution)

  即进行观察实验之前,凭借先验知识,假定的一个分布。

2.后验分布(posterior distribution)

进行观测试验后,根据观测值对先验分布修正后所得到的分布。其中根据Bayesian定理:
后验分布~先验*似然

3.共轭先验 (conjugate prior)

即先验分布与似然函数有相同的函数形式(下文具体讲解)。提出共轭先验的原因如下:通常我们利用Bayesian定理求解后验分布时,由于需要先验*似然函数,计算量往往很大,甚至会有无法求解的情况出现。但如果先验分布与似然函数有相同的函数形式,计算后验分布就十分简单了。

4.含参数方法(parameteric method)与无参数方法(non-parameteric method)

  主要是指概率分布是否由一些参数控制,如Gaussian分布(由 μ σ 控制 ),故为含参分布,利用Gaussian分布所使用的方法即为含参方法);无参方法则如KNN,其不受参数控制。


伯努利分布(Bernouli Distribution)与贝塔分布(Beta Distribution)

  之所以将两个分布放在一起是因为两者为共轭先验分布,从下面分析可以看出。

1.Bernouli Distribution

  假设抛一枚硬币,记为事件 X,正面朝上(X = 1)的概率为 μ , 则反面朝上(X= 0)的概率为 1μ 。这样X就服从伯努利分布, 记作:

Bern(x|μ)=μx(1μ)1x

现在假设有随机样本集 D={x1,...xN} 相互独立,且都服从伯努利分布,我们可以很容易写出似然函数:
p(D|μ)=n=1Np(xn|μ)=n=1Nμxn(1μ)1xn

通过计算可以得到参数 μ 的似然估计值为:
μML=1Nn=1Nxn

若对抛硬币做N次独立重复试验,假设有m次正面朝上,则该分布变为了二项分布(binomial distribution),记作:
Bin(m|N,μ)=CmNμm(1μ)Nm
其中期望 E[m]=Nμ , 方差 var[m]=Nμ(1μ)

2.Beta Distribution

  上部分讲到伯努利分布,并且用最大似然估计估计出了参数,我们在第1章的时候就已经了解到最大似然估计很容易出现过拟合的现象。 并且用Bayesian的方法可以有效的解决这一问题,但Bayesian方法虽好,由于需要假设先验分布,并且要计算与似然函数的乘积,因此十分复杂。有没有什么方法可以解决这一问题呢?答案是肯定的,我们前面提到过共轭先验的问题。只要先验分布与似然函数形式相同,计算量便可以大大降低,基于伯努利分布的似然函数的形式,我们引入Beta分布作为参数 μ 的先验分布,记作:

Beta(μ|a,b)=Γ(a+b)Γ(a)Γ(b)μa1(1μ)b1

其中 Γ(x)=0μx1eμdu 成为伽马函数, a,b 一般被称作超参数(hyperparameter)
Beta函数的期望与方差为:
E[μ]=aa+b
var[μ]=ab(a+b)2(a+b+1)

得到先验分布后,根据Bayesian定理,我们可以很容易求出后验分布,假设前面提及的样本集D中,正面朝上即( xi=1) 的个数为m, 反面朝上即( xi=0 )的个数为 l=Nm ,则后验分布有这样的形式:
p(μ|m,l,a,b)=Γ(m+a+l+b)Γ(m+a)Γ(l+b)μm+a1(1μ)l+b1
我们注意到后验分布符合先验分布的形式,故也属于Beta分布。且根据概率的加法和乘法定理,并且由Beta分布的性质可知:
p(x=1|D)=10p(x=1|μ)p(μ|D)dμ=10μp(μ|D)dμ=E[μ|D]=m+am+a+l+b
。也就是说后验分布 p(x=1|D) 仅仅等于x = 1的样本个数除以总的样本数(包括先验观测值)。因此分析起来就十分方便,这也是利用共轭先验的好处。图1(a) - 图1(d)所示是不同的 a,b,m,l ,后验分布的变化情况。通过观察图形,我们发现随着 m,l , 即观测样本的增加函数图形越来越陡且窄,尖峰(sharply peaked)的情况越来越明显,这表明通过增加观测样本, μ (范围是[0, 1])可取的范围越来越小。因此,我们对 μ 估计的准确性大大提高。

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
R语言代码如下所示:

plotBeta <- function(){
  #生成序列点
  x = seq(0, 1, length.out = 100)

  #生成4个图形的y值 
  y1 <- dbeta(x, 0.1, 0.2)
  y2 <- dbeta(x, 2, 1)
  y3 <- dbeta(x, 30, 40)
  y4 <- dbeta(x, 150, 100)

  #绘制图形
  plot(x, y1, col = "yellow", xlim = c(0,1), ylim = c(0,15), type = 'l', 
       lwd = 5, main = "Beta Distribution:a = 0.1, b = 0.2, m = 0, l = 0")

  plot(x, y2, col = "green", xlim = c(0,1), ylim = c(0,15), type = 'l', 
       lwd = 5, main = "Beta Distribution:a = 0.1, b = 0.2, m = 1, l = 1")

  plot(x, y3, col = "blue", xlim = c(0,1), ylim = c(0,15), type = 'l', 
       lwd = 5, main = "Beta Distribution:a = 0.1, b = 0.2, m = 30, l = 40")

  plot(x, y4, col = "orange", xlim = c(0,1), ylim = c(0,15), type = 'l', 
       lwd = 5, main = "Beta Distribution:a = 0.1, b = 0.2, m = 150, l = 100")
}

多项式分布(Multinominal Distribution)与狄利赫雷分布(Dirichlet Distribution)

1. 多变量伯努利分布与多项式分布

  满足伯努利分布的随机变量只能有2种状态(binary variabal),但实际生活中往往有多种状态的情况存在,下面我们来考虑多种状态下的伯努利分布。为方便考虑应用1-of-K scheme,这种表示方法将随机变量用K维向量表示,假设该变量处于第i种状态,则 xi=1 ,向量中其他元素为0。举个例子,假设一个离散的随机变量x有5种状态(记作 x1,...,x5 ),且目前处于第2种状态,则 x=(0,1,0,0,0)T 。则x的分布可以表示为:

p(x|μ)=k=1Kμxkk
同样,考虑一个含有N个独立样本且服从多变量伯努利分布的数据集 D{x1,x2,...xN} ,则我们可以写出似然函数:
p(D|μ)=n=1Nk=1Kμxnkk=k=1Kμ(nxnk)k=k=1Kμmkk
其中 mk=nxnk
同样利用最大似然估计来估计参数的值,可以得到:
μk=mkN
与二项分布一样,若进行N次独立观察实验,可得到多项式分布:
Mult(m1,m2,...,mK|μ,N)=N!m1!m2!...mK!k=1Kμmkk
显然 Kk=1mk=N

2. 狄利赫雷分布

  和上文描述的一致,若要计算后验分布,就必须假设先验分布,同样利用共轭先验的特性,我们找到了可以作为先验分布的狄利赫雷分布,它与多变量伯努利分布的似然函数有相同的形式,其具体的函数表达如下:

Dir(μ|α)=Γ(α0)Γ(α1)Γ(α2)...Γ(αk)k=1Kμαk1k
其中 α0=kk=1αk
同样利用Bayesian定理,可得到后验分布:
p(μ|D,α)=Dir(μ|α+m)=Γ(α0+N)Γ(α1+m1)Γ(α2+m2)...Γ(αk+mk)k=1Kμαk+mk1k
其中向量 m=(m1,m2,...mk)T , mi 表示N个样本中状态为 i 的样本的个数。
实际上来说,Beta分布与狄利赫雷分布形式上有很大的相似性,只是随机变量的状态数不同。而当把狄利赫雷分布的状态数当做2,也就变为了Beta分布。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MOMFEA-SADE是一种基于多目标优化的多任务优化算法。它是在MOMFEA(多目标多任务优化进化算法)的基础上结合了SADE(自适应差分进化算法)的思想而提出的。在MOMFEA-SADE中,算法的整体运行构成在EMTPD中,其中运行函数在Callsolver.m中。算法的主体和MOMFEA框架没有区别,最主要的区别在Strategy.m中。Strategy.m包含了整个模型的构建,其中包括极大似然函数、混合高斯模型和EM算法的描述,这些描述遵循了机器学习经典书籍PRML中的实现。[1] 在EMT算法中,知识可以从单个或多个个体中提取,并转移到其他个体中,以方便它们的搜索。其中,基于单个个体的知识转移方法(KTS)是指从一个任务的单个个体中提取知识,并将知识转移到其他任务。具有KTS的EMT算法包括MFEA、M-BLEA、LDA-MFEA、S&M-MFEA、MO-MFEA、GMFEA、TMOMFEA、MTO-DRA、MFEA-II、MFEAGHS和MFGP。这些算法通过分类交配和垂直文化传播来传递知识。在分类交配中,从群体中随机选择两个个体,然后通过模拟二进制交叉(SBX)和多项式变异产生后代。在垂直文化传播中,每个后代被随机分配一项任务。KTS使得每个任务都能获得不同的知识,从而保持了人口的多样性。然而,由于知识传递的随机性,具有KTS的EMT算法不能充分利用高质量解的知识来加速种群的收敛速度。[2] 在KTM中,一个解决方案可以由其他解决方案指导。例如,在HS场景下的KTM中,一个解决方案可以由其他任务的高质量解决方案指导。然而,KTM也可能会转移劣解的知识,导致搜索偏离理想的方向。因此,在一些KTS和KTM的方法中,每一代人只受到每次任务的一个或几个最佳解的指导,以避免将种群引向局部最优解。[3] 综上所述,MOMFEA-SADE是一种基于多目标优化的多任务优化算法,它结合了SADE的思想,并在EMT算法中引入了KTS和KTM的概念。这种算法可以通过知识转移来提高搜索效率,并避免陷入局部最优解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值