Как создать кривую ROC в SAS

Как создать кривую ROC в SAS

Логистическая регрессия — это метод, который мы можем использовать для подбора модели регрессии, когда переменная ответа является двоичной.

Чтобы оценить, насколько хорошо модель логистической регрессии соответствует набору данных, мы можем взглянуть на следующие две метрики:

  • Чувствительность: вероятность того, что модель предсказывает положительный результат для наблюдения, когда результат действительно положительный. Это также называется «истинно положительным показателем».
  • Специфичность: вероятность того, что модель предсказывает отрицательный результат для наблюдения, когда результат действительно отрицательный. Это также называется «истинной отрицательной ставкой».

Один из способов визуализировать эти две метрики — создать кривую ROC , которая означает кривую «рабочей характеристики приемника». Это график, отображающий чувствительность и специфичность модели логистической регрессии.

В следующем пошаговом примере показано, как создать и интерпретировать кривую ROC в SAS.

Шаг 1: Создайте набор данных

Сначала мы создадим набор данных, содержащий информацию о следующих переменных для 18 учащихся:

  • Прием в определенный колледж (1 = да, 0 = нет)
  • Средний балл (шкала от 1 до 4)
  • Оценка ACT (шкала от 1 до 36)
/\*create dataset\*/
data my_data;
 input acceptance gpa act;
 datalines ;
1 3 30
0 1 21
0 2 26
0 1 24
1 3 29
1 3 34
0 3 31
1 2 29
0 1 21
1 2 21
0 1 15
1 3 32
1 4 31
1 4 29
0 1 24
1 4 29
1 3 21
1 4 34
;
run ;

Шаг 2: Подберите модель логистической регрессии и создайте кривую ROC

Далее мы будем использовать proc logistic для подбора модели логистической регрессии, используя «acceptance» в качестве переменной отклика и «gpa» и «act» в качестве переменных-предикторов.

Мы укажем по убыванию , чтобы SAS знал, как предсказать вероятность того, что переменная ответа примет значение 1.

Мы также будем использовать plots(only)=roc для создания кривой ROC для модели:

/\*fit logistic regression model & create ROC curve\*/
proc logistic data =my_data descending plots ( only )=roc;
 model acceptance = gpa act;
run ;

Кривая ROC в SAS

Шаг 3: Интерпретация кривой ROC

Чем больше кривая ROC охватывает верхний левый угол графика, тем лучше модель предсказывает значение значений отклика в наборе данных.

На приведенном выше графике видно, что синяя кривая ROC имеет тенденцию охватывать верхний левый угол, что указывает на то, что модель логистической регрессии хорошо прогнозирует значение значений отклика.

Чтобы количественно оценить, насколько хорошо модель логистической регрессии соответствует данным, мы можем рассчитать AUC — площадь под кривой, которая говорит нам, какая часть графика расположена под кривой.

Чем ближе AUC к 1, тем лучше модель. Модель со значением AUC, равным 0,5, ничем не лучше модели со случайными классификациями.

Под заголовком графика выше мы видим, что AUC для этой модели составляет 0,9351 .

Поскольку это значение близко к единице, это подтверждает, что модель хорошо прогнозирует значение значений отклика.

Мы также можем использовать значение AUC для сравнения соответствия различных моделей логистической регрессии.

Например, предположим, что мы подгоняем две разные модели логистической регрессии и вычисляем значения AUC для каждой:

  • AUC модели 1: 0,9351
  • AUC модели 2: 0,8140

Поскольку AUC модели 1 больше, это говорит нам о том, что модель 1 лучше справляется с подгонкой данных, чем модель 2.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в SAS:

Как выполнить простую линейную регрессию в SAS
Как выполнить множественную линейную регрессию в SAS
Как выполнить логистическую регрессию в SAS

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.