Откройте для себя возможности калибровочных кривых, графиков усиления и подъема и многого другого в последней версии binclass-tools — вашего окончательного решения задач бинарной классификации!

Пакет binclass-tools достиг основной версии 1.* несколько дней назад и отмечает 13 тысяч загрузок с PyPI! Новая версия содержит множество новых функций, в том числе:

  • Калибровочный график
  • Совокупный график усиления
  • Совокупный график подъема
  • График отклика
  • Кумулятивный график отклика

Давайте подробнее рассмотрим, что это такое.

Калибровочные графики

Оценке производительности модели бинарной классификации может помочь использование калибровочных графиков. Эти графики полезны для оценки степени соответствия между предсказанными и фактическими вероятностями. Фундаментальная предпосылка калибровки заключается в том, что если модель предсказывает вероятность наблюдения 0,8, то в действительности наблюдение должно иметь вероятность положительного класса 0,8.

Чтобы создать калибровочный график, необходимо разделить прогнозируемые вероятности на дискретные интервалы, например 0–0,1, 0,1–0,2, 0,2–0,3 и т. д. Для каждого интервала необходимо вычислить среднюю прогнозируемую вероятность вместе с долей положительных классов, используя истинные метки и предсказанные вероятности. После этого средняя прогнозируемая вероятность строится в зависимости от доли положительных классов для каждого бина.

Вот пример калибровочного графика из binclass-tools:

На рис. 1 показана оптимальная калибровочная кривая, имеющая форму диагональной линии. Такая кривая соответствует сценарию, в котором предсказанные вероятности полностью совпадают с реальными вероятностями. Стоит отметить, что несовершенные калибровочные кривые широко распространены, при этом предсказанные вероятности иногда завышают или занижают фактические вероятности.

На Рис. 1 калибровочная кривая, созданная с помощью binclass-tools, показывает ошибку в каждой точке кривой. Калибровочные кривые также могут облегчить вычисление ожидаемой ошибки калибровки (ECE), которая измеряет средний разрыв между прогнозируемой и фактической вероятностью для всех бинов. Для расчета ECE складывается взвешенная абсолютная разница между средней прогнозируемой вероятностью и долей положительных классов в каждой ячейке, где вес соответствует размеру ячейки.

Калибровочные графики оказываются полезными при сравнении нескольких моделей бинарной классификации. Сравнивая калибровочные кривые различных моделей, можно определить, какие модели лучше откалиброваны и способны давать более точные прогнозы. Binclass-tools облегчает это, предоставляя специальную функцию, которая генерирует калибровочную кривую нескольких моделей.

В дополнение к калибровочным кривым для каждой модели также могут быть построены графики прогнозируемого распределения вероятностей.

Графики прогнозируемого распределения вероятностей, также известные как гистограммы вероятности или графики плотности, часто включаются вместе с калибровочными кривыми. Эти графики отображают распределение предсказанных вероятностей для всех наблюдений в наборе данных. В задачах бинарной классификации прогнозируемые вероятности должны находиться в диапазоне от 0 до 1, где значения, близкие к 0, указывают на низкую вероятность принадлежности к положительному классу, а значения, близкие к 1, предполагают высокую вероятность принадлежности к положительному классу.

В идеале предсказанное распределение вероятностей должно быть правильно откалибровано, при этом большинство наблюдений имеют предсказанные вероятности, точно отражающие фактические вероятности. Прогнозируемое распределение вероятностей хорошо откалиброванного бинарного классификатора будет иметь пик около 0,5, что предполагает, что модель беспристрастна как к положительному, так и к отрицательному классу. Частота распределения будет постепенно снижаться к 0 и 1, что указывает на то, что модель может уверенно делать прогнозы для явно положительных или отрицательных наблюдений. Однако прогнозируемое распределение вероятностей может быть асимметричным или иметь несколько пиков в практических приложениях, что указывает на то, что модель неадекватно откалибрована и может потребовать дополнительной настройки. Например, если гистограмма имеет пик около 0,5, но мало наблюдений с предсказанными вероятностями, близкими к 0 или 1, это может указывать на то, что модель не может с уверенностью различать положительные и отрицательные классы.

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

Совокупный график усиления

Диаграмма накопленного выигрыша — это визуальное отображение способности модели бинарной классификации идентифицировать положительный класс. Он указывает процент положительных наблюдений, которые можно выявить при обследовании определенного процента населения с самыми высокими прогнозными вероятностями принадлежности к положительному классу.

Процесс создания этой диаграммы включает сортировку наблюдений в наборе данных по их прогнозируемой вероятности в порядке убывания. Затем отсортированные наблюдения разделяются на заранее определенное количество ячеек или процентилей, каждая из которых содержит равный процент от общей совокупности. На диаграмме накопленного усиления отображается совокупный процент положительных наблюдений в каждом интервале, прогрессирующий от самой высокой до самой низкой прогнозируемой вероятности. Ось X графика отражает процент рассматриваемой совокупности в диапазоне от 0% до 100%, а ось Y отображает процент положительных наблюдений, которые могут быть идентифицированы в этой совокупности.

Вот пример графика кумулятивного прироста от binclass-tools:

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

Однако могут быть ситуации, когда модель с кумулятивным графиком усиления, который отклоняется от идеальной диагональной линии, предпочтительнее. Например, модель, используемая для выявления мошенников, может обнаруживать 80 % мошенников путем анализа только 23 % населения, отсортированного по уменьшению прогнозируемой вероятности, как показано на рисунке 3. Эта модель подходит, если целью является выявление мошенников. как можно больше мошенников при ограниченных ресурсах. Тем не менее, важно оценить эффективность модели в разных процентилях населения, чтобы определить, где необходимы дальнейшие улучшения.

Совокупный график подъема

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

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

Вот пример кривой подъема из binclass-tools:

Значение подъема указывает на улучшение способности модели идентифицировать положительные наблюдения по сравнению со случайным классификатором для каждого бина. Случайная модельная линия на графике кумулятивного подъема представляет собой плоскую линию, которая проходит от одного конца графика до другого на высоте, эквивалентной общему положительному показателю в популяции. Значение подъема, равное 1, означает, что производительность модели идентична производительности случайного классификатора, в то время как значение подъема, превышающее 1, предполагает, что модель превосходит случайный классификатор в выявлении положительных наблюдений. Как показано на рис. 4, выбор 44% лучших наблюдений, отсортированных по уменьшению прогнозируемой вероятности, приводит к выборке, содержащей в 2,2 раза больше процентов случаев целевого класса, чем ожидалось бы случайной моделью.

Следовательно, идеальным графиком кумулятивного подъема будет кривая, которая значительно выше линии случайной модели, демонстрируя, что модель может идентифицировать положительные наблюдения более эффективно, чем случайный выбор.

График отклика

Визуализация ответа — это форма графического представления, используемая для оценки эффективности модели бинарной классификации. Это двумерное изображение, показывающее процент наблюдаемых случаев положительного класса для каждой из десяти групп одинакового размера, в которые сортируются предсказанные вероятности. Как и в предыдущих диаграммах, визуализация ответа отображает прогнозируемые децили вероятности на оси x в порядке убывания, а ось y представляет процент фактических случаев положительного класса для каждой группы.

Вот пример кривой отклика от binclass-tools:

Надежным методом измерения производительности модели бинарной классификации является график отклика. График отклика отображает долю фактических положительных наблюдений класса в каждом дециле прогнозируемых вероятностей. На идеальном графике отклика хорошо откалиброванная модель с сильной предсказательной силой должна демонстрировать быстрый рост доли фактических наблюдений положительного класса в начальных децилях прогнозируемых вероятностей, за которым следует более постепенное увеличение в более поздних децилях. В начальных децилях прогнозируемых вероятностей модель наиболее уверена в своих прогнозах и, как ожидается, выявит высокий процент фактических наблюдений положительного класса. Например, на рис. 5 65 % наблюдений в дециле 2 идентифицированы как принадлежащие к целевому классу (классу 1).

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

Кумулятивный график отклика

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

Вот пример кумулятивной кривой отклика от binclass-tools:

В этом случае график кумулятивного отклика не проходит через линию случайной модели, поскольку значение кумулятивного отклика для случайной модели в 10-м дециле равно общей доле положительных случаев, что совпадает со значением кумулятивного отклика для любого другая модель в 10-м дециле.

График кумулятивного отклика является одним из наиболее часто используемых графиков, поскольку он отвечает на простой вопрос, заданный также неспециалистами по данным: «Если мы применим модель и выберем до дециля X, каков ожидаемый процент наблюдений целевого класса в выбор?".

Например, на Рисунке 6 видно, что 63 % наблюдений в процентилях от 1 до 29 вместе взятых принадлежат целевому классу.

Прохладный! Но как я могу построить все эти замечательные кривые?

Чтобы построить простые графики этих кривых, вы можете использовать пакет Python binclass-tools, который доступен как инструмент с открытым исходным кодом на GitHub. Для получения дополнительной информации о том, как использовать функции для создания вышеупомянутых графиков и примера кода, обратитесь к странице проекта GitHub здесь:



Обратите внимание, что графики, представленные в этой статье, были добавлены в версию 1.0.0 пакета. Если вам интересно узнать о теории сюжетов, реализованной в более ранних версиях, вы можете обратиться к этой статье для интерактивной матрицы путаницы:



и эта статья для графиков Interactive ROC и Precision-Recall:



Как всегда, любые отзывы о новых возможностях пакета приветствуются.