try ai
科普
编辑
分享
反馈
  • 数据的几何学

数据的几何学

SciencePedia玻尔百科
核心要点
  • 数据可以被视为一个几何对象,其潜在的形状或流形揭示了原始数值中不明显的隐藏关系。
  • 像PCA这样的算法揭示了数据的线性结构,而Isomap、UMAP和t-SNE等流形学习方法则揭示了复杂的非线性形状。
  • 如果数据采样的方式在模型的基函数中产生冗余,其几何形态可能会带来算法上的挑战,例如病态问题。
  • 应用几何原理已经彻底改变了生物学等领域,催生了伪时间等概念,并通过SVM和深度网络等模型推动了机器学习的发展。

引言

在一个数据泛滥的世界里,人们通常将其视为行列中静态的数字集合。然而,这种有限的视角忽略了最关键的信息:赋予数据真实形态的错综复杂的关系网络。本文所要解决的根本知识鸿沟,正是未能将数据视为一个几何对象——一个拥有形状、纹理和待探索路径的景观。通过采纳这种几何视角,我们可以解锁那些原本不可见的深刻见解。

本文将作为您探索这一新视角的指南。在第一章 ​​原理与机制​​ 中,我们将探讨数据几何学的基础思想。您将学习如何“拉直”复杂的关系,用PCA等方法找到数据集的自然轴,并使用Isomap和UMAP等强大工具在数据流形的非线性地形中导航。随后,在 ​​应用与跨学科联系​​ 中,我们将见证这些原理并非仅仅是抽象概念,而是正在积极地革新从生物学到人工智能的各个领域,使我们能够解码生命的蓝图并构建更智能的机器。我们的旅程始于学习如何看清数字中隐藏的形状。

原理与机制

我们很容易将数据仅仅看作电子表格中的数字——一个由行和列组成的毫无生气的集合。但这就像看着交响乐的乐谱,却只看到纸上的黑点。真正的音乐、结构和故事,在于音符之间的关系。数据也是如此。数据点的集合不仅仅是一个表格,它还是一个​​几何对象​​。它有形状、有形态、有纹理,存在于一个可能极其广阔的高维空间中,等待着被发现。本章的旅程就是学习如何看见这个形状,理解它的语言,并领会这种“数据几何”是如何成为解开数字背后秘密的关键。

拉直世界

让我们从一个简单而熟悉的概念开始。想象你是一位早期天文学家,正在追踪一颗行星的运动。你的数据可能看起来是一条复杂的曲线。但如果你改变视角呢?如果你不绘制位置与时间的关系图,而是在一个不同的坐标系中——比如一个以太阳为中心的坐标系——绘制它呢?突然间,复杂的路径可能会变成一个简单而优美的椭圆。你没有改变行星的运动,只改变了你看待它的方式。

这是数据几何学的第一个原则:我们常常可以通过巧妙的​​坐标变换​​来揭示一个简单的底层结构。考虑一个物理定律,它表明响应 yyy 与变量 xxx 之间存在幂律关系,y=αxβy = \alpha x^{\beta}y=αxβ。如果我们绘制 yyy 相对于 xxx 的图,会得到一条曲线。但如果我们对等式两边取对数,会得到 ln⁡(y)=ln⁡(α)+βln⁡(x)\ln(y) = \ln(\alpha) + \beta \ln(x)ln(y)=ln(α)+βln(x)。现在,如果我们创建一个新坐标系,其坐标轴为 u=ln⁡(x)u = \ln(x)u=ln(x) 和 v=ln⁡(y)v = \ln(y)v=ln(y),我们的方程就变成了 v=βu+ln⁡(α)v = \beta u + \ln(\alpha)v=βu+ln(α)。这是一条直线的方程!在 (x,y)(x, y)(x,y) 世界中弯曲的非线性关系,在 (u,v)(u, v)(u,v) 世界中被“拉直”成了一个简单的线性关系。

我们甚至可以更进一步。一个更复杂的模型,比如 y=αxβeγxy=\alpha x^{\beta}\mathrm{e}^{\gamma x}y=αxβeγx,无法在二维空间中被拉直成一条线。但如果我们进入一个三维特征空间,坐标为 (u1,u2,v)=(ln⁡x,x,ln⁡y)(u_1, u_2, v) = (\ln x, x, \ln y)(u1​,u2​,v)=(lnx,x,lny),关系就变成了 v=ln⁡α+βu1+γu2v = \ln \alpha + \beta u_1 + \gamma u_2v=lnα+βu1​+γu2​。这是三维空间中一个平面的方程。

这是一个深刻的思想。数据点可能生活在一个高维的“环境”空间中,但支配它们的关系将它们约束在一个更简单、更低维的结构上。我们称这个底层结构为​​数据流形​​。作为数据科学家,我们的首要任务常常是找到正确的“镜头”,即正确的坐标系,使这个流形的形状显现出来。

寻找数据的自然轴

假设我们有一团数据点云。它可能看起来像一群蜜蜂,或者一个扁平的椭圆。这团云是否存在一个“自然”的坐标系?如果它是一个椭圆,我们直观上会说最好的坐标轴是它的长轴和短轴——也就是它伸展得最开和最窄的方向。这正是数据分析的主力工具——​​主成分分析(PCA)​​——所做的事情。

PCA是一种寻找数据中最大​​方差​​方向的算法。想象一个描述数据方差的二次型,比如 q(x1,x2)=5x12−4x1x2+8x22q(x_1, x_2) = 5x_1^2 - 4x_1x_2 + 8x_2^2q(x1​,x2​)=5x12​−4x1​x2​+8x22​。交叉项 −4x1x2-4x_1x_2−4x1​x2​ 告诉我们原始坐标轴 x1x_1x1​ 和 x2x_2x2​ 并非此数据的“自然”轴;数据云是倾斜的。PCA通过旋转坐标系到新的坐标轴 (y1,y2)(y_1, y_2)(y1​,y2​),使得在新坐标系中,二次型没有交叉项:q(y1,y2)=λ1y12+λ2y22q(y_1, y_2) = \lambda_1 y_1^2 + \lambda_2 y_2^2q(y1​,y2​)=λ1​y12​+λ2​y22​。这些由数据协方差矩阵的特征向量给出的新坐标轴就是主成分。它们指向最大方差的方向。最大的特征值 λ1\lambda_1λ1​ 告诉你沿着最重要方向 y1y_1y1​ 的方差。

因此,PCA为我们提供了一种为数据找到最佳拟合直线、平面或更高维线性子空间的方法。它是揭示数据集线性几何的终极工具。它的核心思想——找到使某个量最小化或最大化的方向——无处不在,是如此基础。例如,通过点云找到最佳拟合平面,等价于找到与该平面垂直且方差最小的方向。这个方向就是具有最小特征值的主成分。

当几何学带来麻烦

到目前为止,似乎我们只需要找到正确的线性变换,一切都会变得简单。但几何学总有办法捉弄我们。我们数据点的布局本身就可能与我们的算法作对。

想象一下,你正试图通过拟合一个形如 z=c0+c1x+c2y+c3x2+c4xy+c5y2z = c_0 + c_1x + c_2y + c_3x^2 + c_4xy + c_5y^2z=c0​+c1​x+c2​y+c3​x2+c4​xy+c5​y2 的多项式曲面来为一个景观建模。你派出测量员去收集高度测量值 (xi,yi,zi)(x_i, y_i, z_i)(xi​,yi​,zi​)。现在,假设你的测量员出于某种原因,在一个完美的圆上收集了他们所有的数据,比如说,沿着一个半径为1的圆形湖泊的边缘。当你试图求解系数 cjc_jcj​ 时,你的计算机程序可能会崩溃或给出无意义的结果。为什么?

因为对于你收集的每一个数据点,几何关系 xi2+yi2=1x_i^2 + y_i^2 = 1xi2​+yi2​=1 都成立。你的模型包含了 x2x^2x2、y2y^2y2 和一个常数项(也就是 111)。你采样点的固定几何形状在你的基函数之间造成了线性相关:x2x^2x2 基函数的值加上 y2y^2y2 基函数的值总是等于常数 111 基函数的值。你方程组中的列不再是独立的,问题变得不适定,或者用数值术语来说,是​​病态的​​。如果你的所有点都位于一条直线上,比如 y=xy=xy=x,也会发生同样的灾难。那么基函数 xxx、yyy、x2x^2x2、xyxyxy 和 y2y^2y2 会变得冗余,坍缩成只有 xxx 和 x2x^2x2。

这是一个至关重要的教训。一个算法的成功不仅取决于算法的设计,还取决于算法的假设与数据的内在几何之间深层次的和谐。当数据采样的几何形状在算法的假设空间中产生冗余时,系统就会崩溃。

流形上的旅程

最引人入胜的情况出现在数据流形无法通过简单的线性变换“拉直”时。最著名的例子是​​瑞士卷​​。想象一张二维纸片,上面分布着数据点,这张纸片在三维空间中被卷成一个螺旋。

如果我们对它应用PCA会发生什么?PCA是彻头彻尾线性的;它寻找最佳的平面来投影数据。当它看到瑞士卷时,它看到的是一个长、宽、厚的物体。它的主成分将指向这三个欧几里得方向。将数据投影到最佳拟合的二维平面上,就像用泛光灯照射瑞士卷并观察其阴影。所有卷层都坍缩在一起。在原始纸片上相距很远但在卷的相邻层上的两个点,将被映射到彼此的正上方。PCA完全没能“展开”流形,揭示其真实、简单的二维本质。

PCA犯的错误在于它只理解​​欧几里得距离​​——即穿过三维环境空间的直线距离。要理解流形,我们需要考虑​​测地线距离​​——即在保持在流形表面上的情况下可以行进的最短距离。这就像一只鸟在两座山峰之间飞行(欧几里得距离)与一个徒步者在它们之间行走路径(测地线距离)的区别。

这一洞见是一整类被称为​​流形学习​​的算法的关键。像​​Isomap​​这样的方法首先构建一个连接数据中邻近点的邻域图,创建一种近似流形的“道路网络”。然后,它们计算沿该图的最短路径距离,以估计所有点对之间的测地线距离。最后,它们生成一个低维地图,通过排列点的位置,使其新的欧几里得距离尽可能地与旧的测地线距离相匹配。这就是它们成功“展开”瑞士卷或“拉直”螺旋的方式。

现代数据地图集

这种保留某种“距离”或“邻近性”概念的强大思想,是现代可视化算法如​​t-SNE​​和​​UMAP​​的核心。它们就像是复杂的地图绘制师,每一位对于何为一张好地图都有着不同的哲学。

​​t-SNE(t-分布随机邻域嵌入)​​是局部细节的大师。它的哲学是概率性的:它观察每个点及其在高维空间中的最近邻,并试图创建一个二维地图,在地图上这些相同的邻域关系得以保留。它执着于确保如果点B在高维空间中是点A的近邻,那么在地图上它仍然是近邻。这使得它在将数据分离成紧密、明确的簇方面表现出色。然而,由于其对局部结构的痴迷,它常常完全牺牲了全局几何。t-SNE图中一个簇的大小以及两个簇之间的距离,在很大程度上是没有意义的。

​​UMAP(均匀流形近似与投影)​​采用了一种更为平衡的方法,其基础是数学中的​​拓扑学​​领域,即研究形状和连通性的学科。它同样从构建邻域图开始,但它使用这个图来构建流形的一种“模糊”的拓扑表示。其目标是创建一个具有相同基本拓扑结构的低维地图。这使得它在保留局部邻域方面与t-SNE同样出色,但在保留路径和连续轨迹等全局特征方面却表现得非常出色。

当应用于真实的生物数据时,这种拓扑方法的威力惊人地清晰。考虑来自一群正在经历细胞周期的细胞的单细胞数据。这是一个连续的过程,同时也是循环的——一个处于周期末端的细胞与一个处于周期开始的细胞非常相似。其底层的拓扑结构是一个圆。当我们应用UMAP时,它“看到”了这种拓扑结构,并将数据嵌入为二维空间中一个美丽的环状结构。相比之下,来自正在经历线性分化过程的细胞(从干细胞到最终成熟状态)的数据,具有线段的拓扑结构。UMAP忠实地将其映射为一条线性路径。该算法已成为观察生命隐藏几何的显微镜。

几何作为引导之手

我们能做的仅仅是观察数据的几何形状吗?我们能否用它来构建更好的预测模型?答案是响亮的“是”。

想象一下,你有一些带标签的数据点(例如,“健康”对“患病”)和一片广阔的未标记数据海洋。这些未标记数据并非无用!它可以用来绘制数据流形的地形。然后我们可以告诉我们的学习算法:“我希望你找到一个决策边界,但你必须尊重地形。这个边界不应在短的测地线距离上发生剧烈变化。” 这就是​​流形正则化​​背后的思想。未标记数据的几何形状提供了一种​​归纳偏置​​,一只温和的引导之手,将可能解的空间约束在那些相对于数据内在几何是“平滑”的解上。这通常会产生能够从稀疏标记数据中更好地泛化的模型。

最后,让我们考虑分类任务。当分离两个点云时,最有趣的几何位于它们之间的​​边界​​上。​​支持向量机(SVM)​​是一种完全专注于此边界几何的算法。其目标是找到一个与两个类别都尽可能远的分割超平面——它最大化了“间隔”或空白空间。而令人惊奇的是,这个最优超平面完全由少数几个恰好位于这个间隔边缘的数据点所定义。这些点被称为​​支持向量​​。整个全局决策边界都由这些定义了类别分离局部几何的少数关键点所支持和决定。

从拉直曲线到绘制细胞生命的拓扑结构,数据几何的原理为理解数据如何结构化以及算法如何与该结构互动提供了一种统一而优美的语言。它教导我们不要将数据看作静态的数字表格,而是一个动态的景观,充满了形状、路径和边界,随时准备向那些知道如何观察的人揭示其秘密。

应用与跨学科联系

在遍历了数据几何的原理之后,我们可能会问自己:这仅仅是一种美丽的数学抽象,一个优雅但遥不可及的思想画廊吗?答案是响亮的*“不”*。当我们停止将数据仅仅视为数字表格,而开始将其看作一个有形状、纹理和路径的景观时,我们就解锁了一种极其强大的新思维方式。这种几何视角并非数学家的专属工具;它是一种统一的语言,在生物学、人工智能和生态学等截然不同的领域引发了革命。它让我们能够提出更深层次的问题,并惊人地找到那些先前隐藏在众目睽睽之下的答案。

让我们开始一次对这些应用的巡礼,不把它当作一份枯燥的目录,而是一系列的探索,去看看数据的几何学是如何积极地重塑我们的世界。

解码生命的蓝图

数据几何学的影响,可能在现代生物学中最为显著。“中心法则”告诉我们,一个细胞的身份和功能取决于其成千上万个基因中哪些是活跃的,或称“表达的”。我们现在可以测量单个细胞中每个基因的表达水平,从而在20000维的“基因表达空间”中产生一个点。一次实验可以为我们提供成千上万个这样的细胞,形成一个巨大的点云。这片云能告诉我们什么?

想象一下研究干细胞如何成熟为神经元。这不是一个瞬间发生的事件,而是一个连续的转变过程。随着细胞分化,其基因表达谱平滑地变化。在我们的高维空间中,细胞描绘出一条路径。所有在这一旅程中不同时刻被捕捉到的细胞集合,形成了一个“数据流形”——一条蜿蜒的一维曲线,穿梭于数千个维度之中。数据几何学的深刻见解在于,我们可以重构这一旅程。通过构建一个连接具有相似表达谱的细胞的邻域图,我们可以近似底层的流形,并沿着发育路径对细胞进行排序。这种推断出的排序,被称为​​伪时间​​,是生物进程的一种几何投影,一个以转录变化而非秒和分钟计时的时钟。

当然,这并不像连接点那么简单。在这个高维空间中,欧几里得距离可能会产生误导;在环境空间中相距很远的两个点,如果沿着流形的蜿蜒路径走,可能实际上非常接近。流形学习的早期先驱者们正面临着这个问题:如何找到点之间“真实”的内在距离?一个优雅的解决方案是多维标度分析(MDS)。如果你能首先计算出成对的测地线距离——即沿着流形的最短路径,或许可以通过邻域图中的最短路径来近似——那么你就可以寻找一个能最好地保留这些内在距离的低维欧几里得嵌入。这就像小心翼翼地展开一卷皱巴巴的卷轴来阅读写在上面的文字。

然而,自然界的故事往往比一条单一、简单的路径更为复杂。考虑将皮肤细胞重编程回干细胞的过程。这不是一个平滑、有保证的过渡。这是一个随机且低效的过程,大多数细胞会失败,少数细胞会经历一个剧烈的、几乎是瞬间的“跳跃”到一个多能态。在数据景观中,这表现为两个不相连的大陆:一个大的代表起始细胞,另一个小的、遥远的代表成功重编程的细胞,中间是稀疏的“海洋”。一个假设存在单一连续路径的朴素流形算法会在这里惨败,它会通过这片空白区域画出一座虚构的大陆桥。这里需要更先进的几何工具。一些方法将该过程建模为每个状态内部连续演化和状态之间离散跳跃的混合体。另一些方法则借鉴物理学和经济学的数学知识,将问题重构为最优传输问题:如何最有效地将细胞群体的“质量”从第0天的分布移动到第12天的分布,即使是跨越几何鸿沟。这使我们能够规划出命运,而不受字面上的几何连通性的约束。

那么,究竟是什么塑造了这些数据流形呢?答案往往在于底层的动力学。基因之间相互开启和关闭的复杂舞蹈,由一个高维微分方程组描述。物理学和工程学的原理告诉我们,在许多这样的系统中,存在着显著的时间尺度分离。大多数变量变化非常快,但少数“慢”变量支配着长期行为。快变量迅速稳定在一个由慢变量定义的低维表面上——即​​慢流形​​——然后系统的状态会懒洋洋地沿着这个表面爬行。这个由系统内部动力学决定的慢流形,正是我们在实验中观察到的数据流形。通过识别这些慢坐标,我们可以将一个由100个相互作用的基因组成的令人困惑的复杂网络,简化为一个能够捕捉细胞命运决定本质(例如从静止(上皮)状态到迁移(间充质)状态的转变)的简单双变量模型 [@problem-id:2782488]。数据的几何形态是细胞物理学的直接回响。

几何学的视角甚至正在改变我们对整个生态系统的理解。当我们研究肠道中的微生物群落时,我们对其DNA进行测序以找出不同物种的相对丰度。这些数据是​​成分数据​​:这些数字是必须总和为1的比例。它们不生活在标准的欧几里得空间中,而是生活在一个称为单纯形的几何对象上。如果将这些数据当作欧几里得数据处理,会导致虚假的关联和错误的结论。Aitchison几何提供了正确的几何框架,它使用中心对数比变换将数据从单纯形转换到标准的欧几里得空间。在这个新空间中,距离是有意义的,方差可以用PCA等工具正确分析,数据的几何形状也得到了尊重。

教会机器看懂数据的形状

如果说生物学家用几何学来理解数据,那么机器学习从业者则用它来利用数据。其目标是构建能够从少数例子中泛化,对新的、未见过的数据进行预测的模型。流形假设——即真实世界的数据位于或接近一个低维流形——是这一努力的基石。

考虑一个简单的分类问题:圆内的点属于A类,而环绕它的圆环上的点属于B类。一个只能画直线的简单线性分类器注定会失败。这就是​​核技巧​​的魔力所在。核函数,例如高斯径向基函数(RBF),是一个衡量点之间“相似性”的函数。通过使用核函数,支持向量机(SVM)将数据隐式地映射到一个维度极高的特征空间中。在这个新空间里,几何形状被以恰当的方式扭曲:纠缠在一起的圆环和圆盘可以变成两个分离良好、几乎是平坦的簇。现在,一个简单的超平面就可以轻易地将它们分开,这对应于原始空间中一个复杂的圆形边界。机器并没有学会圆的显式方程;它学会了一种使问题变得简单的几何变换。

这种变换是如何工作的?秘密在于核的Gram矩阵的谱——即特征值和特征向量。对于一个给定的数据集,其Gram矩阵的特征向量代表了通过该核的镜头看到的*数据的“自然”坐标轴。一个精心选择的核,比如具有合适带宽 σ\sigmaσ 的RBF核,其主导特征向量将大致为常数,而第二个特征向量对于一个簇是正的,对于另一个簇是负的。这第二个特征向量本身就是簇的分配!这就是​​谱聚类​​的本质。通过改变核或其参数,我们改变了几何形状,从而改变了数据上哪些“平滑函数”(即特征向量)被强调,这为我们提供了组织和理解数据结构的不同方式 [@problem-id:3117769]。

现代深度学习可以被看作是将这一思想推向了逻辑的极致。深度神经网络不是使用固定的核来执行一次隐式的几何变换,而是逐层学习一整套显式的变换。例如,一个残差网络(ResNet)可以通过几何的视角得到惊人清晰的解释。ResNet的每个块都迈出一小步,微调数据点的表示。如果数据位于一个流形上,我们可以将其视为一种沿着流形追踪路径的数值方案。理想的步长应该是一条测地线,在流形内部移动。然而,一个简单的ResNet块是沿着切线方向迈出一步。网络路径与真实测地线路径之间的偏差——每一步的误差——与流形的曲率成正比。如果流形高度弯曲,网络的表示会迅速偏离,导致性能不佳。这为我们提供了一个深刻的几何直觉,解释了为什么可能需要非常深的网络(以便在弯曲的流形上走许多小步),以及架构选择如何与数据本身的内在形状相关。

这种几何观点也阐明了半监督学习中的前沿技术,在这种情况下,我们有大量的未标记数据和极少数的标记样本。未标记数据如何提供帮助?通过揭示流形的形状。像“Mixup”这样的技术通过要求模型对已知数据点之间插值的点产生平滑的输出来对模型进行正则化。但这引出了一个微妙的几何问题:如果我们在一个弯曲的流形上(比如圆的弦)对两个点进行线性插值,插值点就不再位于流形上。我们正在要求模型去理解它从未见过的空白区域中的点。几何上的解决方案是双重的:要么我们设计神经网络来学习一种能够“拉平”流形的表示,使线性插值变得有意义;要么我们仅将插值限制在非常近的邻居之间,确保我们短而直的步长能够很好地近似沿着流形的弯曲路径。

从一个活细胞的内部运作到人工智能的前沿,传达的信息是相同的。数据有形状。这种形状不是人为产物或麻烦,而是一个基本特征,携带着关于生成它的过程的深刻信息。通过拥抱几何学的语言,我们正在学习阅读这些隐藏的结构,从而改变我们发现、预测和理解的能力。