r - GLM/逻辑回归中的可变重要性顺序
问题描述
我的数据框有 100 行。我尝试建立二元广义线性模型:
model = h2o.glm(family="binomial", x=predictors, y=response,
training_frame=training_df,
missing_values_handling="Skip",
lambda=0, compute_p_values = TRUE, nfolds = 7)
var_imp = h2o.varimp(model)
模型 #1 (AUC= 0.826 ± 0.012) 具有以下可变重要性顺序:
variable relative_importance scaled_importance
1 Y 1.7976670 1.0000000
2 C 1.3799875 0.7676547
3 AGE 0.8155962 0.4536971
4 V_4_sum 0.6452078 0.3589140
5 T2 0.3446666 0.1917300
6 V_3_sum 0.2452110 0.1364051
7 T1 0.2028320 0.1128307
一段时间后,我添加了新变量G和模型 #2 (AUC= 0.943 ± 0.015) 性能显着提高(如我所料):
variable relative_importance scaled_importance
1 G 8.25206428 1.00000000
2 C 2.23826129 0.27123653
3 V_4_sum 1.14390917 0.13862097
4 T1 0.82906448 0.10046753
5 V_3_sum 0.76380841 0.09255968
6 T2 0.20089827 0.02434521
7 AGE 0.19790613 0.02398262
8 Y 0.09374866 0.01136063
如您所见,变量重要性顺序已更改。G现在是最重要的 var,但Y在最后(以前是第一个)。 新模型中的AGE等级也有所下降。
对于 GLM(二元分类的逻辑回归),这种效果是众所周知的 h2o varimp函数吗?我可以使用varimp顺序说一些关于AGE或Y重要性的一般信息吗?
在我的情况下,可以应用哪些替代方法来生成可变重要性顺序?我希望顶级变量的顺序更稳定。
解决方案
推荐阅读
- javascript - Jquery将新数据附加到旧数据有重复问题
- c++ - 如何使用 Gtkmm 获取光标位置?
- java - 在arraylist中添加索引的for循环
- javascript - 三.js:children不能独立于parent使用lookAt
- swift - 如何在具有关联值的枚举上与 OR 运算符进行模式匹配?
- mysql - 如何使用codeigniter手动生成自动增量ID
- macos - 由于 EnvironmentError 无法安装软件包:[Errno 13] Pip install Pytest
- reactjs - 如何修复'TypeError:无法读取 React 中未定义的属性'map'
- c++ - 在尝试打印 [1] 错误的地址时:弹出一元“&”操作数所需的左值
- javascript - 如何将 orderCells 设置为数据表的中间行?