问题描述:
使用sklearn的brier_score_loss类计算四分类的布里尔分数时报错:
ValueError: Only binary classification is supported. The type of the target is multiclass
新版sklearn的brier_score_loss不支持多分类了
解决方案:
先对测试集的标签进行哑变量变换:
proba= models.predict_proba(Xtest)
Ytest_= Ytest.copy()
Ytest_ = pd.get_dummies(Ytest_)
再计算每个类别的布里尔分数,就可以成功计算出来
from sklearn.metrics import brier_score_loss as BS
for i in range(4):
bs = BS(Ytest_[i],proba[:,i])