我可以通过对类进行编码将分类问题转化为回归问题吗?

Posted

技术标签:

【中文标题】我可以通过对类进行编码将分类问题转化为回归问题吗?【英文标题】:Could I turn a classification problem into regression problem by encoding the classes? 【发布时间】:2019-12-07 15:21:10 【问题描述】:

如果所有分类标签都可以用数值表示,这是否意味着我可以通过将分类标签编码为数字来在任何分类任务上使用回归模型?

我最近正在研究一个二元分类问题,它有两种输出类型:“0”表示正数,“1”表示负数。我已经使用 Random-Forest-Classifier 来解决这个问题,但我看到其他人使用 Random-Forest-Regressor 来解决同样的问题。经过思考,这对我来说是有意义的——最终期望的输出是连续值,我可以训练一个回归模型来获得代表输出类的预测连续值。

这让我思考是否可以在其他分类任务上使用回归模型。例如:

为了对'cat'和'dog'这两个图像进行分类,我使用LabelEncoder将其编码为0和1,那么它就变成了一个回归问题。

希望我的问题很清楚,感谢您的帮助!

【问题讨论】:

标记为应在 stats.stackexchange.com 提出的问题 【参考方案1】:

不,你不能。你不能定义 Cat

【讨论】:

为什么?如果在二元因变量上建立正则回归会发生什么? 线性回归模型基于这样一个假设,即结果 Y 是连续的,存在误差(在去除了由于协变量 X_1、..、X_p 而导致的均值系统变化之后)是正态分布的。如果结果变量是二元的,则显然违反了此假设,因此,一般而言,我们可能会认为我们的推论是无效的。 我明白了,所以对于二元分类任务,输出是离散的,通过梯度下降优化模型没有意义。 “1”类不应大于“0”类,这就是为什么我们不应该在分类任务上使用回归模型。我只是看到有人在二元分类任务中使用随机森林回归树,所以我有这个问题。谢谢!

以上是关于我可以通过对类进行编码将分类问题转化为回归问题吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Python 和 Scikit 进行线性回归学习使用一种热编码?

在 sklearn 逻辑回归中使用分类数据作为特征

设计天气数据的分类问题

SVM 方法可以处理一维数据进行预测吗?

rpart:分类与连续回归量的计算时间

如何区分回归分析中的分类变量和有序变量?