2015-01-22 2 views
2

У меня возникают трудности с пониманием того, как должны выглядеть параметры multiclass.roc. Вот снимок моих данных:R multiclass/многокомпонентная классификация ROC с использованием multiclass.roc (Package 'pROC')

> head(testing.logist$cut.rank) 
[1] 3 3 3 3 1 3 
Levels: 1 2 3 
> head(mnm.predict.test.probs) 
       1   2   3 
9 1.013755e-04 3.713862e-02 0.96276001 
10 1.904435e-11 3.153587e-02 0.96846413 
12 6.445101e-23 1.119782e-11 1.00000000 
13 1.238355e-04 2.882145e-02 0.97105472 
22 9.027254e-01 7.259787e-07 0.09727389 
26 1.365667e-01 4.034372e-01 0.45999610 
> 

Я пытался дозвониться multiclass.roc с:

multiclass.roc(
     response=testing.logist$cut.rank, 
     predictor=mnm.predict.test.probs, 
     formula=response~predictor 
     ) 

, но, естественно, я получаю сообщение об ошибке:

Error in roc.default(response, predictor, levels = X, percent = percent, : 
    Predictor must be numeric or ordered. 

Когда это бинарная проблема классификации Я знаю, что «предсказатель» должен содержать вероятности (по одному на наблюдение). Однако в моем случае у меня есть 3 класса, поэтому мой предсказатель представляет собой список строк, каждый из которых имеет 3 столбца (или подсписку из 3 значений), которые соответствуют вероятности для каждого класса. Кто-нибудь знает, как должен выглядеть мой «предсказатель», а не то, на что он сейчас выглядит?

ответ

0

Пакет pROC на самом деле не предназначен для обработки этого случая, когда вы получаете несколько прогнозов (как вероятности для каждого класса). Как правило, вы бы оценить ваш P (класс = 1)

multiclass.roc(
    response=testing.logist$cut.rank, 
    predictor=mnm.predict.test.probs[,1]) 

А потом сделать это снова с P (класс = 2) и Р (класс = 3). Или лучше, определить наиболее вероятный класс:

predicted.class <- apply(mnm.predict.test.probs, 1, which.max) 
multiclass.roc(
    response=testing.logist$cut.rank, 
    predictor=predicted.class) 

Рассмотрим multiclass.roc как игрушку, которая иногда может быть полезно, но, скорее всего, не будет действительно соответствовать вашим потребностям.

Смежные вопросы