数据驱动的建模和机器学习是一回事吗?

机器算法验证 机器学习 造型 术语
2022-03-17 09:36:16

我阅读了很多关于数据驱动建模和机器学习的出版物。他们中的大多数人可以互换使用该术语。那么,数据驱动的建模和机器学习实际上是一回事吗?如果不是,有哪些不被视为机器学习的数据驱动模型的例子?或者,不是数据驱动的机器学习模型的例子有哪些?

谢谢!

4个回答

“机器学习”一词在某种程度上是一个艺术术语,但它通常指的是“通过经验学习”的算法的构建。通过经验学习需要数据,所以机器学习必然是“数据驱动的”——毕竟,如果不是从数据中学习,它还能从什么中学习?

当我们提到统计学或机器学习中的“模型”时,我们实际上只是指一组假设,这些假设描述了数据的假定概率过程,以及假设的逻辑后果(例如,统计结果的分布、估计量等.)。即使是非常广泛形式的非参数模型也被认为是“模型”,因此它包含了很多内容。很难想象你如何在没有一些东西的情况下生成机器学习算法关于数据生成过程的假设,因此,人们可能可以广泛地将“建模”一词用于任何机器学习过程。有人可能会对此提出质疑,因为一些机器学习算法是广义的非参数方法,但即使在这里,我们通常也将这些称为“模型”,因此,我认为可以说机器学习方法是建立在“模型”之上的。即使是最小二乘估计这样的简单方法也是建立在基础统计模型之上的。

在机器学习中肯定存在构建甚至部署算法的情况,而不考虑设置潜在的概率假设。如果算法足够自适应(在大多数非参数模型的意义上)。在这种情况下,人们可能会争辩说该算法是“无模型的”,因为它是在不考虑任何模型的情况下创建的。即便如此,即使算法在各种情况下都能很好地工作,人们仍然会倾向于发现有些情况下它运行得很好,也有一些情况很糟糕。因此,后续分析师通常能够找出确保算法运行良好所需的假设类型在某种情况下部署时。在这种情况下,随着我们开始更多地了解算法运行良好或运行不佳的情况,“建模”逐渐赶上算法的初始“无模型”创建。所以你可以在某种意义上称一些机器学习算法为“无模型”,但建模最终赶上了我们。

鉴于这些考虑,我认为可以说所有机器学习都涉及数据驱动的建模。当然,完全不使用计算机算法(例如,用纸笔计算)也可以进行数据驱动的建模,在这些情况下,我们通常不会称其为“机器学习”。

TL;DR: IMO,数据驱动是一个更广泛的术语,但它是一个定义问题。

不同的人可能对“机器学习”和“数据驱动”这两个术语有不同的理解,所以我有点(愉快地)惊讶于这个问题还没有以“基于意见”的方式结束。既然它仍然存在,我会提出我的意见。

从历史上看,机器学习的发展是为了让机器变得“智能”,允许它们从“经验”(即数据)中学习,通常是通过模仿生物的学习方式。所以它必然是“数据驱动的”。换句话说,MLDD。

然而,一些统计学家也认为统计建模是“数据驱动的”(例如 Efron & Hastie,“计算机年龄统计推断”,第 264 页)。如果您同意这一点,并且如果您认为数据驱动的统计方法与机器学习不同,那么显然,“数据驱动”是一个更广泛的术语:DD毫升。

(就个人而言,我宁愿将“数据驱动”与“领域知识驱动”、“基于概率模型”或简单地“参数化”进行对比,但仍会导致相同的结果)

当然,在术语上存在相当大的分歧。一些统计学家认为机器学习是统计学的一个子集(大多数机器学习者会不同意)。一些机器学习者认为一些传统的统计方法,如线性或逻辑回归,是“机器学习”方法(大多数统计学家不同意)。如果您在这一点上站在统计学家一边,这些模型将是非机器学习的数据驱动模型的示例。

PS 我不同意bogovicj的评论。ML 总是构建模型,只是在某些情况下这些模型不会对用户明确。但是 ML 算法肯定会对他们学到的“事物”(例如类)进行一些内部表示,并且这些表示实际上是“模型”的同义词。

当人们交替使用数据驱动建模和机器学习时,他们通常打算让它们表示相同的意思。简单的定义可能是这样的:

数据驱动建模:使用数据导出模型的功能形式或算法参数的过程。

机器学习:当模型应用于数据时,将参数拟合到数据以最小化成本函数的过程。“学习”部分需要数据。

不是机器学习的数据驱动建模的一个示例可能是基于物理的建模。在基于物理的建模的某些情况下,将基础物理过程的结果与数据进行比较,但数据的误差不会更新模型参数。因此,该模型不是机器学习。

我认为没有任何机器学习模型不是数据驱动的。

另一个注意事项:这些阶段没有真正的定义,许多人出于自己的目的定义它们。例如,请参阅此 IBM页面

我认为由于深度学习技术,“数据驱动”一词现在变得非常流行。最大的变化是我们不再手工制作特征,而是设计帮助网络直接从数据中学习特征的架构和学习策略。这具有能够以自动方式学习给定问题的“最佳”特征的优势,而无需重新考虑这些特征的设计。例如,UNet 是非常流行的分割架构。对于给定的问题,您收集一些数据,选择最佳拟合损失函数,通常会得到很好的结果。有或没有一些迁移学习(预训练模型的微调)。

否则,机器学习是关于设计通过从数据中学习来解决问题的程序,而不是设计针对给定情况的手工算法。所以是的,所以数据驱动的建模只是机器学习的一部分。