本文由北邮@爱可可-爱生活 老师推荐,阿里云组织翻译。
以下为译文:
机器学习是个跨领域的学科,而且在实际应用中有巨大作用,但是没有一本书能让你成为机器学习的专家。
在这篇文章中,我挑选了10本书,这些书有不同的风格,主题也不尽相同,出版时间也不一样。因此,无论你是新手还是领域专家,一定能找到适合你的。
新手的最佳读物
这本书绝对是初学者非常期待的入门书。这本书条理清晰,学习成本低,因此我把它列为新手的最佳读物。
下面让我们深入讨论一些关于人工智能程序的话题。
人工智能编程范例
如果您想接触最新的人工智能技术,那么Peter Norvig写的人工智能编程范例将非常适合。
这被广泛认为是有史以来最好的编程书籍之一。实际的写作风格很容易遵循。它会引导你在学习的过程中自我发现。而且例子也帮助你用最清晰的方式写出高质量的LISP程序。
请注意,在打开这本书之前,作者默认你应该有编程经验。这并不是说你要成为一个编程方面的专家,但如果你从来没有写代码(或者写的不太好),那么你可能在学习的过程中遇到很多困难。
这本书长达900多页,但它仍然是无可争议学习人工智能这一与机器学习非常相关的主题的最好的资源。
傻瓜机器学习
以前,我一直是讨厌推荐“For dummies”系列的书籍,因为它们都太过简单直白。但是,由于这本书的作者都是经验丰富的数据科学家,我决定破一次例。
即使是零基础,傻瓜机器学习这本书也能让读者快速体验到机器学习的魅力。尽管书中的例子是用python语言写的,但是其实你并不需要了解python的语法。
在本书中,你将了解到机器学习的历史以及机器学习与人工智能的不同。作者为我们详尽地讲解了每一个知识点。
在读本书之前,你只需要一些数学和逻辑方面的基本知识,而并不需要编程的经验。如果你在读这本书前从没接触过算法,可能你会有点痛苦,不过仍然可以做一些互补的研究。
机器学习:新的人工智能
这本书应该是本篇文章中推荐书目中最新的。为什么要把这本书列进来呢?因为这本书着力于用算法处理数据集并且帮助编程者从数据集中学习。
作者 Ethem Alpaydin是领域里知名的学者。他还出版了机器学习导论。 Ethem有丰富的经验,并且他之前的作品也是拔尖的。
Ethem向我们描述了机器学习的演化过程,并且告诉我们如何在实际的应用中使用机器学习的算法。在读这本书之前,你需要有一些编程的经验。当然如果你对机器学习有浓厚的兴趣,这样也是可以的。
由于它是这个书单中最新的一本书,可以确定的是这本书和当前科技行业紧密结合。
人工智能:一种现代的方法
虽然人工智能和机器学习是不同的,但是它们有很多相通之处。编程人员可以从中学到很多。你应该学习如何找到解决机器学习项目中问题的方法。
这本书是一个非常棒的导论,总共有1100多页,并涵盖了许多的技术。
中高级编程人员可能会觉得这本书过于简单。这本书并不是为有经验者而写,而是一本新手的入门书籍。它是你学习人工智能和机器学习基础的一盘开胃菜。
机器学习:用算法让数据说话
Peter Flach写的这本机器学习包含了很多机器学习的实际案例。我认为这本书是为中高级开发人员而写。他们可以用这本书巩固机器学习方面的基础知识,因为这本书比其它书更详细。
用这本书,你将利用机器学习方法来生成,分析和预测统计模型。Peter阐述了自定义垃圾邮件过滤器如何工作,并且解释了为何这种方法现在这么火。
从ROC分析开始,后面的章节中会比之前深一些。
在每个知识点处,这本书都配有图形、图表的说明。机器学习是一个很宽的领域,而Peter通过例子的方式,分解了其中主要的部分。
如果你对大数据和机器学习感兴趣,那么我极力推荐这本书,但是这有一个前提,那就是你有一定的背景知识。
Python 机器学习
在我之前提到的书中,几乎没有限定语言的。而这本Sebastian Raschka的450多页的书将打破这一记录。
对于想学习机器学习的python开发人员来说,这本是最好的导论。
很多人选择python作为工具是因为python语法简单,功能强大,而且 像scikit-learn这样的机器学习类库众多。
这本书详细地讲解了scikit-learn,并引导我们应用它来做数据分析。这本书的作者推崇在编写算法的同时进行可视化。因此,你不仅能学到如何编写算法,还能学会对数据进行可视化。
总的来说,这本书偏重技术,但是也不是专门为python专家写的。如果你对python语言很熟悉,最好还了解scikit-learn,那么这本书一定很适合你。
数据科学从零开始
这是另一本基于python的作品。尽管这本书比大多数书籍简洁,但却对例子进行了详尽的描述。在数据科学这本书中,每一段代码前作者都附上了一段介绍。所以即使是新手也可以很快上手。
尽管这样,我仍然要向中高级Python开发人员推荐这本书。你不必知道机器学习的的方法或者数据分析的过程就能得到你想要的(正如标题中所写的“从零开始”)。
这本书的风格简洁而准确,深度上比python机器学习浅一些。如果你想深入研究机器学习,那么这两个都是不错的选择。
这本书中的编码风格我非常喜欢。每一小片的代码都是基于之前的工作,而且作者都附上了详细的思路和过程。
搭建自己的神经网络
尽管在标题中没有明言,这本书构建神经网络的语言仍然是python。Tariq Rashid 将神经网络作为机器学习过程中的基本组件,而这本书也是深入理解神经网络的最佳选择之一。
这本书是杰出的,但价格却并不昂贵。读这本书之前,你需要有一定的python基础,这样读起来才会比较顺利。
作者希望通过用鲜活的例子来帮读者建立对神经网络的理解。在读这本书前,你并不需要成为专家,但是你要有足够的决心来克服书中较难的章节。
值得庆幸的是作者的写作风格温和且易懂,因此你在阅读过程中不会遇到太多阻碍。神经网络是非常难掌握的,而拥有这本书就足够了!
机器学习原理:预测数据分析
这本书的标题有点拗口,价格在所有书中也偏贵,但这本MIT出版社出版的书确实是一本非常棒的书。
机器学习原理:预测数据分析向我们展示了基于关系和自定义算法的分析和数据选择过程。这包括能从其他相关资源中获取信息的更通用的信息学习。这本书还包含了复杂的基于概率的机器学习方法。
你将学习到让机器学习算法按照你的指示进行数据分析的高级技能。这本书通过例子的方式引导读者,并且驱动读者考虑不同的方式分析数据。
在读这本书之前,你需要足够的编程知识和矩阵知识。我想将这本书推荐给了解机器学习并想更进一步的数据科学家。
模式识别和机器学习
这本书也是为高级数据科学家和高级开发人员准备的。每一章节包含基于数据集中模式的概率和机器学习的话题。
模式识别和机器学习是掌握模式识别的导论。这本书用基本的概念带你从宏观进入到鲜活的实例中。
这本书的写作风格是没的挑的。作者倾向与重复的阐明一个观点。因此尽管这书的内容很难,这仍然是将知识灌进读者脑子的最佳方式。
你需要有深厚的数学功底,甚至数据科学的知识也是非常必要的。这本书很难,但是简洁的书写风格和清晰的例子会让你对模式识别有更深的认识。
这10本书是我精心挑选的,它们涵盖了很宽泛的领域。如果你想更好的理解机器学习或者解决项目中的问题,你需要根据你的实际情况选择最适合你的书,因为它们值得拥有。
对于没有基础的新手来说,我会推荐《傻瓜机器学习》这本书。如果你想着手于python,那么python机器学习是个很好的选择。
这些书都是很棒的。我建议你先理解一门语言,这样就可以从一个真实场景中理解这些概念。
很多书都非常专业,因此很难去广泛的推荐。但是读完本文后,一定会有你想要的。
文章原标题《The Best Machine Learning Books To Go From Novice To Expert》,作者: Alex Turner,译者:爱小乖
文章为简译,更为详细的内容,请查看原文