2

我正在通过套索正则化逻辑回归分析来自 UCI 机器学习存储库的 Secom 数据集,但结果很糟糕。

https://archive.ics.uci.edu/ml/datasets/SECOM

特征:

  • 具有 590 个数字属性的 1546 个数据样本
  • 106个阳性样本(生产失败)

目标是准确预测正类,并执行特征选择。

我使用 R 中的 glmnet 包通过 10 倍交叉验证优化 lambda。但是结果很糟糕,因为模型倾向于将所有测试样本分配给一个类。

对于这个数据集,它只是错误的模型吗?

4

1 回答 1

3

使用不平衡类进行预测可能是一个非常难以解决的问题。值得庆幸的是,有大量关于如何解决此类问题的参考书目。有一个特别适合我。它涉及使用上采样和/或下采样技术:

  • 下采样:随机对训练集中的所有类进行子集化,使它们的类频率与最不流行的类匹配。例如,假设 80% 的训练集样本属于第一类,其余 20% 属于第二类。下采样将随机抽取第一个类与第二个类的大小相同(因此只有总训练集的 40% 用于拟合模型)。插入符号包含一个函数 (downSample) 来执行此操作。

  • 上采样:随机抽样(有放回)少数类与多数类的大小相同。插入符号包含一个函数 (upSample) 来执行此操作。

  • 混合方法:SMOTE 和 ROSE 等技术对多数类进行下采样并在少数类中合成新的数据点。有两个包(DMwR 和 ROSE)实现了这些过程。

我从这个插入符号的文档中获取了上述要点。该帖子包含有关上述每个要点和 R 代码的示例。在基于上述技术转换数据后,您应该能够使用 Lasso 逻辑回归并获得更好的结果。

于 2017-05-10T10:23:24.230 回答