【发布时间】:2021-06-16 10:42:10
【问题描述】:
我正在使用RandomForestClassifier 处理多类分类问题。目标变量 Y 仅包含 3 个值 {-1,0,1 } 之一。我知道数字编码是必要的。
但是,我想了解我是否有必要通过执行pd.get_dummies(Y) 来转换Y 以获得如下所示的指标矩阵,然后将该指标矩阵输入RandomForestClassifier?
-1.0 0.0 1.0
0 0 0 1
1 1 0 0
2 0 0 1
3 1 0 0
4 1 0 0
... ... ...
6516 1 0 0
6517 0 0 1
6518 0 0 1
6519 0 0 1
6520 1 0 0
与将未转换的目标变量Y(即一维序列)输入RandomForestClassifier 相比,这将如何影响机器学习算法?结果会不同吗?为什么?
RandomForestClassifier 在这两种不同的情况下做不同的事情吗?
推荐哪种方法(指标矩阵与未转换)?
【问题讨论】:
-
在这里进行分类,y 值被视为类标签。这里不需要对目标值进行编码。目标 y 只需为一维向量。如果它们是非数字特征,则可能只需要对这些特征进行编码。数值特征需要缩放。您可以在此处查看文档和示例:scikit-learn.org/stable/auto_examples/classification/…
-
感谢您的评论。但我注意到在这个例子中,他们会产生一个指标矩阵scikit-learn.org/stable/auto_examples/model_selection/…
-
我投票结束这个问题,因为它与 help center 中定义的编程无关,而是关于 ML 理论和/或方法 - 请参阅
machine-learning@ 中的介绍和注意事项987654324@.
标签: python scikit-learn