我有一个大约 40K 样本的数据集,其中 39.6K 样本属于目标类 0,400 个样本属于类 1。
我尝试了几种分类算法,没有过多的微调,只是为了了解基线性能如何。他们都得到了大约 99% 的准确度分数,这正是 0 类样本与总样本之间的比率。人工欠采样只是将准确度分数降低到与新数据集相同的比率,因此在这方面没有任何改进。
F1 分数真的很差,因为我遇到了可怕的 II 类错误:基本上,算法只是猜测所有内容都属于 0 类。对于我尝试过的一些模型,它实际上预测所有内容都属于 0 类:误报是0(因为没有预测到正样本)和假阴性确实很多(因为预测实际的正样本是负的)。AUC-ROC 约为 50%(糟糕),并且对模型进行加权以考虑类的偏度并没有带来任何改善。
我尝试做一些特征工程(在一些无监督聚类之上集成监督分类),但几乎没有运气。
您对如何解决此类问题/如何诊断阻止预测器准确的潜在问题有任何建议吗?或者我应该以此证明,鉴于我的数据集,属于第 1 类只是随机的(所以我应该收集更多特征)?
旁注:我想从另一边拿它,即。异常检测,但我不确定这是否是正确的方法。