在这篇文章中,我引用Bishop书中的一个例子,来简单介绍一下Variational Methods的应用。想要更详细地理解这个例子,可以参考Bishop的书Pattern Recongnition and Machine Learning的第十章。

这个例子应用于一个混合高斯分布,我们先来看一看这个混合高斯分布的图模型,见图3,从而可以进一步退出其概率表达式。

现在我们有了这个图,我们就不难写下一个完整的概率式来表示整个联合分布:

现在,我们来定义一些分布。首先,我们已经说过,这是一个混合高斯模型,那么就需要有一个变量来描述,一个点的生成,到底是由这个混合高斯中的哪一个组成部分生成。那么这个变量就是Z,我们用一个1-of-K的二进制向量来表示。例如我现在有一个二进制向量(0,0,0,0,1),这个向量代表一共有五个组成部分,而这个点对应于其中的第五个组成部分。这就是一个multinational distribution。那么我们现在要来控制这个multinational distribution,那就需要利用到pi。现在我们假设有N个观测变量构成的数据集,每一个观测变量都对应其潜在变量。我们可以得到:

在这里, 我们假定,在这个高斯混合中,一共有K个组成部分。现在,我们需要写出观测变量基于潜在变量的条件分布。

现在,我们可以引入分布来描述这些参数,从而构成一个完整的Bayesian Model。首先,我们来描述pi。我们注意到Z是一个由pi控制的multinational distribution,那么根据其共轭先验,我们可以方便地选择Dirichlet distribution作为pi的先验分布,从而我们有:

在这个式子中,我们将Dirichlet分布做了一个简化,其控制参数,我们减少为一个。关于Dirichlet分布的介绍可以看我另外一篇文章Simple Introduction to Dirichlet Process。现在我们需要为Gaussian的均值和方差引入一个控制先验。从我们之前的图模型中,我们发现了均值对精度的依赖(这并不是必须的)。在均值和精度都不知晓的情况下,我们可以为这两个参数引入一个Gaussian-Wishart先验分布,这是在对于高斯分布的两个控制参数均不了解的情况下其共轭先验。从而我们有:

现在,整个问题就完全定义了,接下来就是如何利用Variational Methods来解决这个问题。

首先,回忆一下在Variational Methods里,我们是如何实现近似的。对,我们是利用一种结构上的近似,也就是假设我们现在想要求的分布,可以分解为一系列tractable的分布,从而进行近似于求解。在给定的现在这样一个完全Bayesian Model中,我们选择一种分解方式,来将原有的结构进行分解近似。从而我们得到:

这是一种合理的假设,我们将潜在变量和控制参数分开,从而得到这样的一种分解。这里有几点值得说明:首先,我在前面的文章中提到,我们是将Z分解为几组,从而得到近似模型。那为什么这里除了Z之外,还有别的变量?这是因为,当时我用Z代替的了所有的变量,当时的Z之中包含了控制参数,因为这是一个完全的Bayesian Model。第二个要注意的是,这个分解的假设,是我们在这个例子中作出的唯一假设了。

现在,我们利用之前得到的公式,将现在的这个式子代入,我们可以得到:

而后,我们利用最初根据图模型得到的那个全概率分解形式,可以对上面的式子进行简化,并且将于Z无关的式子都放入常数中,从而得到:

接下来,我们就可以将上面式子中提到的两个分布分别代入,分别可以得到:

以及

我们注意到,这两个式子有相同的部分,为了使得表达更加简洁,我们引入一个新的符号:

从而我们有:

在这个式子的基础上,我们等式两边同时取对数,则我们得到:

这个分布还是没有归一化的,所以我们需要进行归一化,则我们定义:

从而对该分布进行归一化,得到最终的关于Z的分布:


其余参数的近似,我将会在下一篇文章中继续讨论。

An Introduction to Variational Methods (5.1)的更多相关文章

  1. An Introduction to Variational Methods (5.3)

    从之前的文章中,我们已经得到了所有需要求解的参数的优化分布的形式,分别为: ‍ 但是,我们从这些分布的表达式中(参见之前的文章),可以发现这些式子并不能够直接求解.这是因为各个参数之间相互耦合,从而导 ...

  2. An Introduction to Variational Methods (5.2)

    我们现在已经得到了关于潜在变量Z的优化分布的表达形式: ‍ 其中: ‍ 所以现在我们可以得到Z的期望: ‍ 另外对于Z还值得一提的是,我们从其优化分布的表达式中可以看出,各个Z的组成部分之间还是相互耦 ...

  3. 概率主题模型简介 Introduction to Probabilistic Topic Models

    此文为David M. Blei所写的<Introduction to Probabilistic Topic Models>的译文,供大家参考. 摘要:概率主题模型是一系列旨在发现隐藏在 ...

  4. 转:概率主题模型简介 --- ---David M. Blei所写的《Introduction to Probabilistic Topic Models》的译文

    概率主题模型简介 Introduction to Probabilistic Topic Models      转:http://www.cnblogs.com/siegfang/archive/2 ...

  5. PRML读书会第十章 Approximate Inference(近似推断,变分推断,KL散度,平均场, Mean Field )

    主讲人 戴玮 (新浪微博: @戴玮_CASIA) Wilbur_中博(1954123) 20:02:04 我们在前面看到,概率推断的核心任务就是计算某分布下的某个函数的期望.或者计算边缘概率分布.条件 ...

  6. deep learning 的综述

    从13年11月初开始接触DL,奈何boss忙or 各种问题,对DL理解没有CSDN大神 比如 zouxy09等 深刻,主要是自己觉得没啥进展,感觉荒废时日(丢脸啊,这么久....)开始开文,即为记录自 ...

  7. PGM1.1-简介

    自己根据Jordan大神的资料写的(算翻译?完全不记得了,这是半年前整理的,反正不记得了,如果大神有看到部分重合,那肯定是我借鉴了人家的,本来是一个群里的人大家兴致高说写DL的书(所以这一章并不是书的 ...

  8. 机器学习经典论文/survey合集

    Active Learning Two Faces of Active Learning, Dasgupta, 2011 Active Learning Literature Survey, Sett ...

  9. Reading lists for new LISA students(转)

    Research in General How to write a great research paper Basics of machine learning http://www.iro.um ...

随机推荐

  1. 百行go代码构建p2p聊天室

    百行go代码构建p2p聊天室 百行go代码构建p2p聊天室 1. 上手使用 2. whisper 原理 3. 源码解读 3.1 参数说明 3.1 连接主节点 3.2 我的标识 3.2 配置我的节点 3 ...

  2. bootstrap 基础(二)

    1 栅格系统偏移 栅格系统的偏移只能向右:col-xs-offset-x. <!DOCTYPE html> <html lang="en"> <hea ...

  3. [Unity 设计模式]桥接模式(BridgePattern)

    1.前言 继上一讲IOC模式的基础上继续本讲桥接模式,笔者感觉桥接模式是23种设计模式中桥接模式是最好用但也是最难理解的设计模式之一,23中设计模式就好武侠剧中一本武功秘籍,我们在工作过程中想要熟练运 ...

  4. mysql 5.7 Warning: Using a password on the command line interface can be insecure. 解决方案

    百度了好多,发现都是lunix环境下的,没有找到windows和OS 的,在lunix环境下的解决方案一般就是修改数据库配置文件 my.conf 在Windows 中是没有my.cnf 文件,而是叫做 ...

  5. 团队作业2--需求分析&原型设计

    一.需求分析 1.用户采访 a.采访对象:   分别对本学院同学.其他专业同学.部分老师等总计15人进行了采访调研: b.采访截图:    c.采访总结: (1).功能需求   能够将所提供的四个数进 ...

  6. 微信小程序xml解析

    准备: 下载xmldom库:https://github.com/jindw/xmldom 将dom.js.dom-parser.js.sax.js,entities.js拷贝微信小程序需要的文件夹下 ...

  7. LaTeX排版指南

    V0.0.1 工具链 CTeX:http://www.ctex.org/HomePage ,CTeX是一个中文套装,但也同时发布一个独立的ctex宏包 TeXLive:https://tug.org/ ...

  8. 201521123070 《JAVA程序设计》第8周学习总结

    1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.泛型简介:泛型程序设计,编写的代码可被不同类型的对象所重用,Java中一个集合可以放任何类 型的对象,因为 ...

  9. 201521123005 《java程序设计》 第七周学习总结

    1. 本周学习总结 参考资料: XMind 2. 书面作业 Q1ArrayList代码分析 1.1 解释ArrayList的contains源代码 ArrayList的contains源代码 /** ...

  10. 201521123044 《Java程序设计》第4周学习总结

    1. 本章学习总结 2. 书面作业 1. 注释的应用 使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 答: 2. 面向对象设计(大作业1,非常重要) 2.1 ...