当前位置:  开发笔记 > 编程语言 > 正文

具有稀疏矩阵数据和多项式Y的xgboost随机森林

如何解决《具有稀疏矩阵数据和多项式Y的xgboost随机森林》经验,为你挑选了1个好方法。

我不确定是否xgboost可以按照我需要的方式(?)组合许多不错的功能,但我要做的是在多类因变量上运行具有稀疏数据预测变量的随机森林.

我知道xgboost可以做其中任何一件事:

随机森林通过调整xgboost参数:

bst <- xgboost(data = train$data, label = train$label, max.depth = 4, num_parallel_tree = 1000, subsample = 0.5, colsample_bytree =0.5, nround = 1, objective = "binary:logistic")

稀疏矩阵预测器

bst <- xgboost(data = sparse_matrix, label = output_vector, max.depth = 4, eta = 1, nthread = 2, nround = 10,objective = "binary:logistic")

多项式(多类)因变量模型通过multi:softmaxmulti:softprob

xgboost(data = data, label = multinomial_vector, max.depth = 4, eta = 1, nthread = 2, nround = 10,objective = "multi:softmax")

但是,当我尝试一次完成所有这些时,我遇到了关于不合格长度的错误:

sparse_matrix     <- sparse.model.matrix(TripType~.-1, data = train)
Y                 <- train$TripType
bst               <- xgboost(data = sparse_matrix, label = Y, max.depth = 4, num_parallel_tree = 100, subsample = 0.5, colsample_bytree =0.5, nround = 1, objective = "multi:softmax")
Error in xgb.setinfo(dmat, names(p), p[[1]]) : 
  The length of labels must equal to the number of rows in the input data
length(Y)
[1] 647054
length(sparse_matrix)
[1] 66210988200
nrow(sparse_matrix)
[1] 642925

我得到的是我比较单一的多类别相关的向量的长度的长度误差(姑且称之为ñ)到稀疏矩阵指数,我相信的长度为Ĵ*ñĴ预测.

这里的具体用例是Kaggle.com Walmart竞赛(数据是公开的,但默认情况下非常大 - 大约650,000行和几千个候选功能).我一直在通过H2O运行多项射频模型,但听起来像很多其他人一直在使用xgboost,所以我想知道这是否可行.

如果不可能,那么我想知道是否可以/应该分别估计因变量的每个级别并试图得出结果?



1> T. Scharf..:

以下是发生的事情:

当你这样做:

sparse_matrix <- sparse.model.matrix(TripType~.-1, data = train)

你丢失了数据中的行

sparse.model.matrix 默认情况下无法处理NA,当它看到一个时,它会丢弃该行

因为它确实有4129行在原始数据中包含NA.

这是这两个数字之间的差异:

length(Y)
[1] 647054

nrow(sparse_matrix)
[1] 642925

这对前面的例子起作用的原因如下

在二项式案例中:

它正在回收Y矢量并完成缺失的标签.(这是不好的)

在随机森林案例中:

(我认为)这是因为我随机森林从不使用先前树木的预测,所以这个错误是看不见的.(这是不好的)

带走:

以前的两个例子都不能很好地训练

sparse.model.matrix 你知道你在训练数据中丢失了一行,这是一个很大的问题,需要解决

祝好运!

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有