我有一个相对复杂的模型拟合程序,其输出是一组系数(一个用于训练集中的每个特征)和一组超参数(控制正则化的量)。
我想计算每个特征的 p 值。目前,我的程序是这样的:
- 确定超参数的良好值使用交叉验证。
- 用这些超参数在整个数据集上拟合模型,得到
- 对于每个功能
- 为了至
- 打乱特征的值产生一个新的数据集
- 使模型适合与超参数获得
- 计算次数的比例并将其称为特征的 p 值
- 为了至
这符合我对 p 值是什么的直观理解(即每次改组都会产生一个数据集,其中零假设成立,因为我已经随机化了所有的依赖)但我想知道它是多么“规范”。我可以想到其他几种方法来做到这一点,例如:
- 重新拟合超参数以及每个内部循环上的系数。
- 使用带替换的采样来生成新的数据集,而不是改组。
哪一个更好?
而且,更重要的是,我生成的数字可以被解释为具有任何可靠性的 p 值吗?