我从哪里装货agaricus.txt.train?

2024-04-30 01:40:18 发布

您现在位置:Python中文网/ 问答频道 /正文

basic walkthrough exampleby XGBoost中,我们首先加载数据集。你知道吗

>>> dtrain = xgb.DMatrix('../data/agaricus.txt.train')
[20:37:22] 6513x127 matrix with 143286 entries loaded from ../data/agaricus.txt.train
>>> dtest = xgb.DMatrix('../data/agaricus.txt.test')
[20:37:23] 1611x127 matrix with 35442 entries loaded from ../data/agaricus.txt.test

然而,这些数据集似乎包含127个特性,而XGBoost的R package记录了126个特性。你知道吗

>>> dtrain.num_col()
127

此外,当pred_contribs设置为True时,^{}将返回一个大小矩阵(nsample,nfeats+1)。因为preds有128列,我们可以得出结论dtrain包含127个特征。你知道吗

>>> param = {'max_depth':2, 'eta':1, 'silent':1, 'objective':'binary:logistic'}
>>> watchlist = [(dtest, 'eval'), (dtrain, 'train')]
>>> num_round = 2
>>> bst = xgb.train(param, dtrain, num_round, watchlist)
[0] eval-error:0.042831 train-error:0.046522
[1] eval-error:0.021726 train-error:0.022263
>>> preds = bst.predict(dtest, output_margin=True, pred_contribs=True, approx_contribs=True)
>>> preds.shape
(1611, 128)

这是怎么回事?^{}是否错误地认为标签是第127个特性?如果libsvm format txt file被正确解析,那么preds为什么有128列?你知道吗


Tags: txttruedataevaltrainerror特性num