我在 python 的TPOT包中使用遗传/进化算法来找到整体最佳模型(GBM、RF、SVM、弹性网等)及其调整参数。现在我需要一种方法来衡量每个变量对所选模型的预测性能的贡献。我怎样才能以模型竞争的方式做到这一点?
我目前的方法是在保留每个变量后重新训练最佳模型架构。例如,如果我的变量是,[a,b,c]我将重新训练[a,b]、[a,c]和[b,c]。我将与性能最差的模型相关的已删除变量定义为最重要的变量,并将变量的预测贡献定义为预测性能的下降。我以这种方式测量所有变量的预测性能。这种方法有什么明显的错误吗?有更好的方法吗?我熟悉决策树中的变量重要性和线性模型中的 p 值,但我需要一种与模型无关的方法。