机器学习基础:分类vs回归

经常看到这样的问题:“如何计算回归问题的准确度?”像这样的问题反映了没有真正理解分类和回归之间的区别,以及测量的准确度是什么。

这是分类和回归问题之间的一个重要区别。从根本上说,分类就是预测一个标签,而回归则是预测一个数量。

在本文中,你将发现分类和回归之间的区别。

看完文章后,你将会知道:

  • 预测模型是关于从输入到输出学习映射函数的问题,称为函数逼近。

  • 分类是预测离散类标签输出的问题。

  • 回归是预测连续数量输出的问题。

让我们开始吧。

文章概述

本文分为5部分,它们是:

  1. 函数逼近

  2. 分类

  3. 回归

  4. 分类与回归

  5. 分类与回归问题之间的转换

函数逼近

预测建模是用历史数据来建立一个模型来预测新数据,针对我们没有答案的问题。

有关预测建模的更多信息,请参见:

  • 简要介绍预测建模

预测建模可以描述为从输入变量(x)到输出变量(y)逼近映射函数(f)的数学问题。这称为函数逼近问题。

建模算法的工作是在我们可以提供可用的时间和资源的情况下,找到最好的映射函数。

有关应用机器学习中的逼近函数的更多信息,请参见:

  • 机器学习算法如何工作

一般来说,我们可以把所有函数逼近任务划分为分类任务和回归任务。

分类预测模型

分类预测建模是将映射函数(f)从输入变量(x)逼近到离散输出变量(y)的任务。

输出变量通常称为标签或类别。映射函数预测给定观测值的类或类别。

例如,文本电子邮件可以分为两类:“垃圾邮件”和“非垃圾邮件”。

  • 分类问题要求将实例分为两个或多个类中的一个。

  • 分类可以有实值或离散的输入变量。

  • 两类问题通常被称为二类或二元分类问题。

  • 多于两个类别的问题通常被称为多类别分类问题。

  • 一个例子被指派多个类的问题被称为多标签分类问题。

分类模型通常将连续值预测为属于每个输出类别的给定示例的概率。 概率可以被解释为属于每个类别的给定例子的可能性或置信度。 可以通过选择具有最高概率的类别标签将预测概率转换为类别值。

例如,特定的文本电子邮件可能被指定为“垃圾邮件”的概率为0.1,“非垃圾邮件”的概率为0.9。 通过选择“非垃圾邮件”标签,我们可以将这些概率转换为类标签,因为它具有最高的预测可能性。

评估分类预测模型的技巧有很多种方法,但最常见的方法是计算分类准确度。

分类准确率是所有预测中正确分类的百分比。

例如,如果一个分类预测模型做了5个预测,其中3个是正确的,2个是不正确的,那么基于这些预测的模型的分类准确性将是:

accuracy = correct predictions / total predictions * 100
 accuracy = 3 / 5 * 100
 accuracy = 60%

能够学习分类预测模型的算法被称为分类算法。

回归预测建模

回归预测建模是将输入变量(X)映射到连续输出变量(y)的映射函数(f)的任务。

连续输出变量是一个实数值,例如整数或浮点值。 这些往往是数量,如金额和大小。

例如,一所房子可能会以特定的美元价值出售,可能在$ 100,000到$ 200,000的范围内。

  • 回归问题需要预测数量。

  • 回归可以具有实值或离散的输入变量。

  • 多输入变量的问题通常称为多元回归问题。

  • 输入变量按时间排序的回归问题称为时间序列预测问题。

由于回归预测模型预测一个数量,所以该模型的技巧必须作为这些预测中的一个误差来报告。

估计回归预测模型的技巧有许多方法,但最常见的可能是计算均方根误差,缩写为首字母缩略词是RMSE。

例如,如果一个回归预测模型做了2个预测,其中1.5的期望值是1.0,另一个是3.3,期望值是3.0,那么RMSE是:

RMSE = sqrt(average(error^2))
 RMSE = sqrt(((1.0 - 1.5)^2 + (3.0 - 3.3)^2) / 2)
 RMSE = sqrt((0.25 + 0.09) / 2)
 RMSE = sqrt(0.17)
 RMSE = 0.412

RMSE的一个优点是错误分数的单位与预测值的单位相同。

能够学习回归预测模型的算法被称为回归算法。

一些算法的名称中包含“回归”这个词,如线性回归和逻辑回归,因为线性回归是一种回归算法,而逻辑回归是一种分类算法,这令人感到困惑。

分类与回归

分类预测建模问题不同于回归预测建模问题。

  • 分类是预测离散类标签的任务。

  • 回归是预测连续数量的任务。

分类和回归算法之间有一些重叠,例如:

  • 分类算法可以预测连续值,但是连续值是以类标签的概率的形式。

  • 回归算法可以预测离散值,但离散值以整数形式表示。

一些算法可用于分类和回归的小修改,例如决策树和人工神经网络。有些算法不能或不能很容易地用于这两种问题类型,例如用于回归预测建模的线性回归和用于分类预测建模的逻辑回归。

重要的是,我们评估分类和回归预测的方法各不相同,也不重叠:

  • 分类预测可以使用准确性进行评估,而回归预测则不能。

回归预测可以使用均方根误差进行评估,而分类预测则不能。

分类和回归问题之间的转换

在某些情况下,将回归问题转换为分类问题是可能的。例如,要预测的数量可以转换成离散的量。

例如,连续0至100美元之间的金额可以转换成2个量:

  • 第0类:0至49美元

  • 第1类:50至100美元

这通常被称为离散化,产生的输出变量是一种分类,其中标签有一个有序的关系(称为序数)。

在某些情况下,分类问题可以转化为回归问题。 例如,标签可以被转换成连续的范围。

有些算法通过预测每一个类的概率,从而依次缩放到特定的范围:

quantity = min + probability * range

另外,可以将类值排序并映射到连续范围:

  • 0到49美元为第1类

  • 50到100美元为第二类

如果分类问题中的类别标签不具有自然的序数关系,则从分类到回归的转换可能会导致令人惊讶或糟糕的性能,因为该模型可能会从输入到连续输出范围学习错误或不存在的映射。

进一步的阅读

如果你想深入了解,本节将提供更多有关该主题的资源。

  • 简要介绍预测建模

  • 机器学习算法如何工作

总结

在本教程中,你了解了分类和回归问题之间的区别。

具体来说,你了解到:

  • 预测建模是关于从输入到输出学习映射函数的问题,称为函数逼近。

  • 分类是预测离散类标签输出的问题。

  • 回归是预测连续数量输出的问题。

作者信息

Dr. Jason Brownlee 是一名机器学习从业者,学术研究人员,致力于帮助开发人员从入门到精通机器学习。

文章原标题《Difference Between Classification and Regression in Machine Learning》

作者:Dr.Jason Brownlee 译者:董昭男

相关推荐