有没有理由将回归问题作为分类问题来解决?

机器算法验证 回归 机器学习 分类
2022-01-28 08:57:15

是否有理由将回归预测问题视为分类问题,例如,使用类来描述一年中的销售额是否为当前水平的 10%、50%、90% 或 >100%。这些事情可以很自然地从回归的结果中推断出来,但我看到人们在做这样的分类,实际上感觉更像是回归问题。

我是论坛和 ML 的新手,所以我希望在提出问题时我做的一切都是正确的 :)

4个回答

与@delaney 的回复一致:我还没有看到,我无法想象这样做的原因。

借鉴https://github.com/scikit-learn/scikit-learn/issues/15850#issuecomment-896285461中的讨论:

  • 一个人通过对响应进行分箱而丢失信息。为什么要首先这样做(数据压缩除外)?
  • 连续目标有一个顺序 (<)。(标准)分类类不(序数分类回归/分类除外)。
  • 连续目标通常具有某种平滑度:特征空间中的接近度(对于连续特征)意味着目标空间中的接近度。
  • 所有这些信息丢失都伴随着模型中可能更多的参数,例如逻辑回归的系数数量与类别数量成正比。
  • 分箱混淆了人们是在尝试预测期望/均值还是分位数。
  • 最终可能会得到一个严重(有条件地)校准的回归模型,即有偏差。(这也可能发生在标准回归技术中。)

来自V. Fedorov、F. Mannino、Rongmei Zhang “二分法的后果” (2009) doi: 10.1002/pst.331

虽然对二分结果的分析可能更容易,但当可以观察到真实结果并且“工作”模型足够灵活以描述手头的人群时,这种方法没有任何好处。因此,在大多数情况下应避免二分法。

一般来说,没有充分的理由。按照您的描述对数据进行分组意味着一些信息被丢弃了,这不是一件好事。

你看到人们这样做的原因可能是出于实际的方便。用于分类的库可能更常见且更易于访问,并且它们还会自动提供正确范围内的答案(而回归例如可以输出负值等)。

我能想到的一个稍微好一点的动机是分类算法的典型输出可以解释为类概率,它可以提供结果不确定性的度量(例如,您可以将结果读取为给出范围的 40% 概率10-20,20-30 范围为 50% 等)。当然,回归模型通常也可以提供不确定性估计,但这是许多标准工具中缺乏的特征,并且不像分类案例中那样“自动”。

除了用户 J. Delaney 和 Soeren Soerensen 的良好回答之外:这样做的一个动机可能是他们认为响应不适用于线性模型,其期望被错误地建模为预测变量的线性函数。但是还有更好的选择,例如响应转换(请参阅如何选择最佳转换以实现线性? 以及 何时(以及为什么)应该记录(数字)分布的对数?)。

但另一个更新的想法是使用序数回归用户 Frank Harrell 在这里写了很多关于此的文章,搜索。一些起点: 我应该使用哪种模型来拟合我的数据?序数和非序数、不正常和非同方差比例优势 (PO) 序数逻辑回归模型作为控制协变量的非参数方差分析 、序数分类结果分析

我经常看到的一个反例:

比例的结果(例如 10% = 2/20、20%= 1/5 等)不应通过 OLS 丢弃,而应使用指定分母的逻辑回归。即使它们有不同的方差,这也会正确地对案例进行加权。

OTOH,逻辑回归是一个适当的回归模型,尽管它主要是作为分类器教授的。所以也许这不算数。