
拓扑数据分析与机器学习的相互促进
拓扑数据分析(TDA)和机器学习(ML)的区别与联系让不熟悉TDA的人扑朔迷离,本文通过两个定义,解释了TDA和ML的不同,以及TDA和ML如何相互促进,为何会相互促进,并通过一个设备故障分析的案例(5000个样本,复杂度适中,48个连续特征)来进行证明。
对拓扑数据分析(TDA)不熟悉的人,经常会问及一些类似的问题:“机器学习和TDA两者之间的区别?”,这种问题的确难以回答,部分原因在于你眼中的机器学习(ML)是什么。
下面是维基百科关于机器学习的说明:
机器学习研究算法学习和构造,能从数据中进行学习并做出预测。这种算法通过从输入实例中建立模型,目的是根据数据做出预测或决策,而不是严格地遵循静态程序指令。
大多数人可能会认为TDA是机器学习的一种形式,但我觉得,在这些领域工作的人可能都不会赞成这一说法。
机器学习的具体实例比任何一个TDA的例子更像机器学习。同样,TDA的实例比任何一个机器学习的例子看起来更像是TDA。
为了解释TDA和ML两者的不同,更重要的是证明TDA和ML是如何相互促进以及为何会相互促进,我将给出两个非常简单的定义,然后用一个真实的实例进行说明。
定义ML:假定一个数据参数模型,并根据数据来学习模型参数的任意方法。
定义TDA:只把数据点间的“相似性”概念用来构建数据模型的任意方法。
在这种观点中,ML模型更加具体和详细,而且模型的成功取决于它对未知数据的拟合程度。它的优势是,当数据能很好的拟合模型时,其结果尤为突出——几乎能够完美的理解那些有明显噪声的数据。
TDA的优点是它的通用性。
对于TDA,任何相似性概念都可以拿来使用。相反,对于ML,你需要一个(或更多)强化的相似性概念,与其它任何方法一起发挥作用。
例如,给你一长串的名字,你是无法根据它来预测出身高和体重。你需要更多的信息。
主要因素是拓扑算法对小误差的容忍度很大——即便你的相似性概念在某种程度上存在缺陷,只要它存在“几分相似”,TDA算法一般就会产生一些有用的东西。
TDA方法的通用性还有另一个优于ML技术的地方,当ML方法拟合效果很好的时候,TDA方法仍然有效——即ML方法经常创建详细的能生成相似性概念的内部状态,使TDA和ML能够更深层次的洞悉数据。
听起来还不错,但是这通常会走向极端(或者如果你觉得小误差的容忍度偏低,或是模糊度不够),这意味着一切都有可能发生。
那么,来举个特例吧。
随机森林分类器是一个组合学习方法,在训练过程中,建立大量的决策树并在这些“森林”(决策树集合)的基础上使用“多数规则”对非训练数据进行分类。
尽管建立树的过程相当有趣并且也很灵活,但它们没有相关的细节。对于随机森林,你只要记住,它通过把一系列决策树的集合应用到已知数据点上,然后返回一系列的“叶节点”(决策树中,到输入”下落”的叶子)。
在正常的操作下,每棵树的每个叶子节点都有一个相关的类别C,可以解释为“当一个数据点位于树的该节点时,在很大程度上它就属于该类别C”。随机森林分类器通过从每棵树上统计“叶节点类别投票总数”来选出胜出者。尽管在大规模的数据类型上高度有效,但该过程会丢掉大量的信息。
如果你关心的是对数据类别的最佳猜测,那么你不会想看到额外的信息,但有时候你会需要更多的信息。这种“无关的”信息可以转换成一个距离函数,通过把两个数据点之间的距离定义为它们各自“叶节点”之间差异的倍数。
两个数据点的距离函数是一个很好的度量(事实上,是在转换后的数据集上的汉明距离),而且这样我们可以把TDA应用到上面。
例如,让我们来看看从下面的样本中随机选取的5000个样本点
该数据集复杂度适中,有48个连续特征,这些特征似乎是硬盘驱动中无法解释的电流信号。数据还包括一个类别列,它有11个可能的取值,描述的是光盘驱动组件不同的状况(故障模式,也许吧?)。很明显可以在特征列上计算欧几里得距离,然后通过类来给图形着色。由于我们对于特征项一无所知,所以首先要尝试的事情就是查看邻近晶状体情况。其结果是一个普通的斑点。
这让人有些失望!
接着,使用一些内部的调试功能,我看到邻近晶状体的一个散点图,我知道为什么如此糟糕了——它看起来像是一颗圣诞树。
很显然,在欧氏度量中没有类的定位。
然而,如果你在数据集上建立一个随机森林,分类器会有一个非常小的out-of-bag误差,这强烈的表明了分类器性能的可靠性。
因此,我尝试使用随机森林的汉明距离来作图,这种度量下的邻近晶状体如下图所示:
这看起来很不错。只要确定我们也看到了邻近晶状体的散点图就行,上图的结果表明:
很明显,从线图和散点图可以看出,随机森林“看”复杂结构的能力要低于分类的标准水平,并被TDA给证实了。原因就是RF没有充分使用“不相关的”数据——而TDA充分的利用了这些数据并且从这些信息中得到了大量的好处。
然而,一些人可能会说,这种结构是虚构的——这也许是我们在系统的某处使用算法人工生成的?在这种数据集下,我们不能真正识别它,因为对于该类别的其它信息我们一无所知。
不过,基于设备老化时收集的数据,我们在消费者数据上使用随机森林来度量分析成千上万的复杂设备可能的故障模式。类别是基于设备因为不同的原因(并不是所有的原因都是由故障导致的)而返厂的事后分析完成的。
在这个例子中,我们发现随机森林度量标准在故障识别层面做的很好,并且我们得到的图片特征和上面这些也相似。更重要的是,我们发现在给定的故障模式中的特定组,有时有不同的原因。
在这些情况下得出的结论是:我们在使用TDA和RF时没有做进一步的空间分解,这些原因可能会更难发现。
我们刚才看到的例子表明,TDA与机器学习可以一起使用,并且得到的效果比使用单个技术更好。
这就是我们所说的ML&TDA:同时使用更好。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
Excel 导入数据含缺失值?详解 dropna 函数的功能与实战应用 在用 Python(如 pandas 库)处理 Excel 数据时,“缺失值” 是高频 ...
2025-09-16深入解析卡方检验与 t 检验:差异、适用场景与实践应用 在数据分析与统计学领域,假设检验是验证研究假设、判断数据差异是否 “ ...
2025-09-16CDA 数据分析师:掌控表格结构数据全功能周期的专业操盘手 表格结构数据(以 “行 - 列” 存储的结构化数据,如 Excel 表、数据 ...
2025-09-16MySQL 执行计划中 rows 数量的准确性解析:原理、影响因素与优化 在 MySQL SQL 调优中,EXPLAIN执行计划是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 对象的 text 与 content:区别、场景与实践指南 在 Python 进行 HTTP 网络请求开发时(如使用requests ...
2025-09-15CDA 数据分析师:激活表格结构数据价值的核心操盘手 表格结构数据(如 Excel 表格、数据库表)是企业最基础、最核心的数据形态 ...
2025-09-15Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12CDA 数据分析师:业务数据分析步骤的落地者与价值优化者 业务数据分析是企业解决日常运营问题、提升执行效率的核心手段,其价值 ...
2025-09-12用 SQL 验证业务逻辑:从规则拆解到数据把关的实战指南 在业务系统落地过程中,“业务逻辑” 是连接 “需求设计” 与 “用户体验 ...
2025-09-11塔吉特百货孕妇营销案例:数据驱动下的精准零售革命与启示 在零售行业 “流量红利见顶” 的当下,精准营销成为企业突围的核心方 ...
2025-09-11CDA 数据分析师与战略 / 业务数据分析:概念辨析与协同价值 在数据驱动决策的体系中,“战略数据分析”“业务数据分析” 是企业 ...
2025-09-11Excel 数据聚类分析:从操作实践到业务价值挖掘 在数据分析场景中,聚类分析作为 “无监督分组” 的核心工具,能从杂乱数据中挖 ...
2025-09-10统计模型的核心目的:从数据解读到决策支撑的价值导向 统计模型作为数据分析的核心工具,并非简单的 “公式堆砌”,而是围绕特定 ...
2025-09-10CDA 数据分析师:商业数据分析实践的落地者与价值创造者 商业数据分析的价值,最终要在 “实践” 中体现 —— 脱离业务场景的分 ...
2025-09-10机器学习解决实际问题的核心关键:从业务到落地的全流程解析 在人工智能技术落地的浪潮中,机器学习作为核心工具,已广泛应用于 ...
2025-09-09SPSS 编码状态区域中 Unicode 的功能与价值解析 在 SPSS(Statistical Product and Service Solutions,统计产品与服务解决方案 ...
2025-09-09CDA 数据分析师:驾驭商业数据分析流程的核心力量 在商业决策从 “经验驱动” 向 “数据驱动” 转型的过程中,商业数据分析总体 ...
2025-09-09R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08