我遇到了这个问题:
一个包含100个特征的XGBoost模型(.pickle文件,在V0.7.post3下构造),但我在模型(model.feature_importances_)中发现55个特征的重要性为0(如下面的矩阵);
另外,当我将泡菜文件转换为PMML (启动在线)时,PMML文件中只有45个特性(那些显然带有importance>0 );
所以,我的问题是:
--为什么重要性等于0的特性最终出现在XGB模型中?如果他们没有真正参与/参与分裂,为什么他们会留在这个模型中呢?
## Feature importance maxtrix from model for demo
ar
我的因变量是二进制。我的自变量大多不是。我现在正处于探索阶段。
Y X1 X2
0 23 0
1 29 1
0 15 1
1 40 0
1 25 1
0 22 1
This is just a portion of my data.
我想用散点图来找出Y X1和X2之间的关系。我还能做些什么来更清楚地看待这段关系。
这是我的代码:
set.seed(1)
#Boruta on the HouseVotes84 data from mlbench
library(mlbench) #has HouseVotes84 data
library(h2o) #has rf
#spin up h2o
myh20 <- h2o.init(nthreads = -1)
#read in data, throw some away
data(HouseVotes84)
hvo <- na.omit(HouseVotes84)
#move from R to h2o
mydata <- a