重新组合稀有值

数据挖掘 r 数据集
2022-03-08 04:50:32

我有一个名为item_colour的列,它描述了我的数据集中产品的颜色。

有 85 种颜色,其中一些颜色是独一无二的,或者它们代表数据的一小部分(我有 100,000 个观察值)。例如,只有一种“杏仁”颜色或只有两种“天蓝色”。我想重新组合稀有值并将它们组合成一个称为“其他颜色”的组。

我怎样才能找到重新组合它们的阈值?例如,将值小于 50 左右的颜色组合在一起。

PSI 正在与 R 合作

1个回答

这将是一种没有固定规则的情况。一个重要因素是颜色差异对问题的其他部分有多大意义。例如,如果颜色在监督学习/预测场景中具有低相关性/影响,并且数据集嘈杂,那么您将需要合并更多颜色(占总数的较高比例)以减少可能分配重要性的采样偏差效应颜色并增加测试和生产中的错误率。

最安全的方法是将颜色组合阈值视为模型构建过程的超参数,并测试它会产生什么差异。如果对模型有效性的影响很小或没有影响,那么更高的阈值可能纯粹有助于减少模型中的参数数量 - 减少用于训练和运行它的资源。

如果这看起来很耗时,那么凭感觉选择一些东西(例如,您在数据集中选择小于 50 的计数的想法)通常不会太糟糕,至少一开始是这样。如果模型有问题,您可以返回并重新评估您的选择。

特征工程的另一种可能性是使用特定颜色的稀有性作为附加特征。因此,除了流行颜色的类别和“其他颜色”类别之外,还要添加一个实数值“颜色频率”=在训练集中观察到的该颜色的比率。这是否有用将取决于问题,但它可能有助于在合并具有更广泛稀有值的类别时解决一些丢失的信息,假设不寻常的颜色表示任何东西(它们可能没有)。