两年多以前有个Machine Learning课以PRML为参考书,当时就觉得这书相当的好。可惜一直以来没认真读完。最近稍闲终于重新读了一遍,比较有收获。
这书给人的最大的印象可能是everything has a Bayesian version或者说everything can be Bayesianized,比如PRML至少给出了以下Bayesian对Frequentist的PK:
Frequentist版本 Bayesian版本
Linear regression <---> Bayesian linear regression
Logistic regression <---> Bayesian logistic regression
Neural network <---> Bayesian Neural network
SVM <---> RVM
Gaussian mixture model <---> Bayesian Gaussian mixture model
Probabilistic PCA <---> Bayesian probabilistic PCA
Hidden markov model <---> Bayesian Hidden markov model
Linear dynamic system <---> Bayesian Linear dynamic system
从作者的叙述来看,Bayesian是道美味可口的菜:避免over-fitting,自动选模型参数(例如GMM的分支数K,PCA所降到的维数)等等;虽然通向它的路途颇为艰难:marginalization涉及的计算是很复杂的。因此书里大量运用了approximation(前期大量Laplace approximation,后期Variational Bayes等)。
Frequentist一方的model/algorithm稍轻松一些,面临的计算困难没那么大:前期很多甚至有closed-form solution,要不就上gradient decent,后期则大量EM算法;但Frequentist要考虑over-fitting的问题(regularizing),又要cross-validation来选model,这减少了training data、增加了额外计算量,不如Bayesian方法来得elegant。
这本书总体上写的是非常清晰的。不过也有些不尽如人意的。比如第8章读完后我仍旧不知道PGM到底是什么,还是借助了Koller那本PGM的某几章才算搞清楚。再如SVM那一章(P328),Lagrangian function关于参数w,b最小化,关于Lagrange multiplier最大化这一点,也是看了Andrew Ng的Lecture note后才理解为什么的。
最后,分享一下本人的全部笔记:http://vdisk.weibo.com/s/KY31O (http://vdisk.weibo.com/s/bc6IJ -- 这个链接somehow已经失效了...)。
你要具体,那我们就来具体的。
1, Vapnik 的VC dimension以及后面一脉相承的sample complexity分析里面对象都是一个分类函数,所以可以才能用VC dimension或者Rademacher complexity等等来度量这个分类函数所属的函数集的复杂性。 而Bayesian的目标并不是一个分类函数,而是整个分类函数的分布。所以Frequentist的复杂性度量在这个level就不太适用了。
2, 基于上述原因,DA McAllester提出了PAC-Bayesian来度量。
3,我的理解,Bayesian对概率的理解和频率学派对概率的理解和解释不一样,你所说的sample complexity是基于频率学派的概率,对于pure Bayesian意义不清楚。
4,在你反对某件事之前,请先试着了解它。