
在数学领域,我们通常优先考虑那些平滑且连续的函数,它们的行为可以通过初等微积分的工具被清晰地描述。然而,这种对行为良好曲线的关注,却忽略了一个广阔而迷人的世界:不可微函数的领域。这些以尖锐的“角”、“扭结”或不规则振荡为特征的函数,常常被视为纯粹的数学奇观或病态案例而被忽视。本文旨在挑战这一观念,揭示它们是为描述科学技术中复杂现象提供更精确语言的基本结构。
本次探索分为两部分。首先,在“原理与机制”部分,我们将深入探讨不可微性的基本性质,从绝对值函数等简单示例开始,逐步发展到那些处处连续但处处不可微的反直觉函数的存在。我们将揭示支配它们行为的规则,并理解它们在更广阔的函数世界中的位置。随后,在“应用与跨学科联系”部分,我们将走出纯数学的范畴,见证这些“扭结”和“跳跃”如何成为机器学习、物理学和经济学等不同领域的强大工具,推动了优化、材料科学和人类行为模型等方面的突破。准备好去发现数学的尖锐边缘并非缺陷,而是理解我们世界的关键特征。
在引言中,我们瞥见了那些挑战初等微积分中平滑、可预测世界的函数。我们谈到了那些连续——你可以一笔画出它们的图像而无需抬笔——但在某些点上拥有尖锐的“角”或“扭结”的函数,在这些点上,唯一切线的概念失效了。这些就是不可微函数。但它们究竟是什么?它们如何表现?它们是罕见的奇观,还是数学领域的一个基本特征?让我们像物理学家探索新现象一样,踏上征途,去理解支配这个迷人世界的原理和机制。
导数的核心思想很简单:它是一条曲线上某一点的斜率。对于像 这样的函数,斜率在不同点之间平滑地变化。我们可以在其图像的任何地方放大,它都会越来越像一条直线。这种“局部平坦性”正是可微性的本质。
挑战这一思想的最简单函数是绝对值函数,。它的图像是一个完美的“V”形,在 处有一个尖点。在零的右侧,斜率是恒定的 。在左侧,斜率是恒定的 。但是在原点,斜率是多少呢?这里存在冲突。从左侧逼近的极限告诉我们斜率应该是 ,而从右侧逼近的极限则坚持它是 。由于它们不一致,导数在该点根本不存在。没有唯一的切线。
这个单一的尖点是所有不可微性的种子。我们可以构建在不同位置都有扭结的更复杂的函数。考虑一个由多个绝对值项构成的函数,例如 。这个函数处处连续,但它从其组成部分继承了“扭结性”。潜在的问题点在 和 ,这些点使得绝对值内的表达式变为零。通过分段分析该函数,我们发现在 处,图像的斜率从 突变为 。在 处,斜率从 跃升至 。正是这些突变,这些左侧斜率与右侧斜率之间不可调和的差异,导致该函数在这两个点上不可微。
当我们将平滑、行为良好的函数与这些带扭结的函数结合时,会发生什么?是平滑性修复了扭结,还是扭结破坏了平滑性?答案取决于我们如何组合它们。
让我们取一个不可微函数,如 ,并给它加上一个完美平滑、无限可微的函数,比如 。新函数是 。在棘手的点 会发生什么?平滑函数 在 处有一个明确定义的斜率 。但这并不能解决 内部的冲突。扭结依然存在。在一个尖锐的台阶上加一个平滑的斜坡并不会消除台阶的角。规则简单而稳健:一个可微函数与一个不可微函数的和总是不可微的。如果它是可微的,我们就可以从中减去可微部分,剩下的函数也应该是可微的,但这与事实矛盾!
然而,乘法是另一回事。它有时能施展一种神奇的治愈术。考虑函数 。这里,我们将不可微函数 与简单的可微函数 相乘。在 处,奇妙的事情发生了。当 时,。当 时,。现在图像看起来像两个在原点无缝连接的抛物线。扭结消失了!乘以 的操作在原点附近“压扁”了函数,恰好足以抚平那个角。现在, 处的导数是一个明确定义的 。
这告诉我们一些深层次的东西。不可微性不仅仅是一个开关。它关乎一个函数在某点附近的行为方式。函数 在原点附近是线性趋近其值的,这导致了斜率的冲突。而函数 是二次趋近原点的,这足够平坦以保证存在唯一一条水平切线。在某些情况下,乘法甚至能将两个不可微函数变成一个平滑函数。例如,将 与 相乘得到 。由于 就是 ,这可以简化为多项式 ,它处处可微。扭结的代数充满了惊喜!
将这些思想扩展到两个或更多变量的函数,比如 ,我们从曲线进入了曲面。一个曲面要在某一点可微,它必须是“局部平坦”的——即必须有一个明确定义的切平面。“扭结”的类似物现在可以是一个“皱褶”(就像折叠的纸张)或一个尖锐的“尖峰”(就像圆锥的顶点)。
我们可以沿特定方向探测曲面的平滑度。这被称为方向导数。它告诉我们曲面特定切片的斜率。人们可能天真地认为,如果所有方向导数都存在,那么函数必定是可微的。但事实并非如此!
想象一个假设情景:在点 处,沿方向 的方向导数是 ,而在相反方向 上的方向导数是 。这是否意味着在 点可微?事实证明,这种关系 是一个普遍性质,只要这些方向导数存在就成立,它对于整体可微性没有任何启示。为了理解原因,考虑函数 。它的图像就像一张沿 轴折叠的纸,形成一个“皱褶”。让我们看看原点 。如果我们沿 轴(方向 )切割曲面,切片就是直线 ,其斜率为 。所以,方向导数是 。在相反方向,它是 。条件满足了。然而,如果我们尝试沿 轴切割,我们就会遇到 那个熟悉的扭结。曲面在原点并非“局部平坦”的;它有一个尖锐的皱褶。不同的方向切片无法组合成一个单一、连贯的切平面。因此,一个函数可以在某些方向上具有良好定义的导数,但整体上却不可微。高维空间中的可微性要求远比其一维切片的平滑性要严格得多。
到目前为止,我们举的例子中不可微的点都很少且相距甚远。但是一个函数可能在无穷多个点上都有扭结吗?它可能处处都有扭结吗?在我们进入那片荒野之前,让我们先考虑一类行为异常良好的函数:单调函数。这些函数要么总是不减,要么总是不增。
这类函数不仅仅是一个抽象的奇观;它在现实世界中具有根本性的重要意义。例如,在概率论和可靠性工程中,一个元件寿命的累积分布函数 (CDF) 给出了到时间 为止发生故障的概率。根据其定义,这个概率随着时间的推移只能保持不变或增加,因此任何 CDF 都是一个非递减函数。
对于这些函数,伟大的数学家 Henri Lebesgue 发现了一个深刻的秩序法则。Lebesgue 微分定理指出,任何区间上的单调函数都几乎处处可微。“几乎处处”有一个精确的含义:导数不存在的点的集合的总“长度”(或 Lebesgue 测度)为零。这是一个惊人的结果!它意味着,即使一个单调函数有跳跃或无穷多个扭结,这些点也是如此稀疏地散布着,以至于在某种意义上可以忽略不计。
这个不可微点集可以有多“野”呢?在 区间内的有理数集 是无限且稠密的(任何两个数之间都有一个有理数),但其 Lebesgue 测度为零。我们能否构造一个在每个有理数点都不可微的单调函数?答案是响亮的“是”。人们可以通过对每个有理数使用一个阶跃函数的求和来构建这样一个函数。更令人惊讶的是,可以构造一个在 上处处严格递增且连续的函数,但其导数恰好在有理数点不存在,而在其他地方都存在。这是一个精巧而优美的构造,表明一个函数可以在一个稠密点集上“颠簸”,同时保持完美的连续性和始终上升的趋势。
Lebesgue 定理为单调函数提供了安全保障。但是,如果我们去掉这个约束会发生什么?如果一个函数被允许剧烈地上下振荡呢?这个问题在19世纪引领数学家们发现了一个惊人的事实:存在处处连续但处处不可微的函数。
这些不仅仅是有很多扭结的函数。它们是病态的怪物,在所有可能的尺度上都剧烈地摆动,以至于在每一个点上,切线的概念都变得毫无意义。一个经典的类比是海岸线。从远处看,它似乎是平滑的。放大后,你会看到海湾和半岛。再放大一个海湾,你会看到更小的海湾和岬角。这种自相似的粗糙性无限地持续下去。一个处处不可微的函数在其图像的每一点上都具有这种“无限放大”的锯齿状特性。
这样的东西怎么可能出现呢?一个关键的洞见来自于观察函数序列。我们可以从一个由完美平滑、可微的函数组成的序列开始,比如 。随着 变大,这些函数越来越接近 。平滑的曲线收敛到一个带有扭结的函数。这打开了一扇门:如果一个简单的极限过程可以产生一个扭结,那么一个更复杂的——比如将频率不断增加、振幅不断减小的无穷多个波加起来——也许可以在每个点都产生一个扭结。这正是 Karl Weierstrass 在1872年构造出第一个著名例子时的方法,令数学界大为震惊。
这些函数具有近乎超自然的性质。假设你有一个处处不可微的函数 。如果你试图通过加上一个完美平滑的函数,比如 ,来“修复”它,这能抚平哪怕一个点吗?答案是断然的“不”。和函数 仍然处处不可微。处处不可微的性质就像一种具有100%外显率的遗传病;它在每个点上都病态地根深蒂固,以至于任何平滑的扰动都无法治愈它。
我们已经见过了微积分中行为良好的可微函数,以及高等分析中怪物般的处处不可微函数。哪一类更“普遍”?是怪物般的函数罕见,还是平滑函数才是特例?由一个名为 Baire 范畴定理的强大结果给出的答案,是整个数学中最深刻的惊喜之一。
想象一个区间上所有连续函数的空间,例如 。我们可以定义两个函数之间的“距离”概念,这样我们就可以讨论函数之间的“接近”程度。在这个广阔的函数宇宙中,事实证明,既至少在某处可微的函数集合,也处处不可微的函数集合,都是稠密的。
这里的“稠密”和听起来的意思一样。想想实数线上的有理数和无理数。无论你看多么小的区间,你总能找到这两种类型的数。在函数宇宙中也是如此。任取一个你能想象到的连续函数——一条直线、一个抛物线、一条疯狂的曲线。你可以在它任意“近”的地方找到另一个行为良好的多项式(处处可微),同时你也可以在它任意“近”的地方找到另一个处处不可微的怪物函数。
这个结论是惊人的。处处不可微的函数远非罕见,而是无处不在。在一个非常精确的意义上,一个“典型”的连续函数是处处不可微的。那些构成微积分和物理学基石的平滑、可预测的函数才是真正的例外。它们就像在一个本质上崎岖而混乱的世界中的完美晶体。
我们的旅程表明,不可微性是一种深刻、复杂且出人意料地普遍的现象。支配它的规则常常违背我们的初步直觉。让我们以一个颠覆我们期望的最后谜题来结束。
我们已经看到,组合函数可以破坏可微性。那么复合过程能否创造可微性呢?是否可能找到一个函数 ,它本身不可微,但当你将它与自身复合——形成 ——其结果是一个完美平滑、连续可微的函数?
这似乎不可能。链式法则 表明需要 的导数。但如果 不存在呢?诀窍在于要巧妙。我们可以构造一个有扭结的函数 ,但其设计使得它的值域(输出值)完全落在函数本身是平坦的区域内。例如,我们可以构建一个具有无穷多个不可微“角点”的连续函数,其输出值总是很小的正数。然后,我们可以定义该函数对于所有这些小的正输入都为零。结果呢?第一次应用 产生一个输出 。第二次应用作用于这个 ,由于 处于“平坦”的零区域,所以 总是零。复合函数 只是常数函数 ,它无比光滑!并且这个技巧也可以被改造用来产生非常数的平滑函数。
这不仅仅是一个聪明的技巧。它证明了数学的创造性和建构性精神。它提醒我们,即使在处理“病态”对象时,也存在着潜在的逻辑和美感,而且游戏规则允许出现既优雅又出人意料的结果。不可微函数的世界不仅仅是问题的集合;它是一个充满探索、惊奇和发现的富饶领域。
在我们的科学教育中,很长一段时间以来,我们被教导要珍视那些平滑且行为良好的事物。我们学会了热爱那些可以一次又一次求导的函数,那些描绘出优雅、流畅曲线而没有任何不雅观的断裂或尖角的函数。我们被含蓄地告知,宇宙在其最根本的层面上是平滑的。但如果这只是故事的一半呢?如果我告诉你,现代科学和工程中一些最深刻、最具革命性的思想,并非建立在平滑性之上,而是建立在你微积分老师警告过你的那些“行为不端”的函数之上呢?扭结、角点和跳跃并非需要避免的病态现象;它们是描述世界真实面貌的强大工具:果断、受约束且充满急剧的转变。
让我们踏上一段旅程,看看这些尖锐的边缘出现在哪里,以及它们为何如此不可思议地有用。我们将看到,从计算机算法的逻辑到岩石断裂的物理学,不可微性是自然界以及我们自己用来解决一些最棘手问题的秘密语言。
想象一下,你正在编程一个机器人在房间里导航,但它必须停留在某个边界之内。一种经典的方法可能是创建一个平滑的“力场”,温和地将机器人推离墙壁。离墙越近,推力越大。这是平滑惩罚背后的思想,就像在你的成本函数中加入一项 ,其中 代表墙壁。这方法可行,但它有一个奇怪的副作用:为了完美地执行约束,惩罚强度 必须变得无限大。机器人永远不完全学会远离墙壁;它只是学会了离得非常近会“代价高昂”。
那么,如果我们改用一种尖锐的惩罚呢?考虑绝对值函数 。这个函数在零点有一个尖锐的扭结。使用它作为惩罚项 ,会创造一个根本不同的景观。墙壁处的不可微点在优化中就像一个“硬”屏障。事实证明,对于一个足够大(但有限!)的 值,这个新的、不可微问题的最小值正是原始约束问题的解。这个扭结不是一个缺陷;它是一个让我们能够精确执行约束的特性。
然而,这一成功是有代价的。我们标准的优化工具——梯度下降法,依赖于沿着最陡峭的斜率方向前进。但在一个尖锐的角点,斜率是多少呢?一个幼稚的算法试图在扭结处计算梯度,可能会陷入彻底的混乱。它可能会卡住,以为斜率是零而实际上不是,或者当它在角点两侧来回踱步时可能会剧烈振荡。我们需要一个新工具。
这个工具就是次梯度。想象一个平滑的凸(碗状)函数。在任何一点,你都可以画出一条完全位于函数下方的唯一切线。这条线的斜率就是导数。现在,想象一个带扭结的函数,比如在 处的绝对值函数 。在这个“V”形底部,你无法画出唯一的切线。但是你可以画出一整簇穿过点 并保持在图像下方的直线。它们的斜率可以是介于 到 之间的任何值。这个所有可能的“支撑”斜率的集合,在此例中是区间 ,就是次微分,而其中的任何一个斜率都是一个次梯度。
于是,寻找最小值的规则被优美地推广了:一个点是最小值,当且仅当数字零包含在其次梯度集合中。对于 ,在最小点 处的次梯度是集合 ,它恰好包含零。有了这个概念,我们就可以设计“次梯度下降”算法来驾驭这些带扭结的地形。
这个思想在哪个领域得到了最辉煌的应用?在数据、人工智能和机器学习的世界里。
稀疏性与 L1 范数: 如何在一个包含数千个变量的复杂数据集中找到最重要的因素?你可能想要一个“稀疏”的模型——一个将大多数不相关变量的系数精确设为零的模型。实现这一点的关键是 L1 范数,,它只是一堆绝对值的和。最小化一个损失函数加上 L1 范数的惩罚(一种称为 LASSO 的技术)会奇迹般地鼓励稀疏解。L1 范数函数的不可微角点正是将系数一路拉到零的原因。我们可以使用次梯度下降来解决这些问题,在每一步中,我们选择一个有效的次梯度来引导我们寻找最简单、最具预测性的模型。
人工智能的大脑:ReLU: 深度学习革命的引擎是神经网络,而其中默默无闻的英雄是一个叫做修正线性单元(Rectified Linear Unit)或 ReLU 的函数:。这个极其简单的函数——对于负输入是平的,对于正输入是一条直线——在 处有一个单一的扭结。现代神经网络就是通过组合数百万个这样的不可微单元构建的。我们如何训练它们?驱动 PyTorch 和 TensorFlow 等框架的自动微分(AD)引擎已经被教会了次梯度的规则。当它们在训练过程中遇到一个恰好为零的 ReLU 单元时,它们不会惊慌失措;它们只是简单地使用一个预定义的次梯度值(如 或 )来继续计算。整个现代人工智能的大厦都建立在我们“扭结微积分”的一致和实际应用之上。
设计学习过程: 我们甚至可以将不可微性直接构建到我们的机器学习目标中,以反映特定的目标。假设我们正在构建一个医疗诊断工具。“假阴性”(漏诊)的代价可能远高于“假阳性”。我们可以设计一个自定义的、不可微的损失函数,用不同的斜率来非对称地惩罚这两种类型的错误。损失函数中的扭结代表了我们关于机器可以犯何种错误的明确、带有价值判断的选择。
不可微性的用途并不仅限于算法和数据的抽象世界。它被写入了物理世界的基本法则中。
考虑材料科学。一块固体,比如一块岩石或一堆土壤,在应力作用下何时会失效?一个简单的模型可能会认为,当压力和剪切力的某种平滑组合超过一个阈值时,它就会失效。但对于许多材料来说,现实更为复杂和有趣。Mohr-Coulomb 屈服准则是岩土力学和土木工程的基石,它将失效面描述为偏应力平面上的一个六边形。这个表面有六个尖角。这些并非数学上的巧合;它们具有物理意义。它们代表了不同失效模式之间的过渡点,例如,从三轴压缩状态转变为三轴拉伸状态。材料在这些角点之一的塑性流动不是唯一确定的——材料有多种“选择”来如何变形。屈服面的不可微性是材料失效的摩擦性和分段性特征的直接数学结果。
让我们看另一种“断裂”:不连续性或跳跃。Heaviside 阶跃函数 ,对于负 为零,对于正 为一,是描述一个在零时刻开启的事件的完美模型。但它的导数是什么?经典上,它是未定义的。这个函数甚至不连续。然而物理学家和工程师需要描述一个阶跃的导数——一个脉冲、一个点力、一个冲击。广义函数或分布理论提供了一个惊人优雅的解决方案。它以一种“弱”的方式重新定义了导数,通过告诉我们它如何作用于其他无限平滑的“测试函数”。利用这个框架,Heaviside 函数的导数被发现是 Dirac delta 函数 ,一个在原点处无限高、无限窄且积分为一的尖峰。这个框架允许我们将微积分的强大工具,如乘法法则和分部积分,应用于带有跳跃和尖峰的函数,为从信号处理到量子场论的一切提供了数学语言。
最后,我们转向一个平滑性或许是最不自然假设的领域:人类行为研究。经典经济模型通常假设人们有平滑的效用函数,这意味着我们的满意度随着财富或消费的变化而平滑地改变。但行为经济学讲述了一个不同的故事。我们是参照点的生物。损失100美元的痛苦远比获得100美元的快乐要强烈。这种“损失厌恶”在我们的效用函数中,在我们当前的财富状态处创造了一个扭结。
对这种更现实、带扭结的效用进行建模给经济学家带来了挑战。许多用于求解动态经济模型的标准数值方法,例如依赖牛顿法的“打靶算法”,恰恰因为它们需要平滑的导数而失效。当模拟中一个主体的消费路径穿过参照点时,算法可能会壮观地失败。这迫使经济学家采用更稳健的数值工具——比如只要求连续性的简单二分法——或者开发更复杂的技术,比如“平滑扭结”,即用平滑曲线局部逼近不可微点。我们人类选择模型中不可微性的存在,有力地提醒我们,我们的数学必须足够丰富,以捕捉决策的心理现实。
我们的旅程结束了。我们从质疑平滑性的至高无上地位开始,为其对立面找到了一个充满应用的世界。我们看到了绝对值函数的尖角如何实现精确优化。我们学会了用次梯度来驾驭这些角点,这个工具驱动着现代机器学习,从创建稀疏模型到训练深度神经网络。我们看到了同样的尖角出现在支配材料如何断裂的物理定律中,也看到了跳跃和脉冲如何能用分布的语言来驯服。最后,我们看到了这些扭结在我们自己经济行为中的反映。
世界并非总是平滑的。它有相变、决策边界、临界阈值和瞬时事件。通过拥抱不可微性的数学,我们并非抛弃微积分;我们丰富了它,创造了一种更强大、更真实的语言来描述我们所居住的美丽而尖锐的现实。