lit
这里只有文学作品。为自学AI实践者准备的书籍。
这是我在数据科学家职业生涯中发现有用的技术书籍精选集。我主要是自学成才,不过我有心理学、语言学和实验科学的正式背景。我的职业生涯主要围绕NLP(特别是语音),并涉足ML、AI和工程领域的其他方向。
这些书籍按主题排序;每个标题下的书籍大致按照从入门/综合到技术/专业的顺序排列,一些"巨著"列在最后。
我无法保证所有这些书都是以合法方式获得的。
祝你玩得开心 😉
但是等等,camoverride,我完全是新手,甚至不知道从哪里开始!阅读这个以了解更多关于如何开始你的旅程的详细信息。
人工智能
NLTK书
对自然语言处理领域所有主要主题的快速全面概览。这本书非常注重代码,主要依赖原生Python和同名的_NLTK_库,实际上主要作为学习库使用。你应该阅读这本书,一方面是因为它简单实用,另一方面是因为NLP领域的_每个人_似乎都在某个时候读过它。
语音与语言处理
这是自然语言处理的圣经 - 它涵盖了每个主要主题,并对所有主题进行了深入探讨。写得很好,非常新。这本书注重形式和数学,采用学术风格的伪代码,章节中没有Python。如果你能完全理解这本书,你就能胜任NLP世界的任何工作。
深度学习书
深度学习的圣经 - 它广泛涵盖了深度学习的所有主要主题,并对每个主题都有深入探讨。正式、数学化和学术化 - 有些地方这本书难以理解,而其他地方则读起来像一部好小说。如果你想将你的深度学习知识提升到下一个层次,你需要阅读这本书。另外:读它是因为其他人都读过它。
从零到深度学习
这本书非常注重实践:很少有正式的数学但有大量的代码示例。这本书的目的_不是_给读者全面的深度学习知识;相反,它是为了给工程师提供概念框架和工具(keras、tensorflow等),以快速开始解决实际问题。这本书的作者抄袭了我创建的一个ML应用,所以我不觉得把他的书放到网上有什么愧疚。
统计学习要素
对机器学习(包括深度学习)的强大、数学化概述。大多数AI从业者在某个时候都会遇到的一本书。
人工智能:现代方法
人工智能的圣经:你在AI领域遇到的所有背景思想、理论和争论都会在这里呈现。这本书可能感觉有点过时,因为其中介绍的一些技术已经不再使用,但了解该领域的历史与成为理论家或黑客同样重要。
数据科学
机器学习实战
对数据科学实践的扎实介绍。代码和理论的良好结合。这本书涵盖了入门级数据科学家应该熟悉的所有基础知识:描述性统计、建模、数据可视化、深度学习等。重点放在_sklearn_和_tensorflow_上。这是我读的第一本"数据科学家"书籍,足以让我在这个行业找到工作。
SQL手册
链接 又一本厚重的O'Reilley教材。我用它学习SQL基础知识,现在还时不时翻阅来解答问题,但我发现SQL Zoo网站对于入门和上手SQL更有帮助,所以我建议先从那里开始,然后再转向这本书。
计算机科学
《编码》
如果你像我一样是自学成才,你可能在掌握了编程/工程的有用部分的同时,对基础知识却知之甚少。然而,你可能和我一样,心里总有疑问:"这些东西到底是如何运作的"——这本书会让你焦虑的心平静下来。从电力和电路的基础知识开始,这本书慢慢地、仔细地讲解了基本硬件部件、逻辑门和汇编语言,最后你终于会明白代码是如何__真正__工作的。
《算法图解》
这是一本浅显易懂的计算机算法和分析入门书。本书涵盖了你在本科计算机科学算法课程中会遇到的所有基本问题:大O表示法、旅行商问题、动态规划、链表等。如果你完全不了解"算法"(软件工程面试中的概念),这里是最好的起点。另外:前一本书《编码》带我们从电力走到了编程语言,但在介绍任何算法之前就结束了。
《破解编码面试》
这本书是为软件工程师准备可怕的算法面试而推荐的标准教材。它由一位谷歌招聘经理撰写,包含实用的面试建议和算法技巧。现在可能有更好的书籍出现,但尽管是用_Java_写的,它仍然很有价值。另外,你应该读一读,因为其他人都在读。这本书比《算法图解》更高级。
《算法导论》
这是计算机科学算法的圣经。内容全面,充满令人生畏的方程式,厚得塞不进背包——如果你能背下这本书,就保证能在你选择的FAANG公司获得软件工程师的工作……话虽如此,我只参考了这本书的部分内容,这似乎也是它通常的用法:每个人都遇到过这个庞然大物,但只有真正勇敢的人才能从头到尾读完……
《计算机程序的构造和解释》
这是一本全面、广泛、堪称圣经的计算机科学领域概述。所有"老前辈"都读过的书。虽然有些过时(代码是用_Lisp_写的),但值得浏览一遍。
编程
《笨办法学Python》
这本书采用"把婴儿扔进游泳池"的教学方法:你看代码,了解它如何工作,然后学习。简单、直接,是完全初学者的好起点。这是我读的第一本编程书(我用的是Python 2版本),但我最近又翻开了它,发现Python 3版本(就是这本)仍然很棒。
《Effective Python》
这是一本非常扎实的Python中级教材。当你掌握了语言基础并完成了一些小项目,但觉得准备好学习专业人士真正的做法时,这是一本值得阅读的好书。除了介绍你可能在入门教材中没有遇到的概念外,它还强调了__不应该__做什么。
《JavaScript权威指南》
我主要是Python开发者,但偶尔也会涉足JS。这是一本相当标准的O'Reilly书籍,对了解这门语言很有帮助。当我用JavaScript编写时,我仍然会用Python的思维方式思考,然后翻译成JS,但有这样一本参考书来了解事情_应该_如何写是很有用的。
《精通Python正则表达式》
链接 虽然有点具体,但正则表达式很有用,你不应该忽视它们。你可以坐下来,阅读这样一本简短的书,然后就能完全掌握它们。在我的职业生涯中,曾有一段时期每天都在使用正则表达式。
操作系统
诗人的Unix
所有打算使用命令行的人都应该阅读这篇简短的专著——即使是有经验的用户也能学到新东西。这些简短的俳句让你能够释放Unix终端的潜力,做一些很酷的事情。虽然重点是自然语言处理,但你会在其他地方找到用途。这是我在苹果公司工作时,Siri团队中一位天才的资深计算机科学家推荐的。
Linux是如何工作的
如果你刚开始探索命令行世界(窥探图形用户界面之下的内容),并对所看到的感到害怕,这本书将为你揭开神秘面纱。书中有很多关于shell、文件系统以及探索Linux时遇到的其他内容的详细信息——这里的大部分知识也适用于MacOS环境。
数学/统计
用Python做数学
从编程的角度重新介绍数学的有趣读物。这本书没有涉及超级高级或令人惊讶的概念(都只是高中数学),但如果你习惯于将数学和编程视为两个完全不同的领域,这本书是一个很好的现实检验。
数理统计导论
这是一本优秀的数理统计基础入门书。虽然这是一本数学书,但其中的问题和证明既有说服力又实用,阅读起来很愉快。一本类似但稍逊一筹的书是数理统计与数据分析,我也决定在这里提及。
机器学习的数学基础
如果你已经开始了人工智能职业生涯,但对自己的数学知识还有些疑虑,这本书将填补你知识中的所有空白。书名说明了一切:它全面涵盖了理解机器学习并建立信心所需的所有数学知识。
信息论基础
信息论在企业界中不常被讨论,但它与你会遇到的"标准套件"数学技术有许多相似之处。对于想要真正全面了解人工智能背景的人来说,信息论值得深入研究。
理解数字信号处理
与信息论类似,数字信号处理是另一个人工智能从业者会提取工具和想法(如傅里叶分析)但通常不会深入研究的数学领域——如果你想深入研究,这就是适合你的书!
普林斯顿数学指南
除了线性代数、信息论和数字信号处理,数学中还有很多其他内容。这本厚重的书非常全面——读完它,你就能与数学家进行真正的对话,而不会觉得晕头转向。
网络
Flask Web开发
如果你使用Python并想开始进行Web开发,这是一个很好的起点。Flask在Python世界中无处不在,如果你想做有趣的项目,你应该熟悉它。这本书注重实践,不涉及理论。如果你从未听说过HTML,这本书可能有点太高级了,但如果你已经制作过静态网站并想更上一层楼,就从这里开始吧。
互联网路由架构
链接 这是一本深入详尽地讲解互联网工作原理的书,阅读起来可能会让人感到吃力。与Flask那本书不同,这本书主要讲理论,对你作为一名AI从业者的工作可能不会特别相关。但是,如果你想增强自信,想要真正理解互联网的运作方式,这本书是一个很好的资源。