我正在使用一个非常糟糕的临床数据集,它有 300 个样本,400 个特征,将用于机器学习。我的导师告诉我这个数据集中的一些具有生物学意义的特征,并要求我保留它们,但其中许多特征缺失超过 50%,甚至超过 80%。我应该怎么办?使用模式填充是否会影响其性能。
简而言之:即使缺失数据的比例很大,只要采用正确的插补方式并且数据随机缺失,模型性能不应降低。然而,选择正确的方法需要 EDA 和测试。 这些特征是数字特征还是分类特征?目标呢?
即使它们有意义,也不意味着它们对目标有影响。 如果这是一个分类问题,那么最好研究给定目标的这些变量的分布,并运行 t 检验/u 检验来检查是否存在任何统计上显着的差异。如果没有,您就有充分的理由放弃某个功能。对于回归案例,您可以研究互信息、相关性和散点图。如果特征和目标都是分类的,则运行卡方检验等。
输入数值可能很棘手,因为我们通常不知道生物学的基本分布。尽管如此,在最坏的情况下您获得的约 60 个样本应该足以进行估计。您应该研究它,看看输入平均值/中位数/组中位数/零/等是否有意义。遗憾的是,这里没有一种完美的方法,您必须测试什么使您的模型以最佳方式执行。
其他可能的技巧:
首先尝试预测缺失值(或使用 KNNImputer 之类的工具)。