JMP > 从大数据集中识别预测特征 > 明显过度拟合的问题您好 JMP 社区,
我有一个大型数据集,在基线时对参加临床试验的患者进行了大约 4,000 个生物标志物测量。 我需要在这些数据中确定哪些生物标志物组合可以预测 12 周后的临床结果。
我使用了一种相当幼稚的方法,它似乎产生了严重过度拟合的输出:
- 通过筛选 > 响应筛选运行所有 4,000 个生物标志物,其中响应是第 12 周的二元临床输出
- 选择前 10 - 20 个生物标志物(基于 FDR)
- 在“拟合模型”>“逐步”平台上使用选定的生物标志物(作为模型效应),其中 Y 是第 12 周的二元临床输出;标准 = 最小化 BIC
- 生成模型
虽然这种方法对第 12 周的临床反应产生了极好的“预测因子”(ROC AUC > 0.940),但在使用随机生成的“虚拟”变量(ROC AUC ~0.870)进行测试时,它也产生了高 ROC AUC。 后者向我表明,由于过度拟合,我的方法非常不合适。
我探索了与 Discovery 和 Validation 患者亚组(占整个人口的 50%)合作的可行性,但它并没有解决我的过度拟合问题。
除了使用 JMP Pro 提供的高级建模平台之外,JMP 中是否有更好的技术来解决这样的问题?
谢谢您的帮助。
最好的,
TS
分析回复:JMP > 从大数据集中识别预测特征 > 明显过度拟合的问题您能否提供有关随机生成的响应变量的更多详细信息?你是如何创建它的?
回复:JMP > 从大数据集中识别预测特征 > 明显过度拟合的问题嗨,戴尔,
感谢您跟进这个相对开放的问题。 我使用以下公式创建了随机变量:
random uniform (0,1) > 0.5;
值得注意的是,我在八个不同版本的虚拟变量(即重新计算公式)上运行了上述“方法”,产生了范围从 0.770 到 0.870 的 ROC AUC 值。
我从未遇到过这种行为,但我从未处理过 1,200 多个生物标志物变量。
谢谢你的帮助。
最好的,
TS
回复:JMP > 从大数据集中识别预测特征 > 明显过度拟合的问题我不知道答案,但我可以确认你发现了什么。我创建了一个二元响应变量(随机)和 20 个随机正态因子,其中包含 200 个观察值。我得到了 AUC=.71!我觉得这确实非常令人惊讶。我怀疑这与 AUC 作为性能度量的限制有关,但正如我所说,我并不真正理解这种行为。就我而言,它当然不应该过度拟合。我很想知道其他人对此有何看法。
Re: JMP > 从大数据集中识别预测签名 > 明显过拟合的问题为了增加神秘感,我附上了我所做的模拟。这次我使用了一个验证列。值得注意的是:逻辑回归(保存在文件中的脚本)显示训练数据的 AUC 约为 0.71,而验证数据的 AUC 低得多(小于 0.5)。这是过度拟合的明显证据。但是,我也进行了模型筛选——所有方法(包括逻辑回归)显示训练数据的 AUC 约为 0.5,而验证数据的 AUC 更低——这对我来说似乎是合理的。此外,逻辑回归模型并不显着(只有 1 或 2 个因素是显着的,这与您对 20 个随机因素的预期有关)。我不明白的是,为什么模型筛选平台中的逻辑回归平台和逻辑回归会给出如此不同的结果。我知道(或相信)模型筛选不像单个建模平台那样找到调整超参数,但训练数据上 0.7 和 0.5 之间的差异对我来说似乎太大了。