我用SkeleanrProbaAdapter从libact,使用Sklearn梯度推进分类如下所示:如何使用使用libact的sklearn使用f1评分指标?
clf=SklearnProbaAdapter(GradientBoostingClassifier(n_estimators=5, learning_rate=1.0,max_depth=2, random_state=0))
继example libact其文档中提供,我初始化和测量误差以这样的方式
qs=UncertaintySampling(trn_ds1, method='lc', model=clf) model = clf ...training and labeling... E_out = np.append(E_out, 1 - model.score(tst_ds))
现在我正在尝试使用来自libact的f1指标。我试图
E_out = np.append(E_out, 1 - model.score(tst_ds, criterion="f1"))
但由于模型没有多标签,将引发一个错误。任何帮助深表感谢。
什么是错误?这个模型的意思是不是多标签?请提供详情。 –
是的,很抱歉,当您使用SklearnProbaAdapter创建一个libact.base.dataset模块时,错误是该libact。但为了使用“标准=”f1“”我需要libact.models.multilabel。 –