编辑:David
【新智元导读】新的一年到了,小伙伴是不是总觉得时间太少,要学的东西太多?今天这篇荐书贴挑选了8本机器学习经典教程,由浅入深,从理论到实践,大部分可免费下载,一起来充电吧!新的一年,是不是感觉时间太少,要学的东西太多了?
在过去的几年里,有不少讲深度学习的书籍。今天给小伙伴们推荐8本关于AI和机器学习的经典书籍,大部分都有完整版PDF下载。
这8本书从内容上看,可以分为四类:
机器和深度学习基础知识(适合初学者)
机器学习框架:Pytorch、Tensorflow和Keras
MLOP:云、生产和深度学习工程
深度学习理论
机器学习和深度学习基础AndriyBurkov:TheHundred-PageMachineLearningBook
如果你是新手,看这本书就很适合。如果是老手,可能会觉得这本书很无聊,讲的都是你已经知道的东西。
前两章重点介绍机器学习公式、符号和关键术语。随后,Burkov分析了最重要的ML算法,如回归、决策树、支持向量机和k-最近邻。
第4章是关于梯度下降和学习过程的,第5章是最佳实践的集合;即特征工程、正则化、超参数调整等。第6章专门介绍神经网络。
之后,Burkov讨论了如何使用上述方法解决特定问题。书中解释了常见的机器学习挑战、陷阱以及有针对性的解决方案。最后讲到了无监督、自监督和推荐系统等内容。
PDF:
这本书非常适合喜欢通过直观视觉学习深度学习的人。
总的来说,我们发现这本书很容易理解,因为书中的图和文本之间处于很好的平衡。上一本100多页的书相比,这本书涉及的数学更少,插图更多。
但是,这本书让编程人员可能不大方便。这本书讲的是理论的基本部分,但把代码留给读者去尝试。由于这本书的介绍比较笼统,理论和编程实践之间可能会有差距。
相关资源:
机器学习框架:Pytorch、Tensorflow、KerasEliStevens,LucaAntiga,andThomasViehmann:DeepLearningwithPyTorch
无论你处于什么阶段,要学习Pytorch大概都少不了这本书。本书分为3个部分。
第5、6章涵盖了使用简单神经网络(如反向传播)学习过程的所有基础知识,重点是讲如何在Pytorch中的动手写代码。
第2部分讲的是面向现实问题的模型,包括从3D图像数据中检测癌症和肺结节等。这部分内容会引导读者完成整个设计和思考过程。作为机器学习建模人员,读者可以掌握需要遵循的所有必要步骤。
虽然我在这里有点偏见,但我喜欢这本书的这一部分,老实说,我认为这里介绍的方法可以转移到解决新问题上。
第3部分介绍了从Pytorch导出的模型,包括执行推理或移动设备所需的步骤。对于想要学习如何优化训练后模型,并在硬件资源有限的嵌入式设备中使用的工程师来说,这部分内容会很有帮助。
PDF:
FrançoisChollet:DeepLearningwithPython(2ndEdition)这本书基于Keras框架讲述深度学习。本书的第2版包含大量新增内容,强烈建议阅读第二版。
前4章为新手基础知识,如张量运算、反向传播、基本的Keras模块,以及聚类和回归问题。
第5章分析了优化和泛化之间的权衡以及它与训练数据的关系。这一章节解释了为什么训练后的模型会通过逼近其数据的潜在流形实现泛化,并可以通过插值对新的输入做出高质量的预测。
第6章教你如何处理一个新的机器学习项目,包括设定切合实际的目标、收集数据、打破良好的基线和部署。第7章说明了如何更好地理解KerasAPI和回调。
第8章和第9章通过利用卷积神经网络进行图像分类和图像分割,全面概述了计算机视觉中的深度学习。第10章侧重于使用循环神经网络处理时间序列,第11章介绍了用于处理文本数据的Transformer架构。
第12章提出了各种生成模型来生成新的文本、图像。作者对生成对抗网络(GAN)、变分自动编码器(VAE)以及对潜在空间的解释和观点很有意思。
最后,本书涵盖了现实世界的高级概念,例如超参数调整、模型集成、混合精度训练、多GPU或多TPU训练等。
PDF:
;id=1czfFQr2qWRBVGmrYyg_jzv0Q_-eJl5ip
LaurenceMoroney:AIandMachineLearningforCoders:AProgrammer'sGuidetoArtificialIntelligence如果你正在找有关Tensorflow的完整教程,这本书可能是最佳选择。LaurenceMoroney是Google的首席AI倡导者,在Tensorflow及其相关库方面拥有丰富的经验。
本书分为两部分。第一部分关于研究机器学习应用、如何利用Tensorflow来开发这些应用。包括计算机视觉、自然语言处理、时间序列分析和序列模型。在这部分可以学习如下内容:
如何使用Tensorflow构建CNN和RNN;如何处理文本、图像和时间序列数据;如何利用Tensorflow数据集进行数据处理和探索。
第二部分是在实际应用中使用这些模型。读者将熟悉移动或Web应用程序上的模型部署。主要内容包括:
如何使用TensorflowLite在Android或iOS中嵌入模型;如何利用;什么是Tensorflow服务、如何部署模型等。
这本书非常实用,有很多代码段和漂亮的可视化效果。
PDF:
MLOP:云、生产和深度学习工程SergiosKaragianakos:Deeplearninginproduction本书采用动手实践的方法来学习MLOps。这本书的前提是,读者从一个深度学习模型开始,努力构建一个可扩展的Web应用程序。书中包含大量代码段和可视化效果,对于软件背景有限的机器学习研究人员和数据科学家来说,本书是个不错的资源。
书中各章节涉及机器学习生命周期的不同阶段。在讨论了设计阶段之后,读者将熟悉如何编写可维护的深度学习代码(如OOP、单元测试和调试)的最佳实践。第5章是关于构建高效的数据管道,第6章涉及云中的模型训练以及各种分布式训练技术。
接着,本书讨论服务和部署技术,同时强调Flask、uWSGI、Nginx和Docker等工具。最后两章探讨了MLOP。
更具体地说,是讨论如何使用Kubernetes扩展深度学习应用程序,如何使用TensorflowExted构建端到端pipeline,以及如何利用谷歌云和VertexAI。
相关资源:
AndriyBurkov:Machinelearningengineering这是本文推荐的Burkov的第二本书。作者在书中如何构建机器学习应用程序的设计模式和最佳实践方面建立了联系。
与前一本书类似,每一章都侧重于ML生命周期的一个单独阶段。从设计阶段开始描述了ML项目的挑战和优先级,然后讲到数据处理和特征工程,书中包括了常用行业术语的清晰解释,以及相应解决方案的常见陷阱。
训练和评估阶段分为三章,分析了如何使用正则化、超参数调节等技术提高模型的精度。还讲了关于处理分布偏移、模型校准、a/b测试等问题。最后两章则讨论了部署策略、模型服务和维护。
PDF:
;id=1P0h-3e5Po-gIO-eb8dtYdyHkmzlDGLCS
深度学习理论IanGoodfellow,YoshuaBengio,AaronCourville:DeepLearning
最后,深度学习理论部分只有这一本书(花书)。
为什么?因为如果你开始一页一页地阅读这本书,你不太可能读完。
这本书更像是一本手册,可以对深度学习从数学的角度进行更深入的理解,获得更可靠的信息。
本书介绍了深度学习理论的广泛主题,建立了坚实的数学背景。书中涵盖的数学领域包括线性代数、概率论、信息论和数值计算。
最后,本书中还讲了不少有见地的理论观点,如线性因子模型、自动编码器、表示学习、结构化概率模型、蒙特卡罗方法、分区函数、近似推理和深度生成模型等。
PDF:
参考资料:
免责声明:本文章如果文章侵权,请联系我们处理,本站仅提供信息存储空间服务如因作品内容、版权和其他问题请于本站联系