Несбалансированные показатели мультикласса - PullRequest
0 голосов
/ 15 ноября 2018

У меня мультиклассовая несбалансированная проблема. Зависимая переменная показана ниже.

                  Injury
    severe Injury (Class 0)               3394
   Medium Injury (Class 1)           22318
      No Injury (Class 2)                208753

Я использовал алгоритм случайного леса с параметром class_weight ='balanced 'для решения проблемы дисбаланса. Модель дает следующие результаты.

 [[  650    12     9]
  [    3  2938  1670]
  [    7   917 40569]]

 Accuracy Score: 0.9440299305184393
 precision score: 0.9016230160324789
 Recall score: 0.8612021971135553
 AUC Score: 0.8739141097167544
  F1 score: 0.879571098748252

              precision    recall  f1-score   support

    class 0       0.98      0.97      0.98       671
    class 1       0.76      0.64      0.69      4611
    class 2       0.96      0.98      0.97     41493

avg / total       0.94      0.94      0.94     46775

Kappa Score: 0.7391731672532447

Поскольку я действительно заинтересован в классе 0 и классе 1, оценки точности, отзыва и F1 вычисляются с использованием метода «Макро».

ex:
print ('precision score:', precision_score(test_y,ry_pred, average='macro'))

Итак, мой вопрос: могу ли я взять для отдельных классов (класс 0 и класс 1) точность, отзыв и f1? или общий средний (включая класс 2) балл за оценку модели?

ex:  F1 score for all three classes = (98+69+97)/3 = 0.8795 
     F1 Score for 2 classes = (98+69)/2 = 83.5

Если я должен взять отдельные оценки классов, могу ли я взять совокупные значения классов 0 и 1, чтобы сказать, насколько хорошо модель классифицирует второстепенные классы?

Кроме того, для класса 0 модель показывает высокие оценки около 98. Является ли это проблемой переоснащения? У меня есть оценочная модель, использующая технику k-кратного CV, и она показывает оценки ниже. Он показывает общую точность, отзыв и счет F1.

precision score 0.9009562240704383
   recall score 0.8576816035552879
       F1 score 0.8776626709718627

Пожалуйста, предложите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...