如何定义机器学习以涵盖聚类、分类和回归?

人工智能 机器学习 分类 定义 回归 聚类
2021-11-17 18:59:31

如何定义机器学习以涵盖聚类、分类和回归?是什么将这些问题联系在一起?

1个回答

我报告了机器学习 (ML) 的三个定义,并且我还解释了在这个答案中 ML 可以分为多个子任务或子类别然而,为什么分类、回归或聚类可以被认为是机器学习任务或者可以用 ML 算法/程序来解决可能并不总是很清楚,所以让我解释一下为什么这些任务可以用 ML 来解决,基于 Tom Mitchell 的定义为了完整性,我在下面报告了一个 ML 算法。

据说计算机程序可以经验中学习 E关于某类任务 T绩效衡量 P, 如果它在任务中的表现T,如测量P, 随着经验的提高E.

所以,根据这个定义,要让计算机程序成为“机器学习者”,我们需要识别E,T, 和P,并表明计算机程序改进了E在执行任务时T, 根据P.

对于分类回归的情况(这些是任务,这只是问题的同义词),假设我们给定了训练标签数据集D={(x1,yi),,(xN,yN)}N元组(xi,yi), 在哪里xi是程序(或模型)的输入,并且yi标签,又名,因此名称分类)是程序应该产生的输出。在分类的情况下,yi是离散集的一个元素,例如{0,1}在二元分类的情况下,而在回归的情况下,yiR是一个实数。

所以,在这种情况下,经验ED(训练标记数据集)。任务T分类还是回归,取决于是否yi属于离散或连续空间。绩效衡量P可以是例如交叉熵(通常用于解决分类任务)或均方误差(通常用于解决回归任务)。(我不会在这里回忆这些性能度量的定义:您可以阅读有关 ML 的书了解详细信息)。

所以,我们确定了E,TP. 现在,我们还需要争论为什么一个程序的性能是由P会改善E. 假设您正在使用经过梯度下降训练的神经网络来解决这些任务。经过一个 epoch/iterations 的梯度下降,损失会更小,因此程序的性能会更高。因此,根据 Mitchell 对 ML 的定义,这确实是一个机器学习器。

集群的情况下(任务T),唯一的区别是数据集D(即经验E) 是未标记的,即我们没有标签,但我们只得到输入,如您所知,目标是根据相似性的某种概念,根据这些输入的相似性对这些输入进行分组,这是您的绩效衡量标准P.

我在另一个答案中报告的 ML 的其他定义也与 Mitchell 的定义一致。更准确地说,这些定义中的大多数都基于 ML 算法是一种“在数据中寻找模式”的算法的想法。为了解决分类、回归和聚类任务/问题,ML 算法/程序需要在数据中找到模式(显式地,如在聚类的情况下,或间接地,如分类的情况下),以便程序的性能有待提高。

此外,鉴于您在现已删除的评论中提出了这一点,我认为机器学习的定义并不一定意味着预测(即使用模型来预测有关未来数据的某些事情),但是,是的,ML 是常用于预测。

同样重要的是要注意,当有人在没有更多细节或信息的情况下说“机器学习”时(就像您在帖子/问题中所做的那样),可以参考

  1. 研究和应用机器学习算法的研究领域/领域,或
  2. ML 算法(有时是模型)。

Mitchell 的定义是对算法/程序被称为 ML 算法/程序意味着什么的定义。但是,我将 ML 定义为一个字段紧随其后的是 ML 算法的定义。

最后,我们可以说,可以以可以应用 ML 算法的方式表述的问题是 ML 问题。请注意,Mitchell 的定义在任何地方都没有提到“ML 问题”,而只是提到了“问题”,所以这不是一个循环定义。因此,我们可以说分类、回归和聚类是“ML 问题”,因为它们可以用 ML 算法解决。更一般地,所有这三个问题都可以被认为是“函数逼近”问题,即在所有这些情况下,解决方案都是函数。