尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

测度论入门:从长度到勒贝格积分,构建现代数学的地基

测度论入门:从长度到勒贝格积分,构建现代数学的地基 1. 从“长度”说起为什么还需要一门新学问如果你问一个普通人一根线段的长度是多少他大概率会直接拿尺子去量。但如果你问他一根线段上的有理点总共有多少个无理点又有多少个这个问题就开始变得棘手了。再进一步如果把一根线段上的所有点都拿出来再把它们重新排列能不能让它们铺满一个正方形直觉上这简直荒谬但在数学上这套操作背后恰好藏着一个核心问题——我们对“长度”这件事的理解还远远不够。“Measure (mathematics)”翻译过来就是“数学中的测度”。测度这个词听起来有点学术但它本质上回答的是最朴素的问题一件东西到底有多大这个“大”可以是长度、面积、体积也可以是概率、质量、信息量。测度论就是给“大小”这个概念建立一套严格数学框架的学科。它解决了几个非常实际的问题怎样给任何奇怪的形状定义面积怎样把“积分”从普通的连续函数扩展到更复杂的场景为什么概率论里的“事件”能被合理地分配数字这套理论从十九世纪末开始逐步成型经过勒贝格、博雷尔、卡拉西奥多里等人的打磨到今天已经成为现代分析、概率统计、乃至机器学习理论里绕不开的地基。这篇文章写给谁如果你是数学系学生正在和实变函数、勒贝格积分较劲那这篇内容能帮你把课本里那些拗口的定义串成一个整体如果你是做应用方向的从业者比如机器学习、信号处理、量化金融你可能天天在用概率论和期望但从来没细想过背后的测度是怎么回事这篇文章会告诉你那些公式到底在算什么。我会尽量少堆术语多用量级类比和具体例子说话毕竟测度论这东西最怕的就是“每个字都认识连起来不知道在说啥”。我当年学这门课的时候最大的感受就是前面一个月的课都在为了“一个不起眼的定义”做铺垫到后来才意识到那个定义直接决定了整个理论的地基稳不稳。这篇文章我想按一条比较自然的思路来讲先看看我们日常对长度体积的理解为什么不够用再顺着历史发展的顺序从零搭起一套测度理论最后聊聊这套理论在概率论和分析学里的真实应用以及初学者最容易卡住的几个坑。2. 为什么直觉会失灵不可测集合与内容积分的困境2.1 朴素长度观的三条铁律在讨论测度之前先明确一点我们希望一个“好的”长度概念满足哪些最基本的要求。拿一维情况来说对任意实数区间它的长度显然应该是右端点减左端点。对于一系列互不相交的区间整体的长度应该是各个区间长度之和。这个要求非常自然叫做可数可加性——我在这里提出来是因为它看上去天经地义但事实上正是这个“天经地义”的要求在无限维或不规则集合面前制造了大量麻烦。再有一条是平移不变性。就是把一个集合整体挪个位置长度不应该变。这一点在日常生活中完全符合直觉尺子从桌上挪到墙角量出来的线段长度还是那么多。三条铁律放在一起——区间长度已知、可数可加、平移不变——朴素长度观就构成了。如果用这套朴素观点去做有限个区间的并集或者做简单的分片连续的东西完全够用积分也会按黎曼积分的路子正常运转。但问题在于遇到越来越“碎”的集合时直觉就开始脱轨了。一个典型的例子是区间内所有有理数组成的集合它的“长度”应该是多少如果按每条有理点单点长度为零来算无数个零加起来似乎还是零。但“零加零加零”能不能得到正数这正是困扰数学家很长一段时间的谜题。2.2 黎曼积分搞不定的场景黎曼积分在连续函数、甚至分段连续函数上表现得很好它本质上是在把定义域切成一堆小格子在每个格子里取一个代表值乘上格子宽度再求和。这个过程遇到剧烈震荡的函数就容易崩。最经典的例子是狄利克雷函数在有理点取1在无理点取0。这个函数在任意小区间里既不是连续的也没有稳定的上下界逼近趋势黎曼积分直接宣告不可积。但从测度论的角度来看有理数这个集合“太小了”小到不占空间所以函数在绝大部分地方都等于0它的积分也应当是0甚至可以说它在几乎处处意义下和零函数没有区别。这里透露了一个信号如果想知道函数在“几乎所有点”上的行为就需要一套比“点”更精细的工具来区分集合的大小。甚至可以说只有当有理数集这类“小集合”被严格定义为零测集时狄利克雷函数才能堂堂正正走进积分世界。这套工具就是测度。2.3 维塔利集合与选择公理的边角料你可能想问是不是所有集合都能被赋予一个合理的大小答案让人意外不是。只要承认选择公理就能构造出一类集合它们的任何平移副本之间是互不相交的一族却无法被赋予一致的长度。这个构造被称为维塔利集合。它并不难理解把单位区间按“两个数相差有理数”来分组每组里挑一个代表挑出来的代表全体就是一个维塔利集合。它长得极其诡异平移一下之后能复制出无穷多份互不相交的副本每一份都落在某个有界范围内。如果可数可加性和平移不变性都成立这些副本总长度是个矛盾——一边是无数个相同的小正数加起来无穷大另一边又被有界区间限制住。维塔利集合的存在说明了一个残酷的现实想给每一个子集都定义长度你就要放弃可数可加性或者放弃平移不变性。这两样又都很重要。解决办法是退一步承认这个世界上存在“不可测集合”我们不去管它们只把测度定义在一个足够大的、性质良好的子集族上。这就是σ代数的登场点不是所有集合都能被测量但至少能找到一个足够大的家族让所有用得上的操作都在里面封闭完成。3. 搭建一套测度体系从外测度到勒贝格可测集3.1 外测度用开区间从外面去逼近构造勒贝格测度最自然的技术路线是从外测度开始。大致思路是对于实数轴上的任意集合E用一列开区间把它盖住算这些开区间长度总和的下确界得到的就是E的外测度。这个操作特别直白拿一堆开区间像被子一样盖住集合被子的总长度最小值就是这个集合的“外部尺寸”。外测度有几个特点。它定义在全部实数子集上适用面非常广。它满足次可数可加性也就是一列集合的并的外测度不超过各自外测度之和这是把“盖被子”这操作翻译成数学语言的直接结果。但它也有一个让人头疼的地方外测度不满足可数可加性换句话说两个互不相交的集合加起来的外测度不一定等于各自外测度的和。正是因为“不一定”才需要进一步筛出那些行为良好的集合也就是可测集。为了讲清楚“好”的标准得先说说卡拉西奥多里条件。这地方初学的人很容易懵为什么要摆出一个看起来像“电车难题”的式子来定义可测集原因很简单我们希望分割一个集合时外测度不会因为切了一刀而产生误差。具体来说对任意测试集T如果集合E始终满足外测度的可加等式那E就是可测的。这个条件天然地把维塔利集合那类病态集合排除在外了。3.2 σ代数封闭性从哪来把所有满足卡拉西奥多里条件的集合放在一起就得到了勒贝格可测集族。它包含空集、全集、所有开区间并且对补集和可数并运算封闭。这类结构在数学里有个专门的名字——σ代数。这个名字看起来很抽象但它想表达的东西特别简单你要做“可数多次数的取并、取交、取补”操作结果都还落在集合族里面不会跑出去。为什么要强调可数而不是任意要是允许任意多个集合取并那任何集合都可以由单点集并出来测度的可数可加性就会被无限并破坏很多技术细节会崩掉。而可数运算既能照顾到极限过程——比如用一列逐渐逼近的阶梯函数去逼近复杂函数——又不至于放得太宽。这个封闭性是勒贝格积分理论能成立的关键机制没有它后面所有关于测度收敛、函数逼近、积分极限交换的定理都无从谈起。顺带说一句σ代数的概念不只在实数轴上用。概率论里的事件域就是一个σ代数你把若干个事件放在里面必须保证它们的逆事件、可数并事件也都在里面否则概率论的基础就松了。学测度论时如果能把“σ代数就是一个封闭的家族”这层意思吃透后面看很多定义都会觉得顺。3.3 零测集与“几乎处处”测度为零的集合是整座理论里最有趣也最有用的概念。单点集是零测的有限个点是零测的可数个点也是零测的。更极端的是区间里的所有有理数虽然是稠密的处处都挨着某个无理数但它依然是个零测集。换句话说哪怕有理数密密麻麻地铺在数轴上在长度意义下它依然占比为零。零测集带来了一个极具实用性的概念几乎处处。一个性质如果在除去某个零测集外处处成立就说这个性质几乎处处成立。这个概念的威力在于它可以让你忽略掉那些“测量不到”的小意外。比如一个函数在一个零测集上取值为无穷大其他位置上正常那么在积分的世界里它可以被当成普通函数处理。数学分析中很多函数列定理收敛性不需要在所有点成立只需要几乎处处成立就足够了这为后续的极限交换定理节省了大量限制条件。我自学的时候在这里有过一段困惑既然有理数和无理数都是稠密的凭什么单点集并起来的有理数集反而测度是零原因在于测度不是数密度它更接近“体积”而不是“多少”。数轴上每个单点体积为零可数多个加起来的总体积仍然为零这没问题。但如果是不可数多个点——比如康托尔集——情况就复杂了。康托尔集虽然和单位区间一样有不可数多个点但它长度为零。这听起来反直觉可仔细想想从区间里敲掉中间三分之一再敲掉剩下的中间三分之一每一步扣除的长度最终趋近于1留下的东西自然就没有长度了。但它的点和单位区间的点一样多这个事实说明“点多少”和“测度大小”完全是两套坐标系统许多初学者的困惑就来自把这两者混为一谈。4. 核心实操视角勒贝格测度的构造关键步骤4.1 从区间长度到外测度的三步走在实际动手层面勒贝格测度的构造大致可以拆成三步。第一步对开区间定义长度这步没有争议就是右端点减左端点。第二步对任意集合E定义外测度是覆盖E的所有开区间列长度总和的下确界。这里的“下确界”技术性很强因为覆盖方式非常多有些覆盖长得离谱但你只要算所有可能覆盖的总体积最小值无论覆盖多不规则最终结果都稳定可靠。第三步用卡拉西奥多里条件筛选可测集。这一步的动机我记得自己学的时候很久才转过弯来——为什么要拿“任意测试集T”来做检验后来才明白这就像实验室里的标定过程你对一个未知器件给出一个测试信号观察输入输出是否满足线性叠加合格了才允许它进入系统。卡拉西奥多里条件本质就是给集合做“叠加性测试”通过测试的就是可测集不通过的就丢弃在测度论讨论范围之外。走完这三步外测度在可测集族上的限制就是真正的勒贝格测度。它具备三条理想性质区间长度保持一致可数可加性成立平移不变性也成立。维塔利集合那种怪物则被自动挡在门外这是整个方案最精彩的地方——不是强行消灭不可测集而是划定一个足够大的疆域在疆域内让一切好性质都成立。4.2 为什么用开区间而不是闭区间构造外测度时可以选择覆盖集合的方式。大多数教材都选开区间这是有讲究的。开区间的长度定义简单并且开区间列的并集不用担心边界点归属问题处理起来更顺滑。如果用闭区间虽然也能得到一个类似的外测度但因为闭区间包含端点两个闭区间出现重叠端点时长度计算会微差虽然最终结果和开区间版本一致但证明过程里要多处理边界带来的零测集麻烦。我见过有些初学者问能不能用任意区间包括带半开半闭的当然可以结果是一样的。之所以教材里都用开区间是因为开区间在构造光滑函数、连续函数时更容易打交道算长度总和时端点不影响结果写证明时能少操心很多边角情况。这个选择好比做工整的账目时用统一的纸币面额避免零头找补。另一个细节是外测度定义里的覆盖序列理论上是可数的不能是任意的。如果允许任意基数个开区间所有长度为0的单点集无穷并起来会得出每段长度都变成0的荒谬结论。可数覆盖是保证可数可加性成立的关键限定它的地位和σ代数里的可数运算一脉相承。4.3 代码层面的小实验近似计算勒贝格测度看理论看得再多不如亲手做点小实验来建立直觉。数学里给任意集合算精确测度不太现实但可以用随机采样的方式近似估计一个集合的测度。拿康托尔集举例这个集合的长度是0但你可以写一段代码用蒙特卡洛方法做验证在[0,1]区间随机撒点检查点是否落在康托尔集的某个阶段剩余区间里最后统计命中率。import random def in_cantor(x, depth20): # 反复判断x是否落在被删除的区间内 for _ in range(depth): x x * 3 if x 1 and x 2: return False x x % 1 return True N 100000 hits sum(in_cantor(random.random()) for _ in range(N)) print(估计测度:, 1 - hits / N)这段代码跑出来的结果会非常接近1因为康托尔集本身的测度是0所以随机点几乎不会落在它里面。而“命中率几乎为零”和“和单位区间一样多的点”之间的对比正是测度论最撞碎直觉的地方。类似的实验还可以做在有理数集上随机撒一百万个点一个有理数都几乎不会命中。这类小实验对建立“零测集到底多小”的直觉非常有用。5. 从测度到积分勒贝格积分的实操意义5.1 简单函数逼近积分为什么变“横着切”勒贝格积分的学习曲线之所以陡峭是因为它换了一种完全不同的切分策略。黎曼积分是沿x轴做纵向切分定义域被切成小格子在每个格子里取函数值。勒贝格积分则反其道而行之沿y轴做横向切分把值域切成小段看函数落在不同值域段的定义域部分各有多大。这就像一个餐厅盘点顾客黎曼的做法是按排队顺序一个个数勒贝格的做法是先问“有多少人点了套餐A”“有多少人点了套餐B”再乘上对应的人数数量。要把这个思路落到实处需要经历几个层次。先定义指示函数的积分就是某个可测集合的测度。再定义简单函数——若干指示函数的线性组合——的积分直接线性叠加即可。最后用一列单调递增的简单函数从下方逼近任意非负可测函数积分定义为这个逼近序列积分的上确界。这最后一步用到了一个重要结论任何非负可测函数都可以被简单函数列逼近这保证了勒贝格积分覆盖的范围足够广。5.2 三大极限交换定理勒贝格积分的底气对应用者来说勒贝格积分最值钱的好处是极限交换变得宽松。黎曼积分下函数列的一致收敛才能保证积分号和极限号互换这个要求太高了很多实际问题里的逼近序列根本达不到。勒贝格积分提供了三个更灵活的工具单调收敛定理适用于单调递增的非负函数列不管极限函数长得多奇怪只要积分有意义极限号就能换进去法图引理给出一列非负函数后积分极限不小于极限函数积分的下界这是个非常有用的不等式工具控制收敛定理只要函数列被一个可积函数整体压在下面即使不满足一致收敛几乎处处收敛也足以保证积分号与极限号交换。我上班之后做算法分析时经常遇到这种场景某种迭代算法的中间结果是一列函数你想证明它们收敛到某个目标函数并且目标函数的值和极限期望直接相关。如果没有勒贝格这套极限交换工具就得每一步都去验证一致收敛很多时候验证不了整个证明就卡死了。而用了控制收敛定理只要找到那个“控制函数”证明瞬间清爽很多。5.3 与黎曼积分的衔接关系这里插一个重要事实如果一个函数在闭区间上黎曼可积那么它一定勒贝格可积而且两种积分结果相同。这意味着勒贝格积分不是对黎曼积分的否定而是对它的扩展就像实数是对有理数的扩展并不会推翻有理数规则只是把适用范围扩大了。初学者听到这里通常会松一口气原来不是要抛弃以前学的东西只是换了一套更强大的工具。反过来勒贝格积分能处理黎曼积分处理不了的东西。狄利克雷函数就是最典型的例子它在有理点取1、无理点取0黎曼不可积但勒贝格积分下因为有理数集是零测集函数几乎处处等于0积分结果为0。这类函数理论上非常常见实际应用中凡是涉及“几乎处处成立”的问题勒贝格积分几乎都绕不开。6. 测度论在现代应用中的真正位置6.1 概率论概率就是总质量为1的测度概率论应该算测度论最大、最成功的应用场景。柯尔莫哥洛夫在二十世纪三十年代把概率论公理化之后概率的定义就变成了概率测度是一个把整个样本空间映射到1的特殊测度。事件就是一个可测集随机变量就是一个可测函数期望就是一个关于概率测度的勒贝格积分。这套对应关系把所有概率论的操作都纳入了测度论的框架。为什么事件必须构成σ代数因为概率运算里要对事件做交、并、补还要处理可数多个事件的并天然需要σ代数的封闭性。有了这个视角很多东西会变得通透。连续型随机变量的密度函数其实就是概率测度关于勒贝格测度的密度——本质上说的是同一个测度体系中密度高低的相对差异。而条件期望定义一个随机变量在另一个σ代数下的期望实质上是一个投影操作这里面的技术细节全部建立在测度论之上。如果你做过机器学习里的蒙特卡洛估计你会发现大数定律的证明核心就是对期望存在性、方差有限性等一系列测度论条件的验证。6.2 机器学习与数据分析密度估计背后的测度逻辑机器学习理论中很多公式如果不借助测度的语言几乎无法严格表述。比如生成模型里经常出现的KL散度定义时要求两个概率测度之间满足绝对连续条件否则密度比就没有意义。像生成对抗网络这类模型它们在优化过程中会涉及大量分布之间的映射很多经典证明都要用到测度论里关于可测映射和分布变换的工具。再比如我们在做数据预处理时经常会把特征映射到某个目标分布上。这本质上是定义一个从原分布到目标分布的测度变换。工业里常见的分位数变换就是把样本经验分布映射到均匀分布再通过逆变换得到正态分布样本这个过程完全等价于在测度之间拉回和推送。不深入理解测度论这些操作也能用但遇到数据分布极端、概率密度不存在的场景时你不知道怎么排查更不知道用什么替代方案。另外一个重要的应用领域是压缩感知与信号处理。里面很多“稀疏恢复”“低秩矩阵恢复”的证明依赖的是测度论里的零测集思想和概率测度的集中不等式。很多时候你构造一个随机测量矩阵需要证明某些坏事件发生的概率为零或者至多是可忽略的这些概率估算本身就是在概率测度框架下做积分。6.3 金融数学与随机分析布朗运动是测度论的产物金融数学里大名鼎鼎的布朗运动它的严格构造就是建立在无限维乘积测度基础上的。随机过程理论的核心对象是一族随机变量它们的相关性结构、路径性质都需要一个非常巨大的概率空间来承载。伊藤积分的定义方式很像勒贝格积分的构造思路——先用阶梯过程逼近再通过等距关系取极限这整个逻辑链条没有测度论的支撑是寸步难行的。如果你读过布莱克-斯科尔斯模型的推导会发现里面到处是“鞅”“等价鞅测度”这些词而等价鞅测度正是测度论里“两个测度互相绝对连续”这个概念的直接应用。7. 常见问题与排查技巧学习测度论时踩过的坑7.1 可测函数到底哪里特殊不少初学者会问“可测函数这个条件到底限制了什么”答案可以从直观层面来理解可测函数就是那些“取值落在任何区间里的自变量的集合都是可测集”的函数。这个条件比连续性弱得多但足以保证定义勒贝格积分时有意义。检查一个函数是否可测不需要对所有区间逐一验证只需要检验对某些生成元区间成立即可。实操时一般先确认目标集合是不是可测集族里的元素再确认函数是否由可测函数通过加减乘除、取极限组合而成。如果你发现某个函数列极限有问题先检查可测性条件是否满足排查起来会事半功倍。7.2 测度的可数可加性为什么不能随便推广有时候学生会有个冲动既然可数可加性这么好用能不能直接推广到任意并答案是绝对不能。如果允许不可数并的可加性那么单点集的测度都是零把不可数个单点并起来得到整个区间左边是0右边却是1矛盾立刻爆出来。可数可加性正好卡在了一个微妙的位置既不破坏直觉上每一个单点的零测性又能让足够多的集合运算保持合理性。这个“可数”不是随意的而是数学结构里自然涌现出来的分界线。7.3 学完测度论后怎么用起来如果你只是为了应付考试那核心就是三大极限定理和可测函数的判定技巧刷题时重点做控制收敛定理的应用场景。如果你是走应用方向建议额外看一下测度论在概率论中的应用特别是条件期望的形式化定义这会让你看机器学习理论论文时轻松很多。如果你是打算走分析方向那接下来可以继续深入勒贝格空间的Lp理论、傅里叶变换的测度论处理、拉东-尼科迪姆定理等这些都是后续函数分析的重要器材。我个人的体会是测度论最需要投入的就是建立零测集和几乎处处这两个直觉多花几天时间反复琢磨维塔利集合的例子琢磨卡拉西奥多里条件的来龙去脉比背一百条定理都管用。很多时候你觉得证明看不懂不是因为推理复杂而是因为对“集合大小”的判断停留在朴素阶段没有切换到测度论的维度。最后再分享一个小技巧每次学到一个新的可测集类型都亲手验证一下它的测度是否为0并画图或者写代码模拟一下。康托尔集测度为0但基数巨大有理数集测度为0但稠密这些反直觉的例子如果只是看教材很容易忘但一旦动手算过一遍那些数字和图像会像肌肉记忆一样留在你脑子里之后学勒贝格积分、概率论、随机过程很多问题都不攻自破。
返回列表