前言

现在,终于不再为考试而重视对数学的学习和钻研了—是不是乐观太早了?

机器学习的兴起,人工智能时代的到来,让数学显得更加重要了,无论是对于普通的工程技术人员,还是对于大众而言。

在机器学习或人工智能领域中,有各种算法、模型,犹如武侠们的各类功夫,江湖中的大侠往往以深厚的内功驱动某种招式,比如九阴真经、吸星大法、小无相功。那么,机器学习的“内功”是什么呢?答案不是吐纳运气之法,而是—数学。

那么“数学内功”需要修炼到什么程度才能研习机器学习呢?

以我的经验,研习机器学习所需要的最低数学基础,相当于大学理工科的高等数学(以下简称高数)内容。“早就还给老师了”——不少人如此感慨,也因此对机器学习望而却步。实则不然,只要当初正常地修完了所有大学数学课程(不妨以通过考试为标准),“高数内功”就已经被老师传授给你了,在有生之年是无法自行去除的。只不过,由于种种原因,它没有被激发出来罢了。

本书就是要帮助读者将已经潜伏在大脑里的高数“内功”激发出来——注意,不是重新“灌输”一遍。所以,本书所介绍的数学内容不是高数的翻版,而是默认读者已经将一些最基本的高数知识内化了。我只是根据个人经验,遴选与机器学习有关的内容,唤醒读者大脑中沉睡已久的“数学潜意识”,引导读者大胆地进入机器学习领域。

按照这样的目的,我对本书内容做了如下安排:

● 不将微积分的有关内容作为独立章节,因为这些内容在高数中是重点,所以相信读者已经对其有了基本的了解。但为了方便读者,在本书的附录和在线资料中,分别提供了有关微积分的基本知识。

● 以机器学习的直接需要为标准,选择基本的数学内容,从工程应用的角度予以介绍。一般的数学教材因聚焦于严谨的数学内容而忽略了工程应用,而一般的机器学习书籍又缺乏相关的数学基础介绍—甚至有不少不合“数学之理”的地方,学习者看后仅“知其然”,但“不知其所以然”,甚至感到“茫然”。本书旨在帮助读者通过工程实践,打通数学基本概念和机器学习之间的通道。所以,在数学知识之后,读者会看到它们是如何在机器学习中应用的。

● 书中省略了一些严格的数学证明,这是本书不同于数学教材的重要特征,但这并不意味着数学证明不重要。如果读者对有关数学证明感兴趣,可以参阅本书提供的在线资料。

再次强调,不要将本书当作数学教材,本书不会面面俱到地介绍高数内容。

常规数学教材的结构,一般是先介绍概念、定理及其证明,然后讲解例题,以及适量的习题,书的最后会附上习题的参考答案。本书则不然。当阅读的时候,你会感觉本书更像一个有数学经验的人介绍他自己的心得体会。因此,本书不会侧重于“解题”技能的训练,书中也会演示一些手工计算,但这么做的目的是帮助读者理解某些概念,更复杂的计算都会用编程语言实现——本书采用Python语言,但书中并不会介绍这种语言的使用方法,请读者自行解决编程语言问题(可参考“跟老齐学Python”系列图书)。

如果不进行拣选,那么针对机器学习的数学内容,不是一本书能够完全涵盖的,即使能,那也将是一本超级厚的书,不仅会增加读者的经济负担,而且会让很多人半途而废。但考虑到不同读者有不同的需要,因此会在本书的在线资料中发布补充内容,包括但不限于:

● 某些定理、结论的证明

● 机器学习原理的数学推导

● 微积分有关内容(供不熟悉微积分的读者参考)

● 本书勘误和增、删内容

● 其他补充资料

当阅读本书正文的时候,读者可能会感觉“不很数学”,或者“很不数学”,这其实也是我所希望的,就如同前面所说,要将读者头脑中早已潜伏的“数学”激发起来,如果书中内容“很数学”,阅读起来就容易昏昏欲睡,适得其反。肯定有读者要看“很数学”的内容,为了满足这部分读者的需要,在本书的在线资料中已有专门提供。

在编写本书的过程中,因知识浅薄、头脑愚钝,错误或不足难免,我深恐谬误流传,所以,恳请读者在阅读发现谬误时不吝赐教,不胜感激。

邀请您关注我的微信公众号:老齐教室,前面提到的在线资料会发布到这个微信公众号。

在本书编写过程中,我得到了很多人帮助。我的妻子帮助我翻译了不少国外资料,西交利物浦大学的Derek博士是本书很多内容的第一位读者。感谢本书的编辑,审核那些无聊又不容出错的公式要比编辑或修改文字更痛苦。

最后,要郑重声明,本书内容,有的是个人理解和体会,有的借鉴了其他研究者的成果,在一般情况下我会说明所借鉴的资料来源。如果碰巧原创者看到了我所借鉴的内容且没有说明来源,请通过上述微信公众号联系我,在本书再印刷(希望能再印刷)的时候会进行修改,并在本书在线资料中予以说明。

如果本书能在某种程度上激活潜伏于读者大脑中已久的数学知识,那么请感谢你的大学老师和你的学习与实践,是这些过往的经历播下了智慧的种子;如果看完本书依然处于数学的懵懂之中,则建议利用本书在线资料。

齐伟

2021年5月