0

我有一个仅包含 3 列的制造数据集。

Column 1. WorkStationID
Column 2. ProductID
Column 3. Error(1 or 0)

我试图将错误(1 或 0)预测为分类问题。但是有 50 个唯一的工作站和 130 个唯一的产品 ID,所以当我将它们转换为虚拟变量时,数据框变得巨大。

所以,我的问题是,降维技术是否适合虚拟变量?实际上,我只有 2 个变量(工作站和产品)听起来不需要做任何减少。或者任何特征重要性技术都适合?如果它表明 5 个不同的工作站无用,这是什么意思?

提前致谢

4

1 回答 1

1

如果您不想要太多的虚拟变量,需要考虑的一件事是二进制编码。在许多情况下,当我遇到此类问题时,我选择了二进制编码,并且大多数情况下效果都很好,因此也许值得您一试。

想象一下,你有 9 个特征,将它们从 1 标记到 9,然后对它们进行二进制编码,你将得到:

cat 1 - 0 0 0 1
cat 2 - 0 0 1 0
cat 3 - 0 0 1 1
cat 4 - 0 1 0 0 
cat 5 - 0 1 0 1
cat 6 - 0 1 1 0
cat 7 - 0 1 1 1
cat 8 - 1 0 0 0
cat 9 - 1 0 0 1

在您的情况下,如果您有 50 个工作站,则可以将 49 个功能(一个热门)减少到 6 个功能(二进制编码,因为 2 次方 6 是 64)。

完成此操作后,您还可以试用 Will Koehrsen 的特征选择器库。您可以绘制特征重要性图,看看您是否可以进一步摆脱那些不会为您的预测增加价值的特征。可能你可以从 6 个减少到更少的变量。

它通常会给出一个漂亮的条形图,帮助可视化不同特征的重要性,并让我们进一步研究这些特征。

在此处输入图像描述


PS:这是您提出的一个开放式问题,我给出的答案是基于我的经验。它没有特别的“对与错”,您只能尝试并知道它是否对您的用例有利。

于 2019-08-08T14:12:06.620 回答