在Andrew Ng的一次讲座中,他提出了下面的问题是分类问题还是回归问题。答案:这是一个回归问题。
你有一大批相同的库存商品。你想预测未来三个月内这些商品的销量。
看起来我似乎遗漏了什么。根据我的理解,这应该是一个分类问题。原因是我们需要将每个商品分类为两类,即可以销售或不可以销售,这些是离散值而不是连续值。
我不确定我的理解哪里出了问题。
回答:
你的想法是你有一个包含商品及其各自特征的数据库,并希望预测每个商品是否会被销售。最终,你会简单地计算出可以销售的商品数量。如果你这样定义问题,那么它确实是一个分类问题。
然而,请注意你问题中的这句话:
你有一大批相同的库存商品。
相同的商品意味着所有商品将具有完全相同的特征。如果你设计一个二元分类器来判断一个产品是否可以销售,由于所有特征值完全相同,你的分类器会将所有商品归入同一类别。
我猜想,为了解决这个问题,你可能会访问过去5年的每月销售商品的时间序列数据。例如,然后,你需要处理这些数据并对未来进行插值。你不会单独对每个商品进行分类,而是实际计算一个数值,表示未来1、2和3个月的销售商品数量。
根据《模式识别与机器学习》(Christopher M. Bishop, 2006)所说:
像数字识别这样的例子,其目的是将每个输入向量分配到有限数量的离散类别中,这类问题被称为分类问题。如果所需的输出由一个或多个连续变量组成,那么这项任务被称为回归。
此外,理解统计学中定义的分类变量、顺序变量和数值变量之间的区别也很重要:
分类变量(有时称为名义变量)是指有两个或更多类别,但这些类别之间没有内在顺序的变量。例如,性别是一个具有两个类别(男性和女性)的分类变量,且类别之间没有内在顺序。
(…)
顺序变量与分类变量相似。两者的区别在于顺序变量之间有明确的顺序。例如,假设你有一个变量,经济状况,有三个类别(低、中、高)。除了能够将人们分类到这三个类别中,你还可以按低、中、高对类别进行排序。
(…)
数值变量类似于顺序变量,只是数值变量的值之间的间隔是等距的。例如,假设你有一个变量,如年收入,以美元计量,我们有三个人,他们的年收入分别为10,000美元、15,000美元和20,000美元。
尽管你的最终结果将是一个整数(一组离散的数字),但请注意它仍然是一个数值,而不是类别。你可以对数值进行数学操作(例如,计算下一年的平均销售商品数量,找出未来三个月的销售高峰…),但你不能对离散类别进行这样的操作(例如,手机和电话的平均值是什么?)。
分类问题是指输出为分类或顺序(离散类别,如Bishop所述)的那些问题。回归问题输出数值(连续变量,如Bishop所述)。
你的系统可能被限制为输出整数,而不是实数,但这不会改变变量的性质,仍为数值。因此,你的问题是一个回归问题。