嗨,我正在尝试使用VotingClassifier和我的GradientBoostingClassifier,我在它周围放了一个包装器,以便利用样本权重。 但是,我遇到了下面的错误,无法解决它。在
代码:
class MyGradientBoostingClassifier(GradientBoostingClassifier):
def fit(self, X , y=None):
return super(GradientBoostingClassifier, self).fit(X, y, sample_weight=y)
rf = RandomForestClassifier(n_jobs=-1)
mygb = MyGradientBoostingClassifier()
vc = VotingClassifier(estimators=[('rf', rf), ('mygb', mygb)],
voting='soft',
weights=[1,2])
mygb.fit(X5, y5)
y的样本片段是[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 1. 0. 0. 0. 0.]
,它是np数组
错误:
^{pr2}$
对于分类模型,
y
应该是一个整数类标签(0和1),因此将它同时用作分类目标和样本权重是没有意义的。在该模型忽略了所有权重为0的样本,不可能只利用训练集中同一类样本训练二元分类模型。在
相关问题 更多 >
编程相关推荐