图书前言

Preface

前言

笔者不才,在“鸢尾花数学不难”系列之前还著有“鸢尾花机器学习”系列,两个系列同属“鸢尾花书”学习框架。

“机器学习”系列全套7本,致力于提供面向“准人工智能时代”的有趣、有料、有益的“数学 + 编程 + 可视化 + 机器学习”的学习生态。这套书全系列已经出版,受到了广大读者的肯定,这反而让笔者战战兢兢、如履薄冰。

为什么创作“数学不难”系列?

既然有了“机器学习”系列,为什么还要另开炉灶?

简单来说,五年前,从在GitHub开源“机器学习”系列的第一本书稿开始,虽然笔者已经尽量拉低视角,但仍然有很多“零基础”读者陆续反馈“机器学习”系列的数学部分“太难” (当然也有高手反馈太简单)。此外,很多读者反馈“机器学习”系列7本书体系庞大,从数学到机器学习,最容易遇到的障碍就是数学基础概念部分。

而“数学不难”就是关注零基础读者学习感受的新作品。“数学不难”每个分册尽量把基础概念掰开揉碎,讲得清清楚楚,全力提高可学性。

“数学不难”不仅是“机器学习”系列学习数学基础的伙伴,更承担了帮助不同阶段学习者夯实数学基础的刚需使命:

适用于中学生夯实信息学竞赛的数学基础。

“数学 + 编程 + 可视化”帮助本科生领会数学之美,同时学以致用。

毕业后回炉再造,串联知识网络,加深理解,构建更扎实的数学思维。

为考研备考数学提供清晰的思路,更轻松地掌握数学工具,减轻学习负担。

帮助编程学习者、算法研究者理解编程背后的数学原理。

让文科生也能一网打尽编程与数学核心知识,减少焦虑,跨界无忧。

AIGC全程伴读

AI的高速发展,已经让大语言模型 (DeepSeek、ChatGPT等) 成为学习的良师益友。大语言模型作为工具,正在以前所未有的速度渗透到各个领域,从文本生成、代码编写到科学研究和金融分析,它的触角几乎无处不在。教育方面,大语言模型可以组织知识,构建个性化学习路径,还可以提供实时解答、可视化复杂概念,并增强学习的互动性。

AI伴读已经是教育的趋势,有着巨大的现实意义。

“数学不难”也尝试让大语言模型成为教学生态的一部分,并试图引导读者将AI伴读这种学习方式深入到读者未来的学习模式中。

“数学不难”系列不同于“机器学习”系列

“机器学习”系列把“编程 + 可视化 + 数学 + 机器学习”这几个关键元素融会贯通,其学习终点是机器学习;而“数学不难”则强调数学概念的透彻理解,并将数学作为工具应用起来,其学习起点和终点都是数学。

“机器学习”系列是一套宏大的机器学习体系;“数学不难”则聚焦数学板块 (线性代数、高等数学、概率统计),“轻巧并专注”。

在数学难度上,“数学不难”更适合零基础读者,更简单,更基础,在基础数学知识网络上更全面。

“机器学习”系列特别强调“可视化编程”中的“编程能力”;“数学不难”中的“编程 + 可视化”仅仅是拆解并实施数学概念的手段,而不是目的。

“数学不难”相对“机器学习”系列,即便是相同的知识点,因为需要解决的问题不一样,所以内容也全部重写,绝大部分图片重新创作,可视化方案更为简洁。

学过“机器学习”系列的读者,如果感觉毫无障碍,则无须阅读“数学不难”;如果感觉层峦叠嶂,可以通过“数学不难”扫清障碍后再学习“机器学习”系列,相信一定会豁然开朗。

先学“数学不难”打好基础的读者,如果有需要,可以进一步学习“数学大系”,迈向机器学习算法、应用——这才是数学 + 编程所产生的生产力之所在。

AI时代,数学不是没用而是变得更重要了

AI工具的盛行,让很多工作变得简单高效。我们需要思考一个问题:如果AI能干这么多事情,未来我们的职业竞争力来自哪里?

一个现实场景:一家企业优化了60%的程序员,留下的主要是架构师和算法工程师。过去,他们带领团队协作完成开发工作,而现在,他们与AI并肩协作,高效完成任务。

数学,是理解世界的基础,是解决问题的重要工具,是驱动类似DeepSeek、ChatGPT等炙手可热的大语言模型运行的底层逻辑。面对日益智能的大语言模型,我们不仅要学会使用它们,更要具备足够的数学素养,以理解其原理、识别其局限,避免被“忽悠”或误导。

有了DeepSeek、ChatGPT,也不需要大家死记硬背定理公式!

理解,而不是死记硬背。只有掌握扎实的数学基础,我们才能与这些智能工具“平等”对话,充分发挥其潜力,提高工作、学习的效率。在这个智能化时代,数学不再只是学科知识,而是每个人都应具备的核心竞争力。

把“为数学而数学”留给“天才”;让“普通人”平等地、高效地理解、使用数学工具箱中的常用工具,是“数学不难”的追求。

对于“普通人”,不管是理工科,还是文科,学好线性代数 (外加矩阵论的一部分知识)、高等数学 (单变量、多变量微积分,外加优化方法)、概率统计 (一元、多元),应付大部分的数学应用场景就足够了。

总而言之,基础数学知识“理解力”是决定职业天花板高度的决定性指标之一。

编程不是目的,编程是工具,是手段

在人工智能快速发展的今天,编程早已不仅仅是程序员的技能,而是成为每个人都应掌握的“第二语言”。和掌握一门外语一样,编程已经成为“必修课”!就像英语曾是全球化时代的通行证一样,编程正在成为数据时代的重要工具。

在“数学不难”中,学习编程的目的,并不是让所有人都成为“码农”,而是为了更高效地解决实际问题,让数学、科学、工程、金融等领域的理论真正落地,转化为可执行的方案。即便使用 DeepSeek、ChatGPT等工具来生成代码,你仍然需要清楚地提出需求,理解代码的功能,知道如何修改和优化,并掌握部署方法。

AI工具的确提高了编程效率,但也对编程能力提出了更高的要求,要求使用者具备逻辑思维、问题分析和代码调试的能力。

“数学不难”也试图帮助大家入门、提升编程能力,解决具体问题。

解决方案:编程 + 数学

笔者认为,边学数学,边用Python编程计算验证,是“普通人”学习数学、学习编程的高效方案。

编程让数学工具落地,缩短理论到实践的距离;数学赋予编程逻辑与深度,拓展技术的边界。

数学提供了严谨的逻辑思维和强大的计算能力,而Python等编程语言则让这些数学工具得以快速实现。

特别是在自学过程中,“边学数学,边用Python计算”是一种高效的方法,它不仅帮助大家加深对数学概念的理解,还能培养实践能力,让知识不再停留在纸面上,而是成为可以被验证、应用的工具。

最优解:编程 + 数学 + 可视化

可视化是鸢尾花书“机器学习”系列的利器!可视化当然也是“数学不难”的看家法宝!

数学不仅仅是一系列符号和公式,更是对世界规律的抽象表达。

真实物质世界是几何世界。人类是视觉学习者,复杂概念应该通过可视化呈现,使学习过程更直观、易懂。笔者认为,最好的学习方式,莫过于将抽象的数学概念可视化,让每个公式都能在脑海中形成直观的几何画面。

“数学不难”给每一个话题,配备大量优质平面可视化方案,以及可视化视频。“ 编程 + 数学 + 可视化”这种学习方式不仅能大幅降低理解难度,更能让知识在大脑中留下深刻的印象,真正做到“过目不忘”。

相比于死记硬背,数学可视化让我们从直觉上掌握核心概念,从而更轻松地运用数学工具解决实际问题。掌握这种学习方法,就意味着你不仅在学数学,更是在训练思维,让每个公式都成为解决问题的有力武器。

感谢

特别感谢同学们、读者朋友们的信任!“机器学习”系列开源、出版得到了很多同学的大力支持。很多同学留言、发邮件告诉笔者,他们把“机器学习”系列从头到尾翻了很多遍,配套代码也都跑了不止一遍,而且收获满满。很多同学还提出批评意见。在笔者眼里,这些互动比任何“奖项”都更加珍贵。它们不仅证明了这套书的价值,更是推动笔者不断更新内容、优化可视化方案、打磨细节的最大动力。

特别感谢清华大学出版社的栾大成老师一路陪伴。毫不夸张地说,没有栾大成老师,就没有鸢尾花书“机器学习”系列,也不会有“数学不难”!这几年,笔者几乎每天都要和栾大成老师“聊上几句”,聊天话题不限于创意、结构、内容、排版、校对、印刷、图书周边、生活工作琐事 …… 

“数学不难”创作团队又增加了一位新伙伴—崔影 (崔崔)!崔崔拥有哈工大、加拿大McMaster大学双硕士学位,是我多年的好友,和我一样特别热爱数学可视化。从编程、调试、敲定素材,到剪片、后期处理,“数学不难”配套的视频都是由崔崔担纲完成整个制作流程。

Acknowledgement

致谢

To my parents.

谨以此书献给我的母亲父亲

How to Use the Book

使用本书

“数学不难”有哪些创作特点?

读者看不懂,是作者的问题。全媒体直接连线作者:请大家告诉我哪里看不懂,我来改!

不预设门槛,不做筛选。特别关注零基础读者的学习体验,假设读者什么都不知道。

以提高兴趣,满足好奇心,产生内驱力为目标。

学以致用,以用为主,用数学工具解决具体问题。

铺垫式、启发式学习法。把知识连成网络,在不同位置,从不同角度强化同一概念的理解。

不贪多,不求全,讲透知识才周全。

创新,创造,观念引导,而不死记硬背,不刷题,不拼解题技巧。把死记硬背留给大语言模型。

赏心悦目,数学一定要美。践行“数学 + 艺术”,用《可视之美》的图像水准挖掘“简单”数学概念背后的几何直觉。

“数学不难”提供更丰富、更精彩的可视化方案,放飞你的想象力。用图像解释每一个公式、每一个定理,图像细节丰满,但每个细节都服务于知识点,确保过目不忘。

把数学打扮成人见人爱的样子,公式尽量少,讲解口语化。

“数学不难”每节提供习题,提供一个可扩展的学习框架。提供更高效、不容易忘记的学习路径。结合大语言模型 (DeepSeek\ChatGPT等) 的学习体验,使读者有引导地自主学习,习题中用DeepSeek \ ChatGPT学习拓展知识点。

免费开源!保持“机器学习”系列的优良传统。PDF书稿、Python代码和视频全部免费开源。

“数学不难”适合哪些读者? 

觉得抽象数学符号很枯燥,但是对几何图形敏感的人。

觉得数学“好玩儿”,数学“很美”的读者。

想开窍,提高好奇心,提升求知欲,提升空间想象力的人。

不仅仅满足于“题海战术、解题技巧”的读者。

再捡起来数学。如果你放弃数学,或被告知放弃数学,不妨试试“数学不难”!

数学底子好的读者,可以关注“数学不难”的美学体验。

想把“数学、编程、可视化”三者结合起来的读者。

想知道数学有什么用、数学怎么用的读者。

学编程,但又漫无目的的读者。

配套资源

“数学不难”提供的配套资源有以下几个:

PDF稿件,方便移动终端学习;

Python代码文件 (Jupyter Notebooks);

有趣有料的中英双语 Manim 数学动画,培养空间想象力与几何直觉,同时提升科技英语水平,为阅读英文学术资料奠定基础。

本系列丛书的PDF书稿、Python代码文件下载地址为:

https://github.com/Visualize-ML

Python代码文件会不定期修改,请大家注意更新。图书配套的PDF书稿也上传到这个GitHub账户。因此,建议大家注册GitHub账户,给书稿文件夹标星 (star) 或分支克隆 (fork)。

也可以扫码下载(更新慢):

想专门学习Python编程的读者,建议在DeepSeek/ChatGPT等工具帮助下,学习《编程不难》。书稿、配套Python代码下载地址为:

https://github.com/Visualize-ML/Book1_Python-For-Beginners

想提升可视化编程的读者,建议在DeepSeek/ChatGPT等工具帮助下,学习《可视之美》。书稿、配套Python代码下载地址为:

https://github.com/Visualize-ML/Book2_Beauty-of-Data-Visualization

想学机器学习算法的读者,建议在DeepSeek/ChatGPT等工具帮助下,学习《数据有道》《机器学习》。书稿、配套Python代码下载地址为:

https://github.com/Visualize-ML/Book6_First-Course-in-Data-Science

https://github.com/Visualize-ML/Book7_Visualizations-for-Machine-Learning

想巩固机器学习的数学基础,建议在DeepSeek/ChatGPT等工具帮助下,学习《数学要素》《矩阵力量》《统计至简》。书稿、配套Python代码下载地址为:

https://github.com/Visualize-ML/Book3_Elements-of-Mathematics

https://github.com/Visualize-ML/Book4_Power-of-Matrix

https://github.com/Visualize-ML/Book5_Essentials-of-Probability-and-Statistics

实践平台

本书作者编写代码时采用的IDE (integrated development environment) 是Spyder,目的是给大家提供简洁的Python代码文件。

但是,建议大家采用JupyterLab或Jupyter Notebook作为本系列丛书配套学习工具。

简单来说,Jupyter集“浏览器 + 编程 + 文档 + 绘图 + 多媒体 + 发布”众多功能于一身,非常适合探究式学习。

运行Jupyter无需IDE,只需要浏览器。Jupyter容易分块执行代码。Jupyter支持inline打印结果,直接将结果图片打印在分块代码下方。Jupyter还支持很多其他语言,比如R和Julia。

使用markdown文档编辑功能,可以在编程的同时写笔记,不需要额外创建文档。Jupyter中插入图片和视频链接都很方便。此外,还可以插入Latex公式。对于长文档,可以用边栏目录查找特定内容。

Jupyter发布功能很友好,方便打印成HTML、PDF等格式文件。

JupyterLab、Spyder、PyCharm等常用工具都集成在Anaconda中,大家可以下载安装Anaconda。下载Anaconda的地址为:

https://www.anaconda.com/

有关安装Anaconda、使用JupyterLab,请大家参考《编程不难》前三章,下载地址为

https://github.com/Visualize-ML/Book1_Python-For-Beginners

正文视频扫码约定

视频分两种:数学动画和视频讲解。

如下图形式的二维码是数学动画:

如下图形式的二维码是视频讲解:

意见建议

欢迎大家对本系列丛书提意见和建议,丛书专属邮箱地址为:

jiang.visualize.ml@gmail.com

一直以来,“鸢尾花书”都延续着一个传统:对于提出了关键意见和宝贵建议的读者,我们会准备一些周边小礼物 (鸢尾花伞、登顶包、单肩背 ……),聊表心意。