书评

书评:深度学习速成课:人工智能的实践、项目式入门

mm

深度学习速成课:人工智能的实践、项目式入门 由Giovanni Volpe、Benjamin Midtvedt、Jesús Pineda、Henrik Klein Moberg、Harshith Bachimanchi、Joana B. Pereira和Carlo Manzo共同撰写,他们是一群来自物理、机器学习和应用人工智能研究领域的研究人员和教育者。

在开始讨论这本书的内容之前,我想先做一个个人性的坦白,因为这影响了我对这本书的体验。这是我第一次阅读No Starch Press的书,在开始阅读之前,我真的不知道该期待什么。尽管我经营着一个大型的以人工智能为重点的网站,但我也是一个糟糕的编码者,按照现代人工智能的标准。 tôi理解HTML、CSS、JavaScript和PHP的基础知识,但当谈到Python时,我的技能处于中等水平。这在这里很重要,因为Python是这本书中使用的语言,并在几乎每个项目中扮演着核心角色。

我发现的不是沮丧,而是更有价值的东西。这本书是耐心的,没有过于简单;深入的,没有让人感到不知所措;而且在实践中,这本书做到了很少有的人工智能书籍才能做到的。它不假设你已经精通机器学习的文化、术语或工作流程。相反,它通过解释和实践相结合的方式,逐章逐步建立信心。

第一印象设定了基调

这是一本相当厚的书,超过600页,它有效地利用了这块空间。其中一个让我立即注意到的细节是,作者们决定在第一稿完成后,将整个代码库从TensorFlow切换到PyTorch。这不是一个小的改变,尤其是对于这样一本大书来说。这表明了一个重要的信号:这本书不是停留在时间中的,也不是为了完成某些任务而写的。这本书的设计是为了保持相关性,并与当前深度学习的实际实践保持一致。

从一开始,基调就是实用和脚踏实地的。这本书没有以抽象的哲学或密集的数学开头。它从构建模型、运行实验和理解代码的作用和原因开始。这种方法产生了巨大的差异,尤其是对于那些理解概念但苦于将其转化为可行实现的读者来说。

通过构建来学习,而不是死记硬背

《深度学习速成课》的最强之处在于其项目式结构。这本书不是让你读了几个小时然后可能尝试做点什么。你一直在构建东西。每个主要概念都与一个具体的项目相关,这些项目的复杂度会随着你的理解而增长。

你从使用PyTorch从头开始构建和训练你的第一个神经网络开始。这些早期的章节介绍了神经网络的核心思想,包括层、权重、激活函数、损失函数和优化。重要的是,这些思想不是被当作抽象的数学问题来处理的。它们被介绍为解决特定问题的工具,你直接在结果中看到每个设计选择的影响。

作为一个不每天写Python代码的人,我很感谢作者们如何仔细地引导读者通过代码。你永远不会被要求神奇地理解发生了什么。解释是详细的,但仍然易于阅读,并且它们专注于直觉和正确性一样。

捕捉模式和理解数据

一旦基础知识就位,这本书就转向了捕捉数据中的趋势和模式。这是密集神经网络被应用于更现实的任务的地方,例如回归和分类问题。你学习如何模型泛化、如何失败以及如何诊断这些失败。

这个部分默默地教会了一些最重要的现实世界技能。在验证、过拟合、欠拟合和性能评估等主题被自然地通过实验而不是理论介绍。 你学习如何解释学习曲线、如何调整超参数以及如何推理模型行为,而不是盲目地相信输出。

对于那些只通过API或预构建工具与人工智能交互的读者来说,这个部分的价值远超这本书的价格。

使用神经网络处理图像

这本书中最吸引人的部分之一专注于图像处理计算机视觉。这是卷积神经网络发挥作用的地方。与其把CNN当作神秘的黑盒子,这本书将其分解为可理解的组件。

你学习什么是卷积、为什么池化层很重要以及特征提取如何跨层工作。更重要的是,你将这些想法应用于真实的图像数据集。项目包括图像分类、转换和创意视觉实验,例如风格转换和DeepDream风格的效果。

这个部分从书中的插图中受益。视觉解释伴随着代码,使得将模型的数学运作与其视觉输出联系起来变得更加容易。对于视觉学习者来说,这部分书尤其令人满意。

从压缩到生成

这本书然后扩展到自编码器和编码器-解码器架构,包括U-Nets。这些模型引入了维度减少、潜在表示和结构化输出生成的想法。你看到模型如何学习复杂数据的紧凑表示,以及如何使用这些表示来执行诸如去噪和分割等任务。

从那里,范围扩大到生成模型。这包括生成对抗网络扩散模型,它们构成了许多现代生成人工智能系统的骨干。这些章节并没有回避训练生成模型的挑战。稳定性、收敛问题和评估都被公开讨论。

我最欣赏的是,这本书没有过度吹捧这些模型。它展示了它们的力量和局限性,这在一个经常被炒作的领域中是令人耳目一新的。

序列、语言和注意力

这本书的另一个主要优势是它如何处理序列数据和语言。循环神经网络被引入作为一个垫脚石,帮助读者理解模型如何处理时间序列和有序输入。

从那里,这本书转向了注意力机制和变换器架构。这些章节为理解现代语言模型提供了坚实的概念基础,而不需要你已经精通该领域。解释集中于为什么注意力很重要、如何改变学习动态以及如何使模型扩大规模。

对于试图在更深层次上理解今天的AI系统如何工作的读者来说,这个部分连接了很多点。

图、决策和从交互中学习

后面的章节探讨了图神经网络,它们用于模拟关系数据,其中连接与个别值一样重要。这包括与科学数据、网络和结构系统相关的例子。

这本书还介绍了主动学习和深度强化学习,其中模型通过与环境交互和做出决定来学习。这些部分超越了静态数据集,进入了动态系统,展示了学习如何根据反馈和结果适应。

到本书结束时,读者已经接触到了深度学习系统的整个生命周期,从数据摄取到决策代理。

超越本书的实用技能

在整本书中,强调了实用的习惯。你学习如何结构实验、调试模型、可视化结果和批判性地思考性能。这些是最重要的技能,一旦你超越了教程,进入了真正的应用程序。

包含的笔记本和数据集使得实验、修改项目和探索想法变得容易。这本书的灵活性使其不仅是一次性的读物,也是一份长期的参考指南。

这本书适合谁

这本书非常适合程序员、工程师、研究人员和技术上好奇的专业人士,他们希望通过构建来理解深度学习。你不需要成为一个专家Python开发者来开始,也不需要高级数学背景来取得进展。你需要的只是好奇心和认真地完成项目的意愿。

它也非常适合作为参考指南,这正是我计划如何使用这本书的。作为一个越来越专注于vibe编码和高层系统设计的人,而不是从头到尾执行每一行代码,我把这本书看作是我会定期回顾的东西,以加深我对概念的理解。解释、图表和架构分解使得理解模型如何构建、为什么选择某些方法以及存在什么样的权衡变得可能。在这种意义上,这本书不仅成功地作为一步一步的课程,也作为读者理解现代人工智能系统如何在更高层次上工作的长期伴侣,用于实验、原型设计或推理。

最终想法

深度学习速成课е 超出了我的预期。它不仅解释了深度学习,还使其感觉可及和可实现。到最后,我对阅读、修改和编写基于PyTorch的模型的舒适度远远高于开始时。

这本书奖励努力。它尊重读者的智慧,而不假设专家知识,并且它提供了我在人工智能教育中遇到的最实用的学习体验。对于任何认真地希望从人工智能观察者转变为人工智能构建者的读者来说,这本书是一个强烈的推荐。

安托万是一位具有远见的领导者和Unite.AI的联合创始人,他对塑造和推广人工智能和机器人技术的未来充满热情。作为一位连续创业者,他相信人工智能将对社会产生电力的影响一样的颠覆性影响,并经常被发现对颠覆性技术和通用人工智能的潜力大肆赞扬。

作为一位未来学家,他致力于探索这些创新将如何塑造我们的世界。另外,他还是Securities.io的创始人,这是一个专注于投资尖端技术的平台,这些技术正在重新定义未来并重塑整个行业。