下一章有意讲讲EM和变分推断的内容。

EM和变分推断的内容能Google到很多,虽然质量乘次不齐,但本文也无意再赘述那么些个细节。

此处记录一些核心思想,帮助菜鸡形成整体上的认识。不过,变分推断也不是一篇博文能讲述通透的技术,希望读者读完此文,至少知道自己将要学一个什么好东西,能用它来做什么。

私以为,变分的理解就是统计机器学习的核心,那么,

  • 不懂变分怎么能说学会了统计机器学习?  P(统计机器学习 | 变分)
  • 不会统计机器学习怎么自诩会机器学习?  P(机器学习 | 统计机器学习)
  • 不懂机器学习如何有资格研究深度学习?  P(深度学习 | 机器学习)
  • 不懂深度学习又怎么能从事人工智能呢?  P(人工智能 | 深度学习)
  • 求边缘条件概率分布:P(人工智能 | 变分=False) = ?

但在此之前,需要提提Latent Variables隐变量

隐变量,潜在的隐藏的变量,这个东西非常好,同时也能启迪你一些人生哲学。

“若能肯定自己,需要之前有一段否定自己的过程。“

看到的,即使看似合理也要抱着怀疑自己的态度,寻求背后的真实状态,比如hmm。

hmm PGM

看到了表象y,y之间貌似相关性也很强,但就是要先怀疑自己,反问:是否有”幕后黑手x“控制着整个局面?

然后,假设了隐变量以及之间的概率关系,剩下的问题就是如何求解概率关系的过程,即各个边(条件概率分布)咯。

因为要用到隐变量,所以更需要概率图来给读者以直观的感受,不同场景不同模型中的隐变量设计又有很多的共性,概率图中对这些共性的研究也可以形成一种”定理”类似的东西,发现某个新问题的概率图有某种共性出现,直接使用对应的性质即可,而不是重新造轮子。

有菜鸡问了,加那么多隐变量,边自然就多了,也就是需要估计的概率关系(变量)多了,自找麻烦么?

麻烦确实不少,所以不能加太多,但也有变态的事情,比如头几年的日本学界,据说有人在模型中加了二十多个圈圈,然后论文就容易发表了。(不可考证,笑笑即可)

变分推断就是估参的一个利器,既然是估计参数,就不必在精度上斤斤计较,渐进就好,当然”逼近真实“,“逼近的程度”也是一门艺术,更是技术。提到渐进,也就是常说的”优化“,其实机器学习整个领域都充斥着优化方法,你说不学“优化理论”能混下去么?

菜鸡菜鸡,不学习《多元变量分析》、《优化》,如何登榜提名,好发愁。

哎,到处都是潜规则。

还有一个原因,隐变量都是自己设计的,当然要设计一个友好的,隐变量间关系比较强,容易计算,且相对通用的结构。

而变分推断中假设了一些友好的分布来尽可能的逼近实际分布,在这个逼近的过程中,当然希望承载在一个相对友好的变量关系上面。

如此看来,似乎明了了许多。

变分推断的目的是逼近真实分布,mcmc采样方法也是同样的目的,二者选其一皆可。

至于两者的优劣,可以百度之,内容都烂大街咯。

EM可以理解为变分推断的一种狭义情况,好比二项分布是狭义的多项分布。

说到底, Latent Variables真没什么,多几个圈圈又能如何。

最近,cmu的Machine Learning 10-702刷屏,互联网带来的教育共享就是好啊,好东西就在网上,你能嗅得到么?让我们瞧上一瞧。

Schedule

Here is the estimated class schedule. It is subject to change, depending on time and class interests.

Tues Jan 17 L Linear regression Notesvideo  
Thurs Jan 19 L Linear classification Notesvideocool plot  
Tues Jan 24 R Nonparametric regression Notesvideo  
Thurs Jan 26 R Nonparametric regression Notesvideo  
Tues Jan 31 R Nonparametric regression Notesvideo  
Thurs Feb 2 R Nonparametric classification Notesvideo Hw 1 due Fri Feb 3
Tues Feb 7 L Reproducing kernel Hilbert spaces Notesvideo  
Thurs Feb 9 L Density estimation Notesvideo  
Tues Feb 14 L Clustering Notesvideo  
Thurs Feb 16 L Clustering Notesvideo Project milestone 1 due Fri Feb 17
Tues Feb 21 L Clustering Notesvideo  
Thurs Feb 23 L High-dimensional testing Notesvideo  
Tues Feb 28 L Concentration of measure Notesvideo  
Thurs Mar 2 L Concentration of measure Notesvideo Hw 2 due Fri Mar 3
Tues Mar 7 - Midterm    
Thurs Mar 9 - Spring break (no class)    
Tues Mar 14 - Spring break (no class)    
Thurs Mar 16 - Spring break (no class)    
Tues Mar 21 L Minimax theory Notesvideo  
Thurs Mar 23 L Minimax theory Notesvideo  
Tues Mar 28 R Sparsity and the lasso Notesvideo  
Thurs Mar 30 R Sparsity and the lasso Notesvideo Hw 3 due Mon Apr 3
Tues Apr 4 R Sparsity and the lasso Notesvideo  
Thurs Apr 6 R Sparsity and the lasso Notesvideo Project milestone 2 due Mon Apr 10
Tues Apr 11 L Graphical models Notesvideo  
Thurs Apr 13 L Graphical models Notesvideo  
Tues Apr 18 L Advanced topic Lei, Robins, and Wasserman, and
Lei and Wasserman
 
Thurs Apr 20 - Spring Carnival (no class)    
Tues Apr 25 R Advanced topic Lei, Robins, and Wasserman, and
Lei and Wasserman
Hw 4 due Wed Apr 26
Thurs Apr 27 R Advanced topic Lee, Sun, Sun, and Taylor, and
Tibs, Taylor, Lockhart, and Tibs
 
Tues May 2 - Course conference Slides  
Thurs May 4 - Course conference Slides Project writeup due Fri May 5

从大纲看去,跟我的计划内容大有区别。在此就顺便再报一个潜规则。

如果你是数学系的同学,对数据分析感兴趣,学成之后,千万不要在计算机系的同学面前自夸数据分析;搞数据分析(机器学习)的计算机的同学们也不要在数学系面前卖弄算法。

很可能,很可能,很可能。。。 你们争辩的不是一个东西,但名字却都叫“统计学习”或者相关的名字。

不要纠结我的说法,自个儿瞧瞧各大院校统计学习课程的大纲,然后对比,玩味。

那么问题来了,为什么会如此?

数学系做数据分析很正常,往往从Linear regression,Linear classification这些考验数学基础的地方入手,如cmu的这份教学大纲。

统计机器学习内部也有派别,一派的代表就是prml,似乎更强调工程实践性,下图左;另一派的代表就是小黄书《The Elements of Statistical Learning》,下图右。

   左, prml;                  右, little yellow book

当然了,到底学习的是哪个派别跟课程设在cse or math没有太多相关,主要还是看讲课教授的品味。

  • 不要问我学哪一本比较好,我觉得都学了比较好。
  • 不要问我哪一本更有优势,正妹从哪个角度看都是正妹。

正所谓知己知彼百战不殆,你若有心干掉数学系出身的竞争对手,建议“深入敌后,趁其课,学其书,使其优势化为乌有”。

这也是交叉学科领域的生存之道。

最后,cmu的课程设计更偏重数学修炼,这也是名校的潜规则。

[Bayesian] “我是bayesian我怕谁”系列 - Latent Variables的更多相关文章

  1. [Bayesian] “我是bayesian我怕谁”系列 - Gaussian Process

    科班出身,贝叶斯护体,正本清源,故拿”九阳神功“自比,而非邪气十足的”九阴真经“: 现在看来,此前的八层功力都为这第九层作基础: 本系列第九篇,助/祝你早日hold住神功第九重,加入血统纯正的人工智能 ...

  2. [Bayesian] “我是bayesian我怕谁”系列 - Variational Autoencoders

    本是neural network的内容,但偏偏有个variational打头,那就聊聊.涉及的内容可能比较杂,但终归会 end with VAE. 各个概念的详细解释请点击推荐的链接,本文只是重在理清 ...

  3. [Bayesian] “我是bayesian我怕谁”系列 - Variational Inference

    涉及的领域可能有些生僻,骗不了大家点赞.但毕竟是人工智能的主流技术,在园子却成了非主流. 不可否认的是:乃值钱的技术,提高身价的技术,改变世界观的技术. 关于变分,通常的课本思路是: GMM --&g ...

  4. [Bayesian] “我是bayesian我怕谁”系列 - Boltzmann Distribution

    使用Boltzmann distribution还是Gibbs distribution作为题目纠结了一阵子,选择前者可能只是因为听起来“高大上”一些.本章将会聊一些关于信息.能量这方面的东西,体会“ ...

  5. [Bayesian] “我是bayesian我怕谁”系列 - Continuous Latent Variables

    打开prml and mlapp发现这部分目录编排有点小不同,但神奇的是章节序号竟然都为“十二”. prml:pca --> ppca --> fa mlapp:fa --> pca ...

  6. [Bayesian] “我是bayesian我怕谁”系列 - Naive Bayes+prior

    先明确一些潜规则: 机器学习是个collection or set of models,一切实践性强的模型都会被归纳到这个领域,没有严格的定义,’有用‘可能就是唯一的共性. 机器学习大概分为三个领域: ...

  7. [Bayesian] “我是bayesian我怕谁”系列 - Exact Inferences

    要整理这部分内容,一开始我是拒绝的.欣赏贝叶斯的人本就不多,这部分过后恐怕就要成为“从入门到放弃”系列. 但,这部分是基础,不管是Professor Daphne Koller,还是统计学习经典,都有 ...

  8. [Bayesian] “我是bayesian我怕谁”系列 - Exact Inference

    要整理这部分内容,一开始我是拒绝的.欣赏贝叶斯的人本就不多,这部分过后恐怕就要成为“从入门到放弃”系列. 但,这部分是基础,不管是Professor Daphne Koller,还是统计学习经典,都有 ...

  9. [Bayesian] “我是bayesian我怕谁”系列 - Naive Bayes with Prior

    先明确一些潜规则: 机器学习是个collection or set of models,一切实践性强的模型都会被归纳到这个领域,没有严格的定义,’有用‘可能就是唯一的共性. 机器学习大概分为三个领域: ...

随机推荐

  1. Activiti-04-.Spring integration

    ProcessEngineFactoryBean <beanid="processEngineConfiguration"class="org.activiti.s ...

  2. Netty4 学习笔记之一:客户端与服务端通信 demo

    前言 因为以前在项目中使用过Mina框架,感受到了该框架的强大之处.于是在业余时间也学习了一下Netty.因为Netty的主要版本是Netty3和Netty4(Netty5已经被取消了),所以我就直接 ...

  3. Qt全局宏和变量

    1.  Qt 全局宏定义 Qt版本号: QT_VERSION :  (major << 16) + (minor << 8) + patch 检测版本号: QT_VERSION ...

  4. HDFS概述(3)————HDFS Federation

    本指南概述了HDFS Federation功能以及如何配置和管理联合集群. 当前HDFS背景 HDFS主要有两层: 1.Namespace (1)包含目录,文件和块. (2)它支持所有命名空间相关的文 ...

  5. 【转】String字符串相加的问题

    String字符串相加的问题 前几天同事跟我说我之前写的代码中在操作字符串时候,使用字符串相加的方式而不是使用StringBuffer或者StringBuilder导致内存开销很大.这个问题一直在困扰 ...

  6. hdu1556树状数组的区间更新单点查询

    Color the ball Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  7. lambda表达式杂谈

    var personInfo = [ { name: "张三", age: 20, gender: "male" }, { name: "李四&quo ...

  8. 我的第一个python web开发框架(5)——开发前准备工作(了解编码前需要知道的一些常识)

    中午吃饭时间到了,小白赶紧向老菜坐的位置走过去. 小白:老大,中午请你吃饭. 老菜:哈哈...又遇到问题了吧,这次得狠狠宰你一顿才行. 小白:行行行,只要您赏脸,米饭任吃,嘻嘻,我们边走边聊. ... ...

  9. 对Java Web项目中路径的理解

    第一个:文件分隔符 坑比Window.window分隔符 用\;unix采用/.于是用File.separator来跨平台 请注意:这是文件路径.在File f = new File(“c:\\hah ...

  10. DotNetCore跨平台~一起聊聊Microsoft.Extensions.DependencyInjection

    写这篇文章的心情:激动 Microsoft.Extensions.DependencyInjection在github上同样是开源的,它在dotnetcore里被广泛的使用,比起之前的autofac, ...