算法与数学基础 · 第 5 期

拓扑数据分析:形状里的信息

持续同调 · persistent homology

两组点云,均值方差全相同,但一个像环、一个像团——传统统计看不出差别,拓扑能。持续同调把"形状"量化成条形码:哪些洞活得长,哪些洞一闪而过。活得长的洞,才是数据的真实形状。
⏱ 约 11 分钟 🎯 想用数学描述形状的人 📦 源:ht-ripser

01一个反共识:统计看不出形状,拓扑能

均值、方差、相关系数——这些统计量描述的是"分布",不是"形状"。两组点云可以有完全相同的统计量,但形状截然不同。

Betti 数 = β₀(连通块) + β₁(洞) + β₂(空腔)

拓扑用 Betti 数数形状:β₀ 是有几个连通块,β₁ 是有几个一维洞(环),β₂ 是有几个二维空腔。一个圆环 β₀=1、β₁=1、β₂=0;一个球面 β₀=1、β₁=0、β₂=1。统计告诉你数据在哪,拓扑告诉你数据是什么形状。

统计看分布,
拓扑看形状。
灏天文库 · 算法与数学基础 P.26

02持续同调演示:拖动半径看洞的生灭

每个点画一个半径为 r 的圆,圆相交就连边、三点成环就填三角。随 r 增大,连通块合并(β₀ 降)、洞出现又消失(β₁ 升降)。右侧条形码记录每个特征从生到灭的半径区间——长条是真特征,短条是噪声。

🍩 持续同调演示
拖动半径 r,看圆环点云的洞怎么生灭。
r = 12
条形码横轴是半径 r。每条横线代表一个拓扑特征,从它诞生的 r 延伸到它消亡的 r。越长越可能是真实形状特征。

03条形码为什么是"形状的指纹"

持续同调的关键不是看某个半径的洞,而是看洞存活了多久。半径从 0 增大到 ∞,每个拓扑特征都有一个出生半径和死亡半径,区间长度就是它的"寿命"。

短条

噪声

寿命短的洞,稍大半径就消失,是数据抖动。

长条

真特征

寿命长的洞,跨越大范围半径都存在,是真实形状。

β₁ 长条

有环

一维洞长寿,说明数据有环状结构。

β₂ 长条

有空腔

二维空腔长寿,说明数据有壳状结构。

应用很广:神经科学用它发现脑活动有环状结构(视觉皮层对方向的编码),材料学用它区分晶体和非晶,机器学习用它做点云分类。当数据有形状,传统方法看不见时,上拓扑。

长条是形状,
短条是噪声。
灏天文库 · 算法与数学基础 P.28

04带走这套清单

✅ 拓扑数据分析 5 条可执行规则

  1. 数据有形状、统计量看不出差别时,考虑持续同调。
  2. Betti 数数形状:β₀ 连通块、β₁ 洞、β₂ 空腔。
  3. 看条形码:长条是真特征,短条是噪声,按寿命过滤。
  4. 半径参数别只看一个值,要扫一遍看特征的稳定性。
  5. 工具:ripser / gudhi / ht-ripser,大数据先采样再算。
数据有形状,
就用拓扑。
灏天文库 · 算法与数学基础 P.29