如何使用python绘制多类Xgboost的ROC曲线?

时间:2018-06-29 03:55:38

标签: python xgboost roc

在我的模型中,类为[0,1,2,3]。 由于ROC用于二进制分类或OneVsRest多类问题,因此我想绘制类[0,1],[0,2],[0,3]的ROC曲线。我该怎么办?

1 个答案:

答案 0 :(得分:0)

ROC曲线针对二进制问题建模。 OneVsAll是这样做的一种方法,其中您的主类被视为肯定标签,而其他类被视为否定标签。根据您的问题,您希望将问题建模为OneVsOne,这很好。由于这是使二元分类器适用于您的多分类的另一种方法。 警告:OneVsOne方法的计算量很大。 请参阅here了解更多信息。

对于类[0,1,2],它将返回[0,1],[0,2],[1,2],即对于3个类,它将返回3(3-1)/ 2,即3个分类器。现在您有了3个二进制分类器。我希望您可以从这里轻松地了解如何从这一点获得ROC曲线。