PRML为何是机器学习的经典书籍中的经典?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PRML为何是机器学习的经典书籍中的经典?相关的知识,希望对你有一定的参考价值。

因为每读一遍都有新体会。最核心的思想是贝叶斯方法,最基本的模型是线性模型,最基本的假设是独立性。贝叶斯公式本身很简洁,但是以先验概率、后验概率理解,以及对参数即隐变量理解使得这个公式无比powerful。多读几遍以后你就会渐渐忘记模型,而只记住其对应的graphic model,推导变得很自然。理解了这些模型的假设以后再来看PRML,真的比我读到的其他的一些书写得好很多:门槛合理(从基本三论讲起,不会出现半天看两页的情况),自包含(所有利用的记号、定理、结论都在书中正文或者附录有详细解释,我并非数学系所以不太喜欢很多书籍里对于一些惯用记号【如示性函数】不加以解释就开始推导),推导步骤详略得当,idea解释很到位,章节安排前后衔接自然。这本书既可以当教材,也可以当工具书。

参考技术A

PRML究竟有何过人之处,不能光看它本身的内容,最重要的是看其在Machine Learning, Data Mining这一类书籍中的地位。通常从一个CS小白开始学Machine Learning或者Data Mining,到成长为一个独当一面的大牛,都会看几种类型的书:以《数学之美》为代表的科普类读物。通常作用为开发兴趣的。《机器学习实战》、《推荐系统实践》、《海量数据挖掘》等实践类书籍。在学中用,在用中学,实践中摸清套路。顺便了解一些基本模型。《统计学习方法》、《数据挖掘导论》、《数据挖掘(韩家炜)》等介绍类书籍。会对ML方面涉及到的技术做一个浅层次的介绍和全方位的了解,有少量数学内容和推导。《PRML》、《ESL》、《MLAPP》这类进阶类书籍。包涵大量理论知识和数学推导(尤其是习题),有助于了解Machine Learning方法背后的本质和思想。Machine Learning学习的过程,就是一个 what -> how -> why 的过程。而PRML,或者说同类的ESL等书籍,最大的作用就是让你知道为什么会有这样的方法,为什么会有这样的模型,它背后的intuition和motivation是什么。而这恰恰是一个Machine Learning Researcher想要进一步使用模型、看懂别人paper中的模型、甚至自己提出新模型的基础。看PRML会带给你在Machine Learning上的理解和使用能力一个质的飞跃。而在同一层次上,比如PRML和ESL相比,我个人认为,PRML涵盖面更广,语言更通俗,例子和习题更加详细,附带更多基础性的讲解和指引(比如第二章整章都在介绍概率分布),难度梯度设置更为合理,是其深受广大中老年PHD朋友喜爱的原因。可以说,PRML是一本兼顾广度、深度、可读性、可用性(做习题)的好书。

参考技术B

以前只看过西奥的模式识别,看得比较痛苦,有些地方并没有深入讲,而且需要一定的基础才能明白,而且是中文版翻译,有些地方读起来吃力。这两天在啃这本书,有种相见恨晚的感觉,适合入门的教材,由浅入深条理清晰,一些需要用到的数学知识也有详细的说明。个人觉得是经典,贝叶斯和频率都是解决问题的两种方式,而且在数据量非常大的情况下两者其实殊途同归。而且难度设置比较合理,前后联系非常清楚,尤其是从头到尾对于bayesian思想的介绍,让我这个之前不太了解bayesian的人也能比较好的理解。

机器学习经典书籍

前面有一篇机器学习经典论文/survey合集331。本文总结了机器学习10的经典书籍,包括数学基础和算法理论的书籍。本文会保持更新,欢迎推荐。

入门书单

  1. 《数学之美》 PDF683
    作者吴军大家都很熟悉。以极为通俗的语言讲述了数学在机器学习和自然语言处理等领域的应用。

  2. 《Programming Collective Intelligence》(《集体智慧编程》)PDF389
    作者Toby Segaran也是《BeautifulData : The Stories Behind Elegant Data Solutions》(《数据之美:解密优雅数据解决方案背后的故事》)的作者。这本书最大的优势就是里面没有理论推导和复杂的数学公式,是很不错的入门书。目前中文版已经脱销,对于有志于这个领域的人来说,英文的pdf是个不错的选择,因为后面有很多经典书的翻译都较差,只能看英文版,不如从这个入手。还有,这本书适合于快速看完,因为据评论,看完一些经典的带有数学推导的书后会发现这本书什么都没讲,只是举了很多例子而已。

  3. 《Algorithms of the Intelligent Web》(《智能web算法》)PDF164
    作者Haralambos Marmanis、Dmitry Babenko。这本书中的公式比《集体智慧编程》要略多一点,里面的例子多是互联网上的应用,看名字就知道。不足的地方在于里面的配套代码是BeanShell而不是python或其他。总起来说,这本书还是适合初学者,与上一本一样需要快速读完,如果读完上一本的话,这一本可以不必细看代码,了解算法主要思想就行了。

  4. 《统计学习方法》 PDF 模糊334 epub197
    作者李航,是国内机器学习领域的几个大家之一,曾在MSRA任高级研究员,现在华为诺亚方舟实验室。书中写了十个算法,每个算法的介绍都很干脆,直接上公式,是彻头彻尾的“干货书”。每章末尾的参考文献也方便了想深入理解算法的童鞋直接查到经典论文;本书可以与上面两本书互为辅助阅读。

  5. 《Machine Learning》(《机器学习》) PDF599
    作者Tom Mitchell是CMU的大师,有机器学习和半监督学习的网络课程视频。这本书是领域内翻译的较好的书籍,讲述的算法也比《统计学习方法》的范围要大很多。据评论这本书主要在于启发,讲述公式为什么成立而不是推导;不足的地方在于出版年限较早,时效性不如PRML。但有些基础的经典还是不会过时的,所以这本书现在几乎是机器学习的必读书目。

  6. 《Mining of Massive Datasets》(《大数据》) PDF190
    作者Anand Rajaraman[3]、Jeffrey David Ullman,Anand是Stanford的PhD。这本书介绍了很多算法,也介绍了这些算法在数据规模比较大的时候的变形。但是限于篇幅,每种算法都没有展开讲的感觉,如果想深入了解需要查其他的资料,不过这样的话对算法进行了解也足够了。还有一点不足的地方就是本书原文和翻译都有许多错误,勘误表比较长,读者要用心了。

  7. 《Data Mining: Practical Machine Learning Tools and Techniques》(《数据挖掘:实用机器学习技术》) PDF172
    作者Ian H. Witten 、Eibe Frank是weka的作者、新西兰怀卡托大学教授。他们的《ManagingGigabytes》[4]也是信息检索方面的经典书籍。这本书最大的特点是对weka的使用进行了介绍,但是其理论部分太单薄,作为入门书籍还可,但是,经典的入门书籍如《集体智慧编程》、《智能web算法》已经很经典,学习的话不宜读太多的入门书籍,建议只看一些上述两本书没讲到的算法。

  8. 《机器学习及其应用》
    周志华、杨强主编。来源于“机器学习及其应用研讨会”的文集。该研讨会由复旦大学智能信息处理实验室发起,目前已举办了十届,国内的大牛如李航、项亮、王海峰、刘铁岩、余凯等都曾在该会议上做过讲座。这本书讲了很多机器学习前沿的具体的应用,需要有基础的才能看懂。如果想了解机器学习研究趋势的可以浏览一下这本书。关注领域内的学术会议是发现研究趋势的方法嘛。

  9. 《Managing Gigabytes》(深入搜索引擎)PDF120
    信息检索不错的书。

  10. 《Modern Information Retrieval》 PDF53
    Ricardo Baeza-Yates et al. 1999。貌似第一本完整讲述IR的书。可惜IR这些年进展迅猛,这本书略有些过时了。翻翻做参考还是不错的。另外,Ricardo同学现在是Yahoo Research for Europe and Latin Ameria的头头。

  11. 《推荐系统实践》 PDF183
    项亮,不错的入门读物

深入

  1. 《Pattern Classification》(《模式分类》第二版) PDF141
    作者Richard O. Duda[5]、Peter E. Hart、David。模式识别的奠基之作,但对最近呈主导地位的较好的方法SVM、Boosting方法没有介绍,被评“挂一漏万之嫌”。

  2. 《Pattern Recognition And Machine Learning》 PDF135
    作者Christopher M. Bishop[6];简称PRML,侧重于概率模型,是贝叶斯方法的扛鼎之作,据评“具有强烈的工程气息,可以配合stanford 大学 Andrew Ng 教授的 Machine Learning 视频教程一起来学,效果翻倍。”

  3. 《The Elements of Statistical Learning : Data Mining, Inference, andPrediction》,(《统计学习基础:数据挖掘、推理与预测》第二版) PDF131
    作者RobertTibshirani、Trevor Hastie、Jerome Friedman。“这本书的作者是Boosting方法最活跃的几个研究人员,发明的Gradient Boosting提出了理解Boosting方法的新角度,极大扩展了Boosting方法的应用范围。这本书对当前最为流行的方法有比较全面深入的介绍,对工程人员参考价值也许要更大一点。另一方面,它不仅总结了已经成熟了的一些技术,而且对尚在发展中的一些议题也有简明扼要的论述。让读者充分体会到机器学习是一个仍然非常活跃的研究领域,应该会让学术研究人员也有常读常新的感受。”[7]

  4. 《Data Mining:Concepts andTechniques》(《数据挖掘:概念与技术》第三版) PDF79
    作者(美)Jiawei Han[8]、(加)Micheline Kamber、(加)Jian Pei,其中第一作者是华裔。本书毫无疑问是数据挖掘方面的的经典之作,不过翻译版总是被喷,没办法,大部分翻译过来的书籍都被喷,想要不吃别人嚼过的东西,就好好学习英文吧。

  5. 《AI, Modern Approach 2nd》 PDF112
    Peter Norvig,无争议的领域经典。

  6. 《Foundations of Statistical Natural Language Processing》 PDF79
    自然语言处理领域公认经典。

  7. 《Information Theory:Inference and Learning Algorithms》 PDF42

  8. 《Statistical Learning Theory》 PDF89
    Vapnik的大作,统计学界的权威,本书将理论上升到了哲学层面,他的另一本书《The Nature ofStatistical Learning Theory》也是统计学习研究不可多得的好书,但是这两本书都比较深入,适合有一定基础的读者。

数学基础

  1. 《矩阵分析》 PDF282
    Roger Horn。矩阵分析领域无争议的经典

  2. 《概率论及其应用》 PDF92
    威廉·费勒。极牛的书,可数学味道太重,不适合做机器学习的

  3. 《All Of Statistics》 PDF 扫描版89 PDF
    高清版185

    机器学习这个方向,统计学也一样非常重要。推荐All of statistics,这是CMU的一本很简洁的教科书,注重概念,简化计算,简化与Machine Learning无关的概念和统计内容,可以说是很好的快速入门材料。

  4. 《Nonlinear Programming, 2nd》 PDF76
    最优化方法,非线性规划的参考书。

  5. 《Convex Optimization》 PDF99 配套代码61
    Boyd的经典书籍,被引用次数超过14000次,面向实际应用,并且有配套代码,是一本不可多得的好书。

  6. 《Numerical Optimization》 PDF75
    第二版,Nocedal著,非常适合非数值专业的学生和工程师参考,算法流程清晰详细,原理清楚。

  7. 《Introduction to Mathematical Statistics》 PDF35
    第六版,Hogg著,本书介绍了概率统计的基本概念以及各种分布,以及ML,Bayesian方法等内容。

  8. 《An Introduction to Probabilistic Graphical Models》 PDF133
    Jordan著,本书介绍了条件独立、分解、混合、条件混合等图模型中的基本概念,对隐变量(潜在变量)也做了详细介绍,相信大家在隐马尔科夫链和用Gaussian混合模型来实现EM算法时遇到过这个概念。

  9. 《Probabilistic Graphical Models-Principles and Techniques》 PDF77
    Koller著,一本很厚很全面的书,理论性很强,可以作为参考书使用。

  10. 具体数学 PDF86
    经典

大家的补充

  1. 线性代数 (Linear Algebra):

    我想国内的大学生都会学过这门课程,但是,未必每一位老师都能贯彻它的精要。这门学科对于Learning是必备的基础,对它的透彻掌握是必不可少的。我在科大一年级的时候就学习了这门课,后来到了香港后,又重新把线性代数读了一遍,所读的是

    Introduction to Linear Algebra (3rd Ed.) by Gilbert Strang.

    这本书是MIT的线性代数课使用的教材,也是被很多其它大学选用的经典教材。它的难度适中,讲解清晰,重要的是对许多核心的概念讨论得比较透彻。我个人觉得,学习线性代数,最重要的不是去熟练矩阵运算和解方程的方法——这些在实际工作中MATLAB可以代劳,关键的是要深入理解几个基础而又重要的概念:子空间(Subspace),正交(Orthogonality),特征值和特征向量(Eigenvalues and eigenvectors),和线性变换(Linear transform)。从我的角度看来,一本线代教科书的质量,就在于它能否给这些根本概念以足够的重视,能否把它们的联系讲清楚。Strang的这本书在这方面是做得很好的。

    而且,这本书有个得天独厚的优势。书的作者长期在MIT讲授线性代数课(18.06),课程的video在MIT的Open courseware网站上有提供。有时间的朋友可以一边看着名师授课的录像,一边对照课本学习或者复习。

    http://ocw.mit.edu/OcwWeb/Mathematics/18-06Spring-2005/CourseHome/index.htm77

  2. 概率和统计 (Probability and Statistics):

    概率论和统计的入门教科书很多,我目前也没有特别的推荐。我在这里想介绍的是一本关于多元统计的基础教科书:

    Applied Multivariate Statistical Analysis (5th Ed.) by Richard A. Johnson and Dean W. Wichern

    这本书是我在刚接触向量统计的时候用于学习的,我在香港时做研究的基础就是从此打下了。实验室的一些同学也借用这本书学习向量统计。这本书没有特别追求数学上的深度,而是以通俗易懂的方式讲述主要的基本概念,读起来很舒服,内容也很实用。对于Linear regression, factor analysis, principal component analysis (PCA), and canonical component analysis (CCA)这些Learning中的基本方法也展开了初步的论述。

    之后就可以进一步深入学习贝叶斯统计和Graphical models。一本理想的书是

    Introduction to Graphical Models (draft version). by M. Jordan and C. Bishop.

    我不知道这本书是不是已经出版了(不要和Learning in Graphical Models混淆,那是个论文集,不适合初学)。这本书从基本的贝叶斯统计模型出发一直深入到复杂的统计网络的估计和推断,深入浅出,statistical learning的许多重要方面都在此书有清楚论述和详细讲解。MIT内部可以access,至于外面,好像也是有电子版的。

  3. 分析 (Analysis):

    我想大家基本都在大学就学过微积分或者数学分析,深度和广度则随各个学校而异了。这个领域是很多学科的基础,值得推荐的教科书莫过于

    Principles of Mathematical Analysis, by Walter Rudin

    有点老,但是绝对经典,深入透彻。缺点就是比较艰深——这是Rudin的书的一贯风格,适合于有一定基础后回头去看。

    在分析这个方向,接下来就是泛函分析(Functional Analysis)。

    Introductory Functional Analysis with Applications, by Erwin Kreyszig.

    适合作为泛函的基础教材,容易切入而不失全面。我特别喜欢它对于谱论和算子理论的特别关注,这对于做learning的研究是特别重要的。Rudin也有一本关于functional analysis的书,那本书在数学上可能更为深刻,但是不易于上手,所讲内容和learning的切合度不如此书。

    在分析这个方向,还有一个重要的学科是测度理论(Measure theory),但是我看过的书里面目前还没有感觉有特别值得介绍的。

  4. 拓扑 (Topology):

    在我读过的基本拓扑书各有特色,但是综合而言,我最推崇:

    Topology (2nd Ed.) by James Munkres

    这本书是Munkres教授长期执教MIT拓扑课的心血所凝。对于一般拓扑学(General topology)有全面介绍,而对于代数拓扑(Algebraic topology)也有适度的探讨。此书不需要特别的数学知识就可以开始学习,由浅入深,从最基本的集合论概念(很多书不屑讲这个)到Nagata-Smirnov Theorem和Tychonoff theorem等较深的定理(很多书避开了这个)都覆盖了。讲述方式思想性很强,对于很多定理,除了给出证明过程和引导你思考其背后的原理脉络,很多令人赞叹的亮点——我常读得忘却饥饿,不愿释手。很多习题很有水平。

  5. 流形理论 (Manifold theory):

    对于拓扑和分析有一定把握时,方可开始学习流形理论,否则所学只能流于浮浅。我所使用的书是

    Introduction to Smooth Manifolds. by John M. Lee

    虽然书名有introduction这个单词,但是实际上此书涉入很深,除了讲授了基本的manifold, tangent space, bundle, sub-manifold等,还探讨了诸如纲理论(Category theory),德拉姆上同调(De Rham cohomology)和积分流形等一些比较高级的专题。对于李群和李代数也有相当多的讨论。行文通俗而又不失严谨,不过对某些记号方式需要熟悉一下。

    虽然李群论是建基于平滑流形的概念之上,不过,也可能从矩阵出发直接学习李群和李代数——这种方法对于急需使用李群论解决问题的朋友可能更加实用。而且,对于一个问题从不同角度看待也利于加深理解。下面一本书就是这个方向的典范:

    Lie Groups, Lie Algebras, and Representations: An Elementary Introduction. by Brian C. Hall

    此书从开始即从矩阵切入,从代数而非几何角度引入矩阵李群的概念。并通过定义运算的方式建立exponential mapping,并就此引入李代数。这种方式比起传统的通过“左不变向量场(Left-invariant vector field)“的方式定义李代数更容易为人所接受,也更容易揭示李代数的意义。最后,也有专门的论述把这种新的定义方式和传统方式联系起来。

技术分享

转自水木

除了以下推荐的书以外,出版在Foundations and Trends in Machine Learning上面的survey文章都值得一看。

入门:

Pattern Recognition And Machine Learning

Christopher M. Bishop

Machine Learning : A Probabilistic Perspective

Kevin P. Murphy

The Elements of Statistical Learning : Data Mining, Inference, and Predictio 
n

Trevor Hastie, Robert Tibshirani, Jerome Friedman

Information Theory, Inference and Learning Algorithms

David J. C. MacKay

All of Statistics : A Concise Course in Statistical Inference

Larry Wasserman

优化:

Convex Optimization

Stephen Boyd, Lieven Vandenberghe

Numerical Optimization

Jorge Nocedal, Stephen Wright

Optimization for Machine Learning

Suvrit Sra, Sebastian Nowozin, Stephen J. Wright

核方法:

Kernel Methods for Pattern Analysis

John Shawe-Taylor, Nello Cristianini

Learning with Kernels : Support Vector Machines, Regularization, Optimizatio 
n, and Beyond

Bernhard Schlkopf, Alexander J. Smola

半监督:

Semi-Supervised Learning

Olivier Chapelle

高斯过程:

Gaussian Processes for Machine Learning (Adaptive Computation and Machine Le 
arning)

Carl Edward Rasmussen, Christopher K. I. Williams

概率图模型:

Graphical Models, Exponential Families, and Variational Inference

Martin J Wainwright, Michael I Jordan

Boosting:

Boosting : Foundations and Algorithms

Schapire, Robert E.; Freund, Yoav

贝叶斯:

Statistical Decision Theory and Bayesian Analysis

James O. Berger

The Bayesian Choice : From Decision-Theoretic Foundations to Computational I 
mplementation

Christian P. Robert

Bayesian Nonparametrics

Nils Lid Hjort, Chris Holmes, Peter Müller, Stephen G. Walker

Principles of Uncertainty

Joseph B. Kadane

Decision Theory : Principles and Approaches

Giovanni Parmigiani, Lurdes Inoue

蒙特卡洛:

Monte Carlo Strategies in Scientific Computing

Jun S. Liu

Monte Carlo Statistical Methods

Christian P.Robert, George Casella

信息几何:

Methods of Information Geometry

Shun-Ichi Amari, Hiroshi Nagaoka

Algebraic Geometry and Statistical Learning Theory

Watanabe, Sumio

Differential Geometry and Statistics

M.K. Murray, J.W. Rice

渐进收敛:

Asymptotic Statistics

A. W. van der Vaart

Empirical Processes in M-estimation

Geer, Sara A. van de

不推荐:

Statistical Learning Theory

Vladimir N. Vapnik

Bayesian Data Analysis, Second Edition

Andrew Gelman, John B. Carlin, Hal S. Stern, Donald B. Rubin

Probabilistic Graphical Models : Principles and Techniques

Daphne Koller, Nir Friedman

欢迎补充。

文中提供的PDF下载链接,均来自于网络,如有问题,请站内告知。

 

from: http://suanfazu.com/t/topic/15

以上是关于PRML为何是机器学习的经典书籍中的经典?的主要内容,如果未能解决你的问题,请参考以下文章

开源下载 | 经典著作《机器学习:概率视角》.pdf

机器学习经典书籍

机器学习经典书籍&论文

一折机器学习经典入门书籍(含英文电子版)

机器学习基础经典书籍分享-《计算机科学和机器学习相关代数拓扑学微分学和最优化理论》

机器学习数据挖掘计算机视觉等领域经典书籍推荐