5.2. Основы предсказаний классов
Диаграмма ROC – метод для визуализации, организации и выбора классификаторов на основе их результативности. Использование диаграмм ROC в машинном обучении было начато в 1989 с демонстрации кривых ROC в сравнении оценки алгоритмов. Последние годы увеличивается использования диаграмм ROC в сообществе машинного обучения. В дополнение к их полезности в составлении графика результативности у диаграмм ROC есть свойства, которые делают их особенно полезными для областей с не равными классами и неравной стоимостью ошибок классификации. Эти характеристики диаграмм ROC стали все более и более важными, поскольку исследование продолжается в области чувствительного к стоимости изучения и изучения в присутствии несбалансированных классов.
У большинства книг по анализу данных и машинному обучению, если они упоминают диаграммы ROC вообще, есть только краткое описание метода. Диаграммы ROC концептуально просты, но есть некоторые неочевидные сложности, которые возникают при построении торговых систем. Есть также распространенные заблуждения и ловушки при их практическом использовании.
Кривая ROC (Receiver Operator Characteristic) – кривая, которая наиболее часто используется для представления результатов бинарной классификации в машинном обучении. Название пришло из систем обработки сигналов. Поскольку классов два, один из них называется классом с положительными исходами, второй – с отрицательными исходами. Кривая ROC показывает зависимость количества верно классифицированных положительных примеров от количества неверно классифицированных отрицательных примеров. В терминологии ROC-анализа первые называются истинно положительным, вторые – ложно отрицательным множеством. При этом предполагается, что у классификатора имеется некоторый параметр, варьируя который, можно получить то или иное разбиение на два класса. Этот параметр часто называют порогом, или точкой отсечения (cut-off value). В зависимости от него будут получаться различные величины ошибок I и II рода.
В логистической регрессии порог отсечения изменяется от 0 до 1 – это и есть расчетное значение уравнения регрессии. Будем называть его рейтингом.
Для понимания сути ошибок I и II рода рассмотрим четырехпольную таблицу сопряженности (confusion matrix), которая строится на основе результатов классификации моделью и фактической (объективной) принадлежностью наблюдений к классам.
Таблица 5.1. Матрица сопряженности
– TP (True Positives) – верно классифицированные положительные примеры (так называемые истинно положительные случаи);
– TN (True Negatives) – верно классифицированные отрицательные примеры (истинно отрицательные случаи);
– FN (False Negatives) – положительные примеры, классифицированные как отрицательные (ошибка I рода). Это так называемый «ложный пропуск» – когда интересующее нас событие ошибочно не обнаруживается (ложно отрицательные примеры);
– FP (False Positives) – отрицательные примеры, классифицированные как положительные (ошибка II рода); Это ложное обнаружение, так как при отсутствии события ошибочно выносится решение о его присутствии (ложно положительные случаи).
Что является положительным событием, а что – отрицательным, зависит от конкретной задачи. Укажем три полезных для нас варианта смыслового наполнения предложенной абстракции:
– целевая переменная «лонг/шорт». Для этой целевой переменной можно считать за положительный пример «лонг», а за отрицательный пример «шорт», обозначив в числовом виде как (1, -1). Наполнение «положительных» и «отрицательных» примеров содержательными понятиями «лонг/шорт» приводит к симметричному случаю в том смысле, что если модель ошибочно классифицирует «лонг» как «шорт» и наоборот, то убытки будут одинаковы;
– моделируем две разных целевых переменных. Одна – «лонг/вне рынка», вторая – «шорт/вне рынка», обозначив в числовом виде как (1,0) и (0, -1). Это привело к наполнению «положительных» и «отрицательных» примеров содержательными понятиями «лонг/вне рынка/шорт». Так как мы разбили на две переменные, то пришли к несимметричному случаю в том смысле, что, например, не правильная классификация «вне рынка» как «лонга» приведет к убыткам, а вот обратная ситуация к убыткам не приводит.
При анализе чаще оперируют не абсолютными показателями, а относительными – долями (rates):
– доля истинно положительных примеров (True Positives Rate):
TPR = TP/ (TP+FN)
В случае целевой переменной «лонг/шорт» – это доля правильно классифицированных «лонгов» по отношению ко всему множеству (ко всей выборке).
– доля ложно положительных примеров (False Positives Rate):
FPR = FP/ (TN+FP)
В случае целевой переменной «лонг/шорт» – это доля ложно классифицированных «лонгов» по отношению ко всему множеству (ко всей выборке).
Введем еще два определения: чувствительность и специфичность модели. Ими определяется объективная ценность любого бинарного классификатора.
Чувствительность (Sensitivity) – это и есть доля истинно положительных случаев, т.е.:
Se = TPR = TP/ (TP+FN)
Специфичность (Specificity) – доля истинно отрицательных случаев, которые были правильно идентифицированы моделью:
Sp = TN (TN+FP) = 1 – FPR
Попытаемся разобраться в этих определениях.
Модель с высокой чувствительностью часто дает истинный результат при наличии положительного исхода (обнаруживает положительные примеры). Наоборот, модель с высокой специфичностью чаще дает истинный результат при наличии отрицательного исхода (обнаруживает отрицательные примеры).
Если рассуждать в терминах двух наших целевых переменных «лонг/вне рынка» и «вне рынка/шорт», то становится очевидной применение рассматриваемых показателей:
– модель с высокими значениями чувствительности для первой целевой переменной «лонг/вне рынка» проявится в повышенной диагностики «лонгов»;
– модель с высокими значениями специфичности для второй целевой переменной «вне рынка/шорт» проявится в повышенной диагностики «шортов».
Забегая вперед, приведу график кривой ROC, в которой осями является чувствительность Se, она же TPR, и дополнение до единицы специфичности 1 – FPR.
Рис.5.1. Кривая ROC для модели случайного леса.
График дополнен прямой х=у.
Для идеального классификатора график ROC-кривой проходит через верхний левый угол, где доля истинно положительных случаев составляет 100% или 1.0 (идеальная чувствительность), а доля ложно положительных примеров равна нулю. Поэтому чем ближе кривая к верхнему левому углу, тем выше предсказательная способность модели. Наоборот, чем меньше изгиб кривой, и чем ближе она расположена к диагональной прямой, тем менее эффективна модель. Диагональная линия соответствует «бесполезному» классификатору, то есть полной неразличимости двух классов.
При визуальной оценке ROC-кривых расположение их относительно друг друга указывает на их сравнительную эффективность. Кривая, расположенная выше и левее, свидетельствует о большей предсказательной способности модели. Так, на рис.5.3 две ROC-кривые совмещены на одном графике. Видно, что модель «rf» лучше модели «ada».
Рис.5.2. Сравнение кривых ROC для модели ada и модели rf.
Визуальное сравнение кривых ROC не всегда позволяет выявить наиболее эффективную модель. Своеобразным методом сравнения ROC-кривых является оценка площади под кривыми. Теоретически она изменяется от 0 до 1.0, но, поскольку модель всегда характеризуются кривой, расположенной выше положительной диагонали, то обычно говорят об изменениях от 0.5 («бесполезный» классификатор) до 1.0 («идеальный» классификатор). Эта оценка может быть получена непосредственно вычислением площади под многогранником, ограниченным справа и снизу осями координат и слева вверху – экспериментально полученными точками (рис. 5.3). Численный показатель площади под кривой называется AUC (Area Under Curve). В нашем случае мы получили следующие величины:
Area under the ROC curve for the ada model on zz_1_5 [validate] is 0.8702
Area under the ROC curve for the rf model on zz_1_5 [validate] is 0.8904
Площадь под кривой ROC для модели rf равна 0.8904, а для модели ada равна 0.8702, что подтверждает визуальное наблюдение.
С большими допущениями можно считать, что чем больше показатель AUC, тем лучшей прогностической силой обладает модель. Однако следует знать, что:
– показатель AUC предназначен скорее для сравнительного анализа нескольких моделей;
– AUC не содержит никакой информации о чувствительности и специфичности модели.
В литературе иногда приводится следующая экспертная шкала для значений AUC, по которой можно судить о качестве модели:
Таблица 5.2. Шкала значений AUC
Идеальная модель обладает 100% чувствительностью и специфичностью. Однако на практике добиться этого невозможно, более того, невозможно одновременно повысить и чувствительность, и специфичность модели. Компромисс находится с помощью порога отсечения, т.к. пороговое значение влияет на соотношение Se и Sp. Можно говорить о задаче нахождения оптимального порога отсечения (optimal cut-off value).
Порог отсечения нужен для применения модели на практике: относить новые наблюдения к одному из двух классов. Для определения оптимального порога нужно задать критерий его определения, так как в разных задачах присутствует своя оптимальная стратегия. Критериями выбора порога отсечения могут выступать:
– требование минимальной величины чувствительности (специфичности) модели. Например, нужно обеспечить чувствительность теста не менее 80%. В этом случае оптимальным порогом будет максимальная специфичность (чувствительность), которая достигается при 80% (или значение, близкое к нему «справа» из-за дискретности ряда) чувствительности (специфичности);
– требование максимальной суммарной чувствительности и специфичности модели, т.е.
Cut_off = max (Se + Sp)
– Требование баланса между чувствительностью и специфичностью, т.е. когда Se примерно равно Sp:
Cut_off = min (Se – Sp)
Второе значение порога обычно предлагается пользователю по умолчанию. В третьем случае порог есть точка пересечения двух кривых, когда по оси X откладывается порог отсечения, а по оси Y – чувствительность и специфичность модели. Пересечение этих двух кривых и даст порог отсечения.
Данный текст является ознакомительным фрагментом.