揭开数学的面纱

这是一篇关于数学的入门文章,也是一篇数学学习的回忆录与反思录。

缘起

从我的教育背景说起,本科光电子专业,研究生光学工程,中途上了计算机视觉的车;作为一名工科生出身,以及在后面做职业规划时给自己工程师的定位,从始至终,我都没想过我会如此认真地对待数学这门学科,并且对他的喜爱是日渐加深,那种感觉,就像是找到一个值得托付的人。回过头来,到底是什么东西指引我进入数学这个偌大的王国,又是什么让我在里边流连忘返,以及作为一个普通的学生,在这个历程中有什么值得分享的内容有和有趣的经历,都是值得谈一谈的,因此,我把这一路的所见所想所得用文字的形式记录下来。

一扇门

一个偶然的机会,我上了研究生,开始了一段科研旅程,让科学有机会在我的体内播下一颗种子;又是一个偶然的机会,我在美丽的长城脚下,雁栖湖畔(这里是对美好生活的回忆)有幸认识了一位研究方向为计算机视觉的师兄,由于兴趣相投,成为了朋友,再加上身边有数学系的朋友,暂且叫他们指路人,为我指了一扇门;

一片沃土

后来自己开始写论文,写程序解决物理问题,慢慢发现了解微分方程挺好玩的;后来进入CV领域,学习了机器学习,神经网络,又再次重新学习了线性代数,概率论,微积分,这次学习跟本科的感受竟如此不同,本科为了考试,绩点,学习是枯燥的,犯困的,仓促的,无用的,这次不一样了,这次学习是为了解决问题,变成了主动学习,还能通过编程解决问题,可视化结果,之后遇到问题,再自己动手去寻找答案,学习的过程变成了一个闭环,通过这个过程既提高了自己的综合能力,又极大地提升了学习的兴趣;又是一个偶然的机会,我做了几个项目,在解决工程问题的同时,又学到了很多数学知识;整个系统到目前稳定的运行着;

门启

至此,信号系统,傅里叶变换,卷积,相关,最优化,线性代数,矩阵分解,支持向量机,卷积神经网络,语言模型,这些曾经打过交道的朋友,开始其齐向我走来打招呼,但我竟不知道如何给他们排位就座,实在是有点尴尬。我不由得产生这样的疑问,这些东西长得是如此的不同,他们之间到底有什么联系,我应该怎么去把学过的知识串起来,下次再照面的时候,不管他换了哪种打扮,我都能一眼认出他来。就在这个时候,我想起了那扇门,于是我毅然决然地推开了它。

当我们在谈论数学的时候,我们在谈论什么?

耳边回响着的关于数学的声音

  • 数学老师敲着黑板说道,同学们,要学会数形结合
  • 数学好的人物理一定好
  • 数学是科学之母
  • 大国的崛起,离不开基础科学的发展,我们要搞好数学的基础教育建设
  • 华为的任总说退休以后想去学数学
  • 杨振宁,杨老理论物理做的如此出色是因为群论学得棒

以上声音,基本可以得出这样的结论:数学是基础的,是重要的,是有实用价值的,数学的内容有代数,几何等东西;

什么是数学

有人说,数学是从一堆公理出发,一路进行各种证明与计算,得出一些结论,玩的是逻辑游戏; 也有人持形式主义观点,数学不过是符号游戏,符号代表什么不重要; 还有人说,数学是思维构造的产物,是一种直觉,是感性的东西;

我的观点

真正的数学是一门抽象的学科,当然是不容易学的,抽象是一种结果,抽象的过程是我们比较关心的,我们都是从具像的事物出发,通过我们人类特有的归纳总结能力,一步步抽象出事物的本质,形成概念,而且抽象这个过程呈现出一个演进的趋势,不是一蹴而就的,当我们有了很多抽象的观点以后,我们还有推理的能力,我们会进一步将抽象进行内延和外扩,实现对更本质的东西的寻找和与其他抽象概念联系起来,似乎这就是一个归纳与演绎的过程,整个系统形成闭环,里边到处都是历代数学家们的智慧和遗产,充满了活力。

道理我都懂,可是我还是什么都不会

听完以上的声音之后,感觉数学更难,更抽象了,是的,之前我也是这么认为的,我也进入过这个陷阱,我们实际上读完大学已经接触了很多的数学知识,知识都是碎片式的,涉及到方方面面的知识,不同专业,也学习相关的知识,有物理的,通信的,电子的,计算机的,金融的,实际上我们也知道这些学科与数学都是息息相关的;不管你是哪个专业,你都可以将数学看做你的学科的工具,通过你的领域知识,能加深你对数学的理解,如果你有跨学科的背景,你对数学的需求会越多,自然你的理解也会更深刻,往往数学界很多成果的出现是为了解决现实中遇到的难题,因此,学数学,一定不能和现实割裂,用数学模型去打造现实生活中的模型,数学建模,是一个很重要的思想,本科要是对数学感兴趣,不可错过数学建模竞赛。如何找到一个工具,一键将我们的技能树都点亮,他就像胶水一样把我们脑海中已经存在的那些分散地数学知识,数学直觉给粘合在一起,是我要讨论的问题,也是数学能带给我们的财富。

借我 借我一双慧眼吧

雾里看花 水中望月 你能分辩 这变幻莫测的世界?答案是数学。

数学的内容

纯数学 应用数学
分析 统计学、密码学
代数 信息论、机器学习
几何 数值分析、优化
拓扑 博弈论、控制论,等

这里只看纯数学部分,分析、代数、几何、拓扑这几大内容的分类不是正交的,且分类的方法不唯一,每个内容之间是有重叠的,内容之间的结合又会产生新的内容,比如,当分析和线性代数走在一起,产生了泛函分析和调和分析;当分析和群论走在一 起,我们就有了李群和李代数 ,表格的每一个内容,以及内容之间结合形成的新的内容,每一个地方都值得花毕生的心血去研究。 有了这么一个语义模型之后,数学开始变得有那么一点有迹可循了,比如,我们在讨论极限,导数,积分这些概念的时候,甚至是速度,加速度这些物理概念,你也会清楚他们指的是运动轨迹的一阶导和二阶导,你会很自然的将这些概念套进我们的语义模型,你知道我们是在“分析”这个语义下讨论数学问题,这样会带来一个好处就是,用一套工具去解决大多数问题,而且你可以使用这个语义下的的相关知识去理解你的问题本身,这本身是一次抽象的过程。

来一场数学的时光旅行

有了语义模型之后,我以“代数”这个语义为例,回顾从小学到大学的学习生涯,来一次时间旅行,看看我们到底学到了什么数学知识。

小学课堂

学习的是算术,主要是自然数,正分数的四则运算,并通过计数和度量创造相应的应用题进行巩固。

中学课堂

学习的是初等代数,代数的英文为Algebra,源自拉丁文,“Algebra”的本意是还原和对消,引申为方程术。因此初等代数的中心内容是方程,方程理论有一元一次方程向着两个方向进行扩展:一方面是增加元数,研究由几个多远方程组成的方程组,另一方面就是增加元的次数,对二次,甚至三次方程进行研究。

大学课堂

进入大学课堂后,分为两个群体,非数学专业的理工科和数学专业科班,理工科开始学习高等代数,包括由多元一次方程组发展来的线性代数,进而研究向量空间线性变换等内容;由一、二次方程发展而来的多项式理论研究一个变量的任意次方程,当然,学的都很基础。数学专业可能会进入抽象代数的学习,所谓抽象体现在两个方面,他的对象是抽象的,之前研究的是数,或者是向量,在抽象代数里已经不关心对象了,什么对象都可以,关注点放在了代数结构上,这个结构和之前的代数运算已经不一样了,之前可能是数域的四则运算,亦或是向量的加法和数乘,这里的代数结构用公理化的形式去定义,形成了公理化的代数系统,公理化定义是对之前的代数运算的一次抽象,抽象代数没有给出具体的运算,只是通过一些公理去定义运算的规则,只要运算满足所有公理即可,至此完成了对象和运算规则的抽象,你可以通过建立不同的运算规则形成不同的代数结构,目前为止,数学家们已经研究了超过200种代数结构,其中常见的如群,环,域,线性空间,其中最基础的是群(Group)——它只有一种符合结合率的可逆运算,通常叫“乘法”。如果,这种运算也符合交换率,那么就叫阿贝尔群 (Abelian Group);如果有两种运算,一种叫加法,满足交换率和结合率,一种叫乘法,满足结合率,它们之间满足分配率,这种丰富一点的结构叫做环(Ring);如果环上的乘法满足交换率,就叫可交换环(Commutative Ring);如果,一个环的加法和乘法具有了所有的良好性质,那么就成为一个域(Field);基于域,我们可以建立一种新的结构,能进行加法和数乘,就构成了线性代数(Linear algebra)。 到现在,可以说代数是一门用字母去参与运算的学科,字母的含义在变,从数字,到向量,到矩阵,到张量,甚至一切对象,运算也在变,从四则运算到只有规则的抽象的运算,至此,你可能才慢慢体会到为什么说数学是一门抽象的学科,抽象的意义是什么,抽象的所带来的力量是强大的,从抽象代数出发,通过几条简简单单的规则,你发现你能到达你之前代数学习过程中到过的任何地方,怪不得数学大佬常挂在嘴边的一句话是:数学是简洁的,简洁是美丽的。数学之美体现在它的简洁之美。

最后一舞

结束了一趟关于代数的长途旅程之后,来到我们的最后一站,除了代数,还有分析、几何,以及拓扑,有没有一个东西能让我们让这些语义联系在一起,我们知道语义是由词汇组成的,比语义的粒度更小的东西是词汇,我们要去寻找能描述分析、代数、几何、拓扑的词汇,幸好我们找到了,那就是集合论,通过集合论的学习,让数学的几个主要内容有了共同的语言。集合论里边的:集合函数关系,是一些最基础的概念,对他们有深刻的理解能为学习其他分支内容打下坚实的基础。

让我们回到之前提到的代数部分,我们用集合的语言再好好地阐述一番,代数=集合+代数结构,,这里的集合由任意个元素组成,它具有无序性,唯一性,确定性,代数结构指代一些运算规则,在这里做一些扩展,我们把“代数结构”这四个字换成“关系”,关系在集合的定义为:集合A上的一个关系定义为笛卡尔积AXAgray的一个子集C,所以,关系也是个集合,它的元素为有序数对,集合+关系,形成了空间,不同的关系对应着不同的空间。

度量空间

如果对于集合的元素,定义任何两个元素之间有距离,那么这个集合就是度量空间。这个距离的具体定义是:距离是一个实函数,其自变量就是集合中的任意两个元素,这个实函数定义的时候并不给出具体公式,而是给出实函数满足的3个性质,即非负性、三角不等式、两个元素相等的时候,距离为0。

线性赋范空间

如果这个关系为:集合每个元素能取范数这个运算,并且是一个线性空间,那么这个集合描述的就是线性赋范空间,线性赋范空间首先是线性空间,一提到线性空间,马上明白这是一个定义了加法和数乘的集合;范数的定义为:集合中每个元素所对应的实函数。它具有非负性、齐次性以及满足三角不等式。 这里要说明一下,这些实函数,即距离,范数,我们并没有给出具体定义公式,而是给出需要满足的性质,只要满足给定的性质即可,这与之前提到的抽象代数的运算抽象原则是相同的。

拓扑空间

当我们给出距离定义应该满足的性质以后,我们突然脑洞打开,原来极限的概念,不仅仅限于微积分中的极限的概念了,完全可以自由定义两个元素之间的距离,极限是按照定义的距离计算,函数列的收敛也可以按照定义的距离计算收敛性,在微积分学习中的极限的概念都是自变量是实数,因变量也是实数,极限是当自变量趋于某一个值时,函数值趋于某一个值,也就是计算简单的两个实数差,例如\(\lim _{n \rightarrow \infty} x_{n}=x\) ,实质就是\(n \rightarrow \infty,\left|x_{n}-x\right| \rightarrow 0\) ,也就意味着原来的距离是实数的差,现在有了度量空间的距离概念以后,元素就不仅仅是实数,可以为任何一个抽象的目标,那么\(x_{n}\)\(x\)相减就可能没有任何意义,但是定义了距离以后 \(\rho\left(x_{n}, x\right)\)\(x_{n}\)\(x\)之间的距离就代替了原来的相减,概念的外延扩大了。也就是定义了度量空间的距离以后,将原来微积分的极限的概念推广到了任意集合中元素之间的关系上去了。同样,我们在欧氏空间可以任意定义距离,改变传统极限的概念。

现在来谈谈拓扑空间。我们知道度量空间的开集是有了距离的定义后才有的概念,没有距离的概念,就没有极限点的概念,没有环境的概念,没有内点的概念,因此也就没有开集的概念,而有了开集的概念以后,才有闭集,致密集,紧集等等概念,同时开集也可以看作环境。因此开集的概念很重要,其实根据定义的距离收敛,也可以看作依据环境的收敛。这个很重要,因为定义距离条件太苛刻了,它要满足三角不等式,而且是非负实函数。在有的情况下,不定义距离是否可以一样有类似度量空间的一些类似性质呢?这就出现了拓扑空间,上面的讨论可以看出,开集是非常重要的,于是我们给定一个集合,在这个集合里面指定一些子集是开集,那么这个集合里面的元素就有关系了,之前已经指出,元素有关系的集合就是空间,因此我们将一个集合,并在这个集合里面指定一些子集为开集,组成一个集族(元素为集合的集合),而且集族满足3个性质,就是空集和平凡子集在集族中,任意子集的并集与交集都在这个集族中。如果一个集合加上满足上面3条性质的集族,那么这个集合就可以称为拓扑空间了。于是集族中的开集,也就是环境就可以定义依据拓扑的点集收敛问题,于是也有一系列的拓扑空间的闭集,致密集,紧集等等概念。现在一个问题来了,就是拓扑空间的开集到底怎么来的?这个问题是想怎么来就怎么来,只要得到一个满足那三条性质的集族即可,因此当然可以使用距离定义开集,也可以使用一个以集合中元素定义的实函数来定义开集,也可以采用枚举的方法定义开集。这样一来,拓扑空间的抽象层次就更高了。

更进一步,我们把“代数结构“换成”数学结构“,集合+数学结构,你说这就是数学的全部内容,也是有很多人同意的,这里就引出了关于数学是什么的另一种观点,也是我喜欢的观点,布尔巴基学派的结构主义观点,一言以蔽之,结构主义认为,数学就是研究抽象结构及其之间关系的学科。 在数学中,一个集合上的结构,由附加在该集合上的数学对象所组成,它们使得这个集合更容易操作或赋予它们特殊的意义。 常见的结构包括测度,代数结构,拓扑,度量结构(几何),序,和等价关系等。 一个集合可以同时拥有好几种结构,可使得研究的内容更加丰富。

实数集拥有的数学结构:

  • 序:任意两个数都可以比较大小,即全序;
  • 代数结构:乘法和加法使其成为一个域;
  • 测度:实直线间的区间有长度;
  • 几何:他有一个度量,并且是平直的;
  • 拓扑:数和另一个数有远近关系;

结构与结构产生关联:

  • 序和度量分别导出它的拓扑
  • 序和代数结构使它成为有序域
  • 代数结构和拓扑使它成为李群(一种拓扑群)

最后从实用主义的角度解读一下结构主义,由于集合自身的特点,集合元素自身只是一个符号,元素之间并没有什么区别,当我们加上一些数学结构之后,元素之间产生了关系,我们就能获得一些我们想要的性质,也能更好地去模拟一个系统,所谓系统,泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体,这不正是集合+数学结构的定义吗?

one more thing

我不是数学科班出身,对数学的认识和理解不会那么深,文中出现的一些概念、名词可能不是那么严谨,它们在文中首要服务于文章流畅性,易读性,因为这不是一篇数学论文,它只是一篇读物。关于计算机视觉会用到大量的数学知识,这也是我学数学的一大原因,我想长期从事在这个行业中,数学的海洋太宽太深,人的精力都是有限的,在学习的时候还是要找好动机,确定好学习目标,找到数学的应用场景。

名词解释

空间=集合+关系,为什么叫空间,可以这样理解,缺失了关系的集合,元素是没办法运动的,元素之间是孤岛,反之,关系让元素运动起来,空间正好是描述运动的载体。

推荐阅读

  • 林达华的博客——解说数学体系
  • YouTube——map of mathematics
  • 芒克里斯《拓扑学》