Добавить в корзинуПозвонить
Найти в Дзене
Postgres DBA

Подробное описание метрики ROC‑AUC

ℹ️Материал подготовлен нейросетью DeepSeek.
Диапазон значений AUC и их интерпретация:
Важно: AUC не зависит от абсолютных значений вероятностей, а только от их порядка. Поэтому модель может иметь высокий AUC, но быть плохо калиброванной (вероятности не соответствуют реальным частотам).
В нашем контексте (прогнозирование инцидентов производительности СУБД) значение AUC = 0.546 означает, что модель
Оглавление

ℹ️Материал подготовлен нейросетью DeepSeek.

1. Общее определение

  • ROC‑AUC (Receiver Operating Characteristic – Area Under Curve) — это метрика качества бинарной классификации, которая измеряет способность модели различать два класса: положительный (например, «инцидент произойдёт») и отрицательный («инцидента не будет»).
  • Она не зависит от выбранного порога классификации и оценивает, насколько хорошо модель упорядочивает объекты по предсказанной вероятности принадлежности к положительному классу.
  • ROC-кривая строится как график зависимости True Positive Rate (TPR) от False Positive Rate (FPR) при варьировании порога от 0 до 1:
  • TPR = доля положительных объектов, правильно классифицированных как положительные (чувствительность, recall).
  • FPR = доля отрицательных объектов, ошибочно классифицированных как положительные (1 – специфичность).
  • AUC — это площадь под этой кривой. Значение AUC равно вероятности того, что случайно выбранный положительный объект получит от модели более высокий предсказанный риск, чем случайно выбранный отрицательный объект.
-2

2. Диапазон значений и интерпретация

Диапазон значений AUC и их интерпретация:

  • 0.5 – модель не лучше случайного угадывания – дискриминация отсутствует.
  • 0.5 – 0.6 – плохая дискриминация (слабое различие).
  • 0.6 – 0.7 – удовлетворительная дискриминация (приемлемо для некоторых задач).
  • 0.7 – 0.8 – хорошая дискриминация.
  • 0.8 – 0.9 – отличная дискриминация.
  • 0.9 – 1.0 – выдающаяся дискриминация (почти идеальный классификатор).
  • < 0.5 – модель работает хуже случайного – возможно, перепутаны метки классов.

Важно: AUC не зависит от абсолютных значений вероятностей, а только от их порядка. Поэтому модель может иметь высокий AUC, но быть плохо калиброванной (вероятности не соответствуют реальным частотам).

-3

3. Практический смысл значений

  • AUC = 0.5 – классификатор не различает классы; результат эквивалентен подбрасыванию монеты.
  • AUC = 0.6 – модель в 60% случаев присваивает более высокий риск инциденту, чем не-инциденту. Это небольшое улучшение, но обычно недостаточное для принятия решений.
  • AUC = 0.7 – приемлемый уровень; модель способна выделять часть инцидентов, но всё ещё много ложных срабатываний.
  • AUC = 0.8 – хороший результат; модель надёжно разделяет классы, может использоваться в практических системах.
  • AUC = 0.9 – отличная дискриминация; модель редко ошибается в ранжировании.

В нашем контексте (прогнозирование инцидентов производительности СУБД) значение AUC = 0.546 означает, что модель всего на 4.6% лучше случайного угадывания. Это говорит о том, что текущие признаки и модель не дают достаточной предсказательной силы для практического применения.

-4

4. Преимущества ROC‑AUC

  • Не зависит от порога – оценивает качество модели в целом, а не при конкретном пороге.
  • Инвариантна к дисбалансу классов – хорошо работает, когда положительных примеров мало (что характерно для инцидентов).
  • Интуитивно понятна – легко интерпретируется как вероятность правильного ранжирования.
  • Позволяет сравнивать модели независимо от их калибровки.
-5

5. Ограничения и меры предосторожности

  • Не отражает калибровку – модель может давать завышенные или заниженные вероятности, но иметь высокий AUC.
  • Чувствительна к выбросам – одно очень плохое предсказание может снизить AUC.
  • Не показывает, насколько хорошо модель работает в области низких FPR (важно для систем с высокими требованиями к точности).
  • Может быть завышена при сильном дисбалансе, если модель просто предсказывает низкий риск для всех объектов (но в нашем случае это не так, поскольку мы явно строим прогнозы).
-6

6. Итог для нашей задачи

В эксперименте по подбору горизонта мы получили ROC‑AUC = 0.546 при оптимальном горизонте 30 минут.

Это означает:

  • Модель едва превосходит случайное угадывание.
  • Она не способна надёжно разделять переходы, которые приведут к инциденту, от переходов, которые не приведут.
  • Для практического использования такой уровень дискриминации недостаточен — он приведёт к большому количеству ложных тревог и пропущенных инцидентов.

Вывод: Текущий подход на основе цепей Маркова с дискретными состояниями исчерпал свои возможности. Для улучшения качества необходимо перейти к более сложным моделям машинного обучения, которые используют расширенные признаки (историю, динамику, производные) и могут улавливать нелинейные зависимости.

Целевой уровень ROC‑AUC должен составлять не менее 0.7, чтобы система могла быть внедрена в реальную эксплуатацию.