2017-01-03 10 views
2

Я использую R v3.3.2 и Caret 6.0.71 (т. Е. Последние версии) для построения классификатора логистической регрессии. Я использую функцию confusionMatrix для создания статистики для оценки ее производительности.R Confusion Матрица чувствительность и специфичность маркировки

logRegConfMat < - confusionMatrix (logRegPrediction, valData [ "посещение"])

  • Ссылка 0, Прогноз 0 = 30
  • Ссылка 1, Прогноз 0 = 14
  • Ссылка 0, Прогнозирование 1 = 60
  • Ссылка 1, Предсказание 1 = 164

Точность: 0,7239
Чувствительность: 0,3333
Специфичность: 0,9213

Целевое значение в моих данных (посещение) использует 1 для истинного и 0 для лжи. Я предполагаю, что столбцы Reference (Ground правда) и строки Predication (Classifier) ​​в матрице путаницы следуют тому же соглашению. Поэтому мои результаты показывают:

  • Истинные негативы (TN) 30
  • Истинные позитивов (TP) 164
  • Ложноотрицательные (FN) 14
  • ложных срабатываний (FP) 60

Вопрос: Почему чувствительность задана как 0,3333, а специфика - 0,9213? Я бы подумал, что это было наоборот - см. Ниже.

Я не хочу верить, что в функции R confusionMatrix есть ошибка, поскольку ничего не сообщалось, и это, по-видимому, является значительной ошибкой.


Большинство ссылок о расчете специфичности и чувствительности определяют их следующим образом - т.е. www.medcalc.org/calc/diagnostic_test.php

  • Чувствительность = TP/(TP + FN) = 164/(164 + 14) = 0,9213
  • Специфичность = TN/(ФП + TN) = 30/(60 + 30) = 0,3333

ответ

5

в соответствии с документацией ?confusionMatrix:

«Если есть только два уровня факторов, первый уровень будет использоваться как « положительный »результат».

Следовательно, в вашем примере положительный результат будет 0, а оценочные показатели будут неправильными. Чтобы изменить поведение по умолчанию, вы можете установить аргумент positive = правильное значение, увы:

confusionMatrix(logRegPrediction, valData[,"Seen"], positive = "1") 
+0

Спасибо - я получил тот же ответ от автора пакета Max Kukn.Я бы посоветовал любому, кто использует эту функцию, явно дать положительный аргумент, чтобы избежать такой проблемы. – user1844985

+1

@mtoto Большое спасибо, я часами размышлял об этой проблеме – Diego

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

  • Нет связанных вопросов^_^