什么错误"标签长度与#data"不一样?当我打电话给lightgbm.train

时间:2018-06-07 17:57:37

标签: python lightgbm

我是LightGBM的新手,当我尝试在我的数据集上应用lightgbm.train时,我收到了这个错误:

LightGBMError: Length of label is not same with #data

我不确定我在哪里弄错了。我试过了

model = lightgbm.train(params, train_data, valid_sets=test_data, early_stopping_rounds=150, verbose_eval=200)

提前致谢。

2 个答案:

答案 0 :(得分:0)

它只是意味着您的训练示例的尺寸和相应的标签列表不匹配。换句话说,如果您有10个训练实例,则需要10个标签。 (对于多标签方案,更好的方法是通过标记替换标签,或者参考数组的大小。)

答案 1 :(得分:0)

这意味着您传递给模型的标签数量 (y.shape[-1]) 与传递的特征数量 (x.shape[-1]) 不同。就我而言,这是因为我不小心混淆了 y 的训练集和测试集:

kf = KFold(5)
lgbm = LGBMRegressor()

for train,test in kf.split(X):
    lgbm.fit(
        X.iloc[train],
        y.iloc[test], # should be 'train', not 'test'
    )
    # ...