hnshhshjq 2019-10-27
全文共3046字,预计学习时长6分钟
有很长一段时间,没有人想阅读和AI有关的书,整个领域的研究如同一潭死水。但之后,AI领域涌现一批重大突破成果:图像识别、自动驾驶汽车、阿尔法围棋(Alpha Go)。似乎在一夜之间,AI不一样了。
那些早在八九十年代就诞生的算法,在超级计算机和大数据的助力下,终于散发出了它们该有的光辉。
如今,研究者争分夺秒地出版成果,来填满大家的书架。在过去的一年里,他们以手指能承受的最大速度拼命敲击键盘,以期用一本绝妙的书在亟需投喂的深度学习市场中打败同行。
现在,让我们一览这些书籍,比较优劣,看看哪些对于学习AI,或者说进一步理解这门艺术有最大的帮助。
“合适的才是最好的”。对AI学习也是如此——需要合理的、适量的理论学习和实际操作。
写这些是想强调,你需要遵循自己的学习风格,知道什么是最适合的学习方法。如果你喜欢书中出现一页又一页的详细理论,那么请直接把这篇文章当作反面教材。
但如果你是喜欢理论联系实践,那这就是你想要的书单。
1. 《深度学习》(Deep Learning)
推荐的第一本书是Ian Goodfellow所著的《深度学习》(Deep Learning)。没有哪个盘点深度学习的书单能够绕开这本书,毕竟它是Google Brain和OpenAI上的杰出研究成果。已经有一部分人将其视为指导深度学习的圣经,因为它是现存唯一囊括几十年研究成果的巨著。
尽管如此,除非你有坚实的数学基础,我并不建议你从这本书开始学习,因为它只会打击到你。
里面不仅有连篇累牍的方程式,它的编排方式和教材也相差无几,相当枯燥。即使你不得不佩服Goodfellow的智商,以及他能在一本书里塞进这么多知识的能力,但并不意味着这是一本多么吸引人的书。
道理很简单:懂得一门知识并不意味着能教会别人。我推测很多想选深度学习课程的学生手里一开始都会有这本书。
然后他们的理想抱负就被这本书劝退了。
如果你想掌握深度学习,那么在多年的学习之后这本书才可能适合你,世界上不会有比它更全面的书了,里面涵盖了相当丰富的领域知识。但如果你刚开始,或者只是AI领域里的菜鸟程序员,这本内容翔实的书只能让你望尘莫及而已。
2. 《动手学习Scikit-Learn和Tensorflow 软件》(Hands-On Machine Learning with Scikit-Learn and Tensorflow)
下面介绍新鲜出炉的《动手学习Scikit-Learn和Tensorflow 软件》(Hands-On Learning with Scikit-Learn and Tensorflow)。虽然这本书的方程式也不少,但可读性还是很高。事实上,这本书怎么看都很棒,怎么推荐它都不为过。其中的数学不好怎么学AI系列文章是重头戏,尤其是第五章“用卷积神经网络(CNNs)进行图像识别”,和第七章“处理自然语言”。作者Aurélien Géron能通俗易懂地解释很多复杂的问题,这也是我一直在追求的风格。
在我看来,这本书完美结合了详尽的实例和日常可用的代码。我在Safari浏览器上阅读过早期的网页版底稿,即使有很多部分还未完成,并且网页会把一部分方程式变成乱码,这些都并不能影响我愉快的阅读体验,同时我的认知水平也得到了提升。
而最终发表的版本也对原稿加以润色。像所有优秀的改写一样,成书在整体性方面做出了极大的提升。书中的想法和实例都有了更简洁和更贴切的表达,作者也以更清晰的思路串联起了不同的主题,而行文风格既做到了易于理解以便实验,也兼顾了深度,会让读者每次的阅读都有不同的收获。或许在首次阅读的时候,读者会跳过大多数方程式,然后在之后的阅读学习中会更好地理解它们。
3. 《使用Python进行深度学习》(Deep Learning with Python)
三号选手是由Keras创始人Francois Chollet所著的《使用Python进行深度学习》(Deep Learning with Python)这本书距离上市还得有一段时间,所以务必马上预订一本。我在曼宁出版社(Manning Press)的预览计划(MEAP,亦称为曼宁早期访问)中阅读了本书的前三章。只读了这些就向你们强推这本书可能为时过早,但是我并没有把它放进候补名单里,这本书就有这么好。
正如Chollet能巧妙地在Keras里简化复杂概念一样,本书的内容同样易读且引人入胜。它甚至使AI和深度学习中最具挑战性的部分变得易于理解。在看这本书之前,张量(tensors)到底是个什么东西我一点概念都没有。但Chollet能够指点迷津,帮我看清了张量的本质:承载数字的容器(buckets)。如你所料,本书也收录了很多相当棒的例证,考虑到Chollet的GitHub充满了GitHub上种类最全的AI代码。
可以预见,这本书在出版前会越写越好。你可以订购这本书来支持作者,或者尽你所能在MEAP里得到它。你甚至可以向他本人反馈想法,以真正的开源风格改进这本书!
4. 《深度学习实践》(Deep Learning: A Practitioner’s Approach)
《深度学习实践》(Deep Learning: A Practitioner’s Approach)是名单上的第四位选手。这本书重点关注DL4J java框架。虽然很多AI研究都是在Python中完成的,但随着越来越多的企业接受机器学习,未来的很多工作可能会转向通过java完成。Java仍然是大公司的首选,它的优点明显,可移植、可反复使用,并且还有一大批接受过传统训练的程序员,他们比任何人都了解java。
我有幸在此书即将出版前阅读过终稿,内容精妙绝伦。很明显,这是第一本写给学生的关于深度学习的书。如果你已经有了一些背景知识,并且只想探索java上的DL,最好直接跳到示例部分。但如果你对DL的了解几乎为零,却在java语言上有坚实的基础,这就是一本你可以从头读到尾的书。书中第四章“深度学习的主要架构”非常精彩。它为学习的关键架构做了一个详尽的汇总,这对解决当前的实际问题有极大帮助。
尽管我不是一个程序员,但我已经和一些朋友分享了这本书,因为他们和这个语言息息相关并且十分热爱java。我发现作为介绍DL的书籍,本书的示例和整体结构都非常完美,预计它将在夏末出版。
5. 《Tensorflow机器学习指南》(TensorFlow Machine Learning Cookbook)
最后介绍的是《Tensorflow机器学习指南》(TensorFlow Machine Learning Cookbook)
本书在排版和代码上有一点小问题,但总的来说,它在自然语言处理等各个不同主题上提供了许多不错的范例。
换句话说,我不会考虑单独购买这本书。
像其他学习指南一样,它把许多更深层次的解释工作留给了别的书,本书几乎只关注代码。如果你还不了解卷积神经网络的来龙去脉,那么理解书中一笔带过的概念将会很困难。如果你在阅读过同类型书籍,并且亲身试验过里面的范例之后想要购买这本书,它对做额外的实践和练习是很有帮助的,就是别用它来铺路。
留言 点赞 关注
我们一起分享AI学习与发展的干货
如需转载,请后台留言,遵守转载规范