奇点降临?
残酷肃杀的虎年终于过去,温煦明媚的兔年迎面而来。纽约大年三十的除夕之夜,清冷寂寥,恰是回顾总结的好时机。在未来的岁月长河中,对于 2022 年是否成为人类历史的奇点或许会有争议,但是无人不承认 2022 年是人类历史的拐点!全球范围的瘟疫、俄乌战争、核聚变、AI,这些剧变都会给人类社会带来革命性的影响。
生成模型(AIGC)
2022 年,AIGC 发展日益强大,OpenAI的DALL-E2, Stability AI的Stable Diffusion 生成模型和 ChatGPT 横空出世,再度震慑整个人类,为人类智力提出了强有力的挑战。Stable Diffusion 模型可以根据文字描述直接创作出具有惊人视觉效果的图像,在艺术创业比赛中击败人类艺术家,正在颠覆人类创造艺术的方式。ChatGPT 可以根据上下文,生成可以通过图灵测试的文本,行云流水,妙笔生花,广征博引,恣肆汪洋,令人类写手黯然失色。
笔者倾向于认为 Stabel Diffusion 模型和 ChatGPT 都是基于概率统计的基本原理,从数学角度而言可以用最优传输理论来解释。我们考虑 Stable Diffusion 模型,首先根据深度学习中的流形分布假设,我们将一幅 彩色图像视为 维欧氏空间(图像空间)中的一个点。反之,图像空间中的一个点代表一幅图像,但是绝大多数点都是对于人类无意义的噪声图像。人类感兴趣的图像可以被视为 维图像空间中的点云,靠近某个低维的流形(图像流形),但是在图像流形上点云的密度并不均匀,我们用概率测度 来表示,如此我们将有意义的图像集合用 来表示。流形 嵌入在图像空间 之中,, 的维数远远低于 ,我们可以找到某个拓扑同胚,,将 (或者 中的某个区域)映射到参数空间 中,这里 被称为是隐空间, 被称为是编码映射。编码映射将图像分布 推前映射到隐空间得到 。
在隐空间中,我们可以用热流方法将任意一个分布 变换成高斯分布,其密度依随时间的演化满足经典的热扩散方程,
在固定期望值和方差的限制下,热扩散的解为高斯分布。从物理角度而言,我们可以用郎之万热动力学原理,不停地给样本图像 添加噪音,最后样本变成白噪声图像,如此得到了一个样本依随时间演化的轨道,无数样本的轨道汇集起来,我们就将初始分布 变成了高斯分布 。郎之万动力学方法的好处是不需要知道全局的密度 信息,每个样本独立并行演化,因此传输变换 是非常容易计算的。这种方法的缺陷是逆变换非常难以计算。我们将图像在隐空间的分布 变换到正态分布上,,即复合映射
另一方面,我们将常用的词组、短语和句子几何化,即将词汇用向量表示(word to vector),所有这种语言向量构成了语义空间。同样,所有有意义的自然语言短句构成了语义空间中某个流形 上的概率分布 ,我们用编码映射 和热扩散 将 同样映射到隐空间的正态分布 。如此,我们将建立了从语义分布到图像分布之间的传输映射
这样,用户输入文字描述就可以生成图像。
这里我们可以看到生成模型的本质是将语义信息和图像信息解释成特定流形上的概率分布,从而计算两个分布之间的传输变换,或者更加广泛的,两个分布之间的联合概率分布。传输变换可以用热扩散,也可以用任意的传输变换,热扩散只是方便计算单向的传输。同时热扩散也必然带来模式坍塌和模式混淆。
如果我们考虑 ChatGPT,那么我们需要将所有可能的提问构成输入,根据上下文的回答构成输出,这时我们计算两个语义分布之间的联合概率分布。在当今时代,人类社会将所有可能出现的信息都保留在 Internet 之上,用如此包罗万象、庞大无遗的自然语言数据库训练出来的 ChatGPT 表现了惊人的语言能力。在日常生活工作中,几乎所有的模式化的文章都可以用 ChatGPT 来自动生成,并且其文章质量超乎手写的平均水平。比如,如果我们需要写一封措辞严谨,政治正确,态度谦恭,却又绵里藏针的 email,ChatGPT 写的完胜人类。如果写一篇高屋建瓴、气势如虹、激情澎湃却又抽象空洞的演讲稿,ChatGPT 也是信手拈来。由此可见,目前人类社会中绝大多数的私人信件、模式化公文和商务文章都可以由 ChatGPT 自动完成。很多媒体中的大量文章也可能都是由 ChatGPT 生成。
涌现与相变
基于概率统计的学习模型居然具有如此之高的智能,这是令人非常惊艳。迄今为止,其内在原因依然无法解释。目前常见的观点认为当预训练模型的规模达到一定规模,就会发生所谓的“涌现”现象,从量变到质变,这个系统出现了“相变”,从而 GPT 具有了智能上的飞跃。物理上的伊辛模型用于解释相变现象,伊辛模型描述铁磁性物质的内部的原子自旋状态及其与宏观磁矩的关系。发生相变的系统一般是在分子之间有较强相互作用的系统,当系统温度达到临界值的时候,整个物质会突然失去磁性。伊辛模型广泛应用于整数优化,在 3D 视觉中起到关键作用。目前比较热门的“渗流”理论是伊辛模型的某种推广:我们考察一块海绵,抽象成一个无限大的图(graph),每条边以概率 连通,以概率 断开。我们考察图中是否存在一个无限长的连通分支,如果存在则海绵整体渗水,如果不存在,则海绵整体绝缘。若 为 ,则海绵整体绝缘;若 为 ,则海绵整体渗水。在 从 到 渐变时,海绵整体形状从绝缘到渗水会发生突变,突变时刻对应的 为相变的临界概率。这和一个年轻人学习一门学问的过程比较类似,开始他接触了很多概念和定理,对于这些知识点之间的联系有些模糊的理解。依随学习思考的深入,讨论交流的增加,知识点之间的联系得以加强,突然有一天,这位年轻人醍醐灌顶,融会贯通。婴儿学习语言也是比较类似,牙牙学语的时候记忆了词汇,但是无法理解,讲的话也是词不达意。但是依随频繁使用语言与大人交流,接触文学作品,影视语言节目,词汇之间的搭配日益固定下来,表达的精准度日益提升,终于有一天开始有了自己的特有文采。
但是,物理中的相变也有一些特点目前无法从AI中观察到。例如,如果我们将铁磁体做共形形变,那么铁磁体的临界温度(居里点)并不发生变化。这在渗流理论中也有体现。这对于生成模型的涌现是否有意义,目前无法回答。在凝聚态物理中,纤维丛的陈示性类理论成功地解释了并且预言了拓扑绝缘体中的相变,类似的思想为解释AI中的涌现也提供了思路。笔者相信如何为涌现(相变)建立数学理论将会成为热点问题。
拾人牙慧与独立思考
ChatGPT很多时候表现得伶牙俐齿,左右逢源,但基本上是拾人牙慧,缺乏基本的逻辑推理,更谈不上独立思考。它就像一个儿童,通过模仿来学习,虽然经常机智抢答,但是只有street smartness,而没有wisdom。例如,我们问ChatGPT:“在蓝色盒子中有一个苹果,在蓝色盒子中也有一个红色盒子,红色盒子有个盒盖。如何拿到苹果?”ChatGPT一本正经地回答:“拢共分两步:1. 打开红盒子的盒盖,红盒子在蓝盒子内部;2. 将手探入红盒子内部,取出苹果。虽然过程很简单,但是你要确保拥有取得苹果的许可。”我们看到,ChatGPT缺乏基本的空间推理能力,但是拥有早熟的语言技巧。
如果我们问ChatGPT更加严肃的科学问题,ChatGPT就开始一脸无辜而又无比自信地胡说八道,并且万般狡辩,却又能够自圆其说。例如我们问ChatGPT:“证明一下为什么高斯曲率是内蕴的?”ChatGPT给出貌似严格的推理:“拢共分5步:1. 从高斯曲率定义出发,高斯曲率等于两个主曲率之积;2. 回想一下,曲面上某点的主曲率是该点处法向量变化速率的极大、极小值;3. 法向量的变化速率是曲面的内蕴性质,不依赖曲面参数的选取;4. 因此主曲率是内蕴的,它们之积也是内蕴的;5. 因此,高斯曲率也是内蕴的。”对于没有真正理解微分几何的人来说,ChatGPT的解答滴水不漏,极具欺骗性。微分几何中的内蕴是指由黎曼度量决定的性质,与曲面在三维欧氏空间中的嵌入无关。而法向量由曲面嵌入所决定,因此是外蕴的。这意味着ChatGPT并不真正理解内蕴的涵义。但是,我们再问ChatGPT:“何谓内蕴?”它又给出正确的理解:“数学中的内蕴是指由几何物体本身所决定的性质,与其在更大空间中的嵌入无关。例如,两点间的测地距离是内蕴的,高斯曲率是内蕴的,因为它不依赖曲面的参数化,也与曲面在三维空间的嵌入无关。”这种自相矛盾的回答表明ChatCPT只是鹦鹉学舌般地记住了微分几何,并没有融汇贯通地真正理解。
而成体系的数学理论,其内在的概念和定理之间是通过强逻辑推演彼此联系的,而非基于浅表语言层面,通过弱逻辑的联合概率来推断上下文。ChatGPT虽然在概率统计方向达到了自然语言理解的极至,但是在逻辑推演方面无法和人类匹敌,这必然是AI发展的未来方向。传统AI中的机器定理证明,符号计算等方面其实早已达到了令人叹为观止的程度。例如计算代数的Grobner基方法、吴方法等,这些方法将几何命题转换成代数表示,将命题的条件转换成一个理想,将结论转换成多项式,通过机械计算来判定结论多项式是否在条件理想之中。这种方法的效率和复杂度超过人类一般水平。如果将ChatGPT的自然语言理解和表达能力与符号演算、逻辑推理能力相结合,AI还会进一步超越人类。
对计算机科学的挑战
ChatGPT具有令人恐怖的编程能力。如果命令它用C++编写计算机科学本科高年级的经典算法,例如图形学中的光线跟踪算法,计算几何中的Delaunay三角剖分算法,数值偏微分方程中的有限元方法等,ChatGPT稍加思索就洋洋洒洒地一挥而就,并且程序质量比较可靠。而一般的计算机系学生需要经过几年的学习才能达到类似水平。这是否意味着计算机程序员很快会被AI所取代?
笔者在1990年代接受的计算机科学训练,当时清华大学的训练以严格而著称。计算机程序等于数据结构加算法。我们系统学习了各种经典的数据结构,例如平衡二叉树,哈希表、队列、堆栈和堆,也学习了经典算法,例如图论中的最大流、最小割,深度优先、宽度优先搜索算法。那时非常强调汇编语言的高效性,c语言的指针和内存管理。当时也系统学习了各种代数数值计算方法,物理方程有限元解法。在过去的30年间,计算机领域沧海桑田,地覆天翻,各种语言层出不穷,Java和Python目前大行其道,Go和Rust等新兴语言日新月异,很多知识已经被时代所淘汰。
在寒假期间,笔者为了科研每天依然编程10小时左右。无时不刻不依赖基本的数据结构,例如有序队列、哈希表等,但是却从来没有自己动手写过底层的容器,而是直接用标准模板库(standard template library)。自从我们学了形式语言和编译原理,编译器出现之后,笔者再也没有写过汇编程序。自从Matlab等数值分析程序库成熟以来,笔者也没有写过底层的数值计算算法。但是,由于笔者的研究领域主要是拓扑几何的算法,而表达流形最为有效的数据结构严重依赖于指针,笔者一直用c++编程,Java和python对于计算拓扑和几何并不是得力工具。在寒假中,笔者主要编写3维流形的拓扑算法,动态拓扑结构的复杂性超过日常的空间想象力,几乎所有的精力都耗费在检查指针链接的错误上面。同时,对于最优传输中的强烈非线性蒙日-安培方程,由于没有通用的解法库,并且依赖于动态高维多面体的单纯复形数据结构,笔者只得自己动手编写。这意味着不同的领域需要用到不同的计算机语言和科学工具。计算机工具的发展是渐进积累的,而非彻底颠覆的。基础的知识体系和技能训练依然需要。同时,由于笔者在研究的算法是目前尚未出现的算法,ChatGPT没有学习资料,自然也无从竞争。
从另一个角度来看,计算机科学的发展将人类的理论知识转化为算法,传统的算法和数据结构被底层开发工具封装。后面的开发者不需要理解已经被封装的理论知识,而只需要懂得如何使用即可。例如几乎所有的计算机视觉算法都被OpenCV所囊括,所有的计算几何算法都被CGAL所封装,所有的数值PDE方法都被MatLab所包括,所有的计算代数算法都被Mathematica、Maple所包括。这种人类智慧成果通过工业软件来积累是历史的必然,这强迫每一代的计算机科学家必须站在他那一代的前沿。每一代人需要开发不同的前沿,需要不同的知识体系和技能结构,而前沿在加速拓展。而针对落在前沿之后的传统算法,人类将无法和ChatGPT竞争,因为ChatGPT可以通过Internet和庞大的科技文献进行高效学习,人类将无法望其项背。这意味着AI将人类从庸常肤浅的智力劳动中解放出来,从而使人类可以集中精力于复杂深刻的智力劳动。
对年轻人的忠告
对于正在成长的年轻人而言,如何在AI的巨大冲击下选择未来的专业方向是一个影响深远而又性命攸关的问题。恰如数控机床的出现,淘汰了大量的手工作坊。在过去几十年的IT领域,大量的工作是“重复发明轮子”,AI的发展会大量减少这个层次的工作机会。那么年轻人应该学习什么方向呢?
30年前,笔者求学阶段,IT产业处于刚刚萌芽的原始阶段,周围人的主流观点都强调“接地气”,反对学习“屠龙术”,清华计算机系的教育也极其重视直接动手的工程能力。但是理论组的黄连升等老师坚持让我们花费主要时间学习现代数学。通常,现代数学需要更加抽象的思维,概念理解的难度远超过工程类的课程,一些同班同学因为强烈反对学习当时貌似毫无实用价值的“屠龙术”而转班至其他方向。后来笔者一直在学术领域耕耘,深刻体会到年轻时代学习现代数学的重要性。
丘成桐先生多次教诲大家:“大自然是有内在结构的,人类文明的发展本质上就是认识理解这些自然结构,用数学和物理语言将这些结构表述出来。”而自然中具有根本重要性的结构并不很多,如果在生命中能够发现或者厘清某个结构,那对于人类而言自然是功德无量,这正是基础理论学者终身追求的目标。认识自然是第一步,改造自然更是人类的目的。将自然结构及其规律用算法语言来表达,将数学物理定律“固化”成计算机软件,这正是计算机科学家的终极目标。在过去30年中,如果洞彻喧嚣,我们可以看出整个计算机工业正是沿着这条路径循序渐进地发展。例如,物理学的发展将各种自然物理规律总结成偏微分方程,工业软件就是通过有限元来求解这些偏微分方程,从而帮助人们在力学、热力、电磁、流体等领域的设计,推动机械、汽车、电机、航空等领域的发展。
笔者所从事的领域本质上是从算法角度来研究拓扑和几何结构。笔者在1990年代的大学阶段,代数拓扑和微分几何还没有渗透到计算机科学领域。1990年,陈省身先生访问清华,到笔者所在的课堂上给了一个演讲,那是笔者头一次听说纤维丛示性类和陈类的概念,但是并不真正理解。1993年,笔者学习曲面微分几何,逐步理解高斯-博内定理实际上是曲面切丛的陈类。1996年左右,笔者在波士顿遇到一位音乐方面的朋友,得到了一本代数曲线方面的教程,接触到黎曼-罗赫定理和阿贝尔-雅克比理论,但是不知所云。2000年左右,丘先生教导笔者系统地学习黎曼面理论,逐步认识到阿贝尔-雅克比理论本质上是黎曼面上的全纯线丛的示性类理论,但是只体会到智力上的美学价值,对于其工程上的实际用处严重怀疑。2015年左右,Tom Sederberg教授教授将笔者引荐给Tom Hughes教授,Hughes教授创建了等几何分析(Isogeometric Analysis)领域,需要高质量CAD表示,而这归结为结构化网格生成。2017年,在哥伦比亚大学遇到张首晟教授,向他请教拓扑绝缘体的理论,张教授回答一句话“就是陈类”。2020年左右,笔者和合作者们终于认识到结构化网格等价于某个特定全纯线丛的全局截面,其奇异点等价于示性类,由阿贝尔-雅克比方程所控制。
再如1995年左右,丘先生教授笔者如何用蒙日-安培方程求解Minkowski问题。1997年左右,笔者学习计算几何中的包络算法。2013年左右,笔者遇到汪徐家教授从而了解了蒙日-安培方程和最优传输理论的关系。2013年开始,笔者和合作者用几何变分法给出Alexandrov定理的构造性证明,开发了一系列算法求解最优传输问题。2020年左右,生成模型开始火爆全球,我们将生成模型中的模式坍塌归结为蒙日安培方程的正则性理论。可以预见生成模型会持续发展,目前扩散模型中的热力学扩散并非是本质的,用最优传输取代会带来效率上的提升。
第三个例子,1993年笔者学习微分几何,开始理解几何中最为关键的结构就是黎曼度量,在计算机科学领域中大量的问题本质上都是关于如何挑选一个合适的黎曼度量,但是没有任何算法来通过曲率构造黎曼度量。1998年左右,笔者发现个叫哈密尔顿的教授每个周末都来到哈佛,与丘先生整日整夜地讨论所谓的Ricci流,当时只知道Ricci流是证明庞加莱猜想的关键,但并不理解Ricci流的理论细节。2002年在洛杉矶,刘克峰师兄家中为丘先生贺寿,遇到另一位周师兄,周师兄是Ricci流方面的专家,了解到Ricci流可以通过曲率构造黎曼度量。2003年左右拜访罗峰教授,开始和罗教授将Ricci流理论推广到离散情形。2007年直至2013年,一直发展离散Ricci流算法,但是缺乏存在性、唯一性的理论证明。2013年,离散曲面Ricci流理论证明完成,2018年正式发表于Journal of Differential Geometry。2020年开始通过Hughes教授与工业界合作,2022年Beta-CAE首次用等几何分析方法完成汽车碰撞数值模拟,其CAD模型就是用Ricci流生成。2022年,笔者访问北美工业软件的头部公司,发现公司招募的一些年轻人多次学习了笔者线上课程“计算共形几何”,而在公司中的主要任务就是开发Ricci流相关的软件。迄今为止,黎曼度量结构的唯一构造性算法就是离散Ricci流,刚刚开始渗透到工业界。
通过这些亲身经历,笔者感慨良多。笔者一向认为这些自然结构的存在与人类社会无关,其客观规律迟早会被人类所认识并且利用。例如,工业界所有的几何问题都无法回避黎曼度量结构,因此人们迟早会认识到Ricci流算法的根本重要性。但是,人类社会具有非常现实和世俗的一面,真正深刻的理论被工业界认可依赖于社会环境、技术和商业的发达程度。例如工业软件领域,很多年来一直没有突破性进展,似乎与现代几何拓扑发展绝缘。但是近10年来,由于Tom Hughes发展出的等几何分析方法比有限元方法更具优势,Ansys,Beta-cae,Honda等公司开始力推这种方法进行汽车模拟仿真,由此对CAD建模提出了更高的要求,Ricci流方法开始显现不可替代的重要性,具有数百年历史的Abel-Jacobi理论才最终得以在工业界应用。笔者和工业软件头部公司的技术总管深入交流,发现CAE技术瓶颈不再是偏微分方程的数值解法,而是前端几何网格剖分和样条构造问题,而这些问题不再是传统机械力学、数值偏微分方程的问题,而是涉及到刚刚发展出来的微分几何、代数几何和3-流形拓扑理论。
如果我们问ChatGPT有关计算机编程的工程方面的问题,ChatCPT对答如流;如我们问ChatGPT关于代数拓扑、几何方面的算法,ChatGPT无法给出令人满意的回答。可以预见,AI的发展迫使人类从事更加复杂深刻、更加需要创造性的智力劳动,而这需要更加先进现代的基础理论作为支撑。过去几年,笔者有幸遇到了很多有才华、充满理想主义的年轻人。笔者鼓励他们本科期间多学基础数学和物理,到研究生阶段再根据自己的志趣选择偏学术或者偏实用的方向。
年终小结
2022年笔者继续坚持线上的公开课程“计算共形几何”,也涵盖了“最优传输理论”。因为工业软件的迅猛发展和AI特别是AIGC生成模型的爆火,课程吸引了数万名同学。非常感谢广大同学们的大力支持!课程主要介绍了曲面代数拓扑、微分几何和共形几何的基本概念、定理和计算方法,也给出了代数曲线、黎曼面理论的一些关键定理,基本上是用比较初等的方法证明黎曼-罗赫定理和阿贝尔-雅克比定理。最优传输理论涵盖了经典的Monge-Kantorovich-Brenier理论,凸几何中的Minkowski-Alexandrov理论,流体力学的Benamou-Brenier理论。也解释了单纯复形的dart数据结构,持续同调算法,Hodge分解算法,Ricci流算法,几何变分的最优传输算法等等。今年笔者计划坚持开课,或许加一些三维流形拓扑算法,纤维丛示性类算法。
这篇文章的封面插图由OpenAI的DALL-E2生成,笔者输入的提示是:“AI正在产生人类历史的奇点。”DALL-E2生成了一张正在破碎的人类少女的脸,而少女的食指指着一张正在生长的机器人的脸。AI生成的图像的确非常切题而传神,传神到直接描绘了人类被取代的恐惧。这令笔者感到了DALL-E2的挑衅意味。
最后,笔者需要证明这篇博文的确是由人类完成,而非由ChatGPT所炮制。于是笔者询问ChatGPT:“如何证明一篇文章是由人类写就,而非你所完成?”ChatGPT热情地建议到:“你可以包括一些语法错误,人类经常犯,而AI语言模型通常不会。”这又让笔者感到了ChatCPT隐隐的嘲讽。不爽之余,笔者觉得最好还是包括一句ChatGPT的语料训练库中还没有包括的2022网络流行语:对所有的人类读者说一声“栓Q”!
请长按下方二维码,选择 “识别图中二维码”,即可关注。
【老顾谈几何】邀请国内国际著名纯粹数学家,应用数学家,理论物理学家和计算机科学家,讲授现代拓扑和几何的理论,算法和应用。