Время прочтения: 6 мин.

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

КД = ROC_AUC * 2 – 1

ROC_AUC – площадь под кривой ошибок (ROC = receiver operating characteristic (кривая ошибок), AUC = area under the curve (площадь под кривой)

Таким образом, на выходе получается единственное число. Какой же доверительный интервал может быть у единственного числа? И тем не менее, доверительный интервал коэффициент Джини существует.

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

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

Доверительный интервал коэффициента Джини определяется на основе стандартного отклонения, которое рассчитывается с использованием значения AUC по следующей формуле:

Указанная формула приведена в статье «The Meaning and Use of the Area under a Receiver Operating Characteristic (ROC) Curve». Кратко поясню смысл приведенной формулы.

Она состоит из трех условных блоков:

Первый блок- это дисперсия AUC, которая в динамике представляет собой дугу, принимающую максимальное значение при значениях AUC=0,5, что объясняется наибольшей неопределенностью разделения классов и минимальными значениями дисперсии на концах графика.

Второй блок – это вероятность того, что два случайно выбранных аномальных класса будут оцениваться выше, чем случайно выбранный нормальный класс.

Третий блок – вероятность того, что один случайно выбранный аномальный класс будет оценен выше, чем два случайно выбранных нормальных класса.

Для наглядности визуализирую блоки на графике.

Доверительный интервал коэффициента Джини рассчитывается по формуле:

x = 1.96 для 95% доверительной вероятности или 2,58 для 99% вероятности (определяется исследователем)

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

import pandas as pd 
from sklearn.metrics import roc_auc_score
import numpy as np
import scipy.stats as sps

def gini_di(nn, na, gini, auc, alpha=0.05): 
    n= nn+na # nn – число «позитивных» наблюдений, na -  число «негативных»
    q1 = auc/(2-auc)# блоки формулы из статьи 
    q2 = (2*auc**2)/(1+auc) # блоки формулы из статьи 
    #стандартное отклонение Джини
    sigma = (np.sqrt((auc*(1-auc)+(na-1)*(q1-auc**2)+(nn-1)*(q2-auc**2))/(na*nn)))*2
    return ((abs(sps.t.ppf(alpha/2, n-1))*sigma)).round(4)

Для исследования свойств доверительного интервала коэффициента Джини были подготовлены данные с бинарной переменной (0 и 1), состоящие из двух колонок «target» и «predict». Соотношение нулей и единиц подбиралось так, чтобы коэффициент Джини имел определенное значение.

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

Число строк (наблюдений)500100020005000700010000
Значение коэффициента Джини0.94870.93710.96270.93750.94230.9308

Результаты приведены на графике.

Поведение рассматриваемой метрики аналогично ее классическому аналогу.

Исследую поведение доверительного интервала в условиях изменяющегося коэффициента Джини и одинаковых объемов выборки

Число строк (наблюдений)500050005000500050005000500050005000
Коэффициент Джини0.93750.8650.76110.66180.56380.46370.36360.26570.1647

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

Поведение доверительного интервала коэффициента Джини предсказуемо и объяснимо. Вместе с тем, его свойства добавляют некоторые ограничения в применении. Как правило, при периодической валидации моделей используется датасет меньшего объема (иногда в 3-4 раза, как показывает практика), чем тот, на котором производилось обучение модели. В этой связи возможна ситуация, когда коэффициент Джини снижается на валидируемой выборке, но его более широкий доверительный интервал может перекрываться с доверительным интервалом выборки для обучения. Исходя из этого, снижение коэффициента Джини может признаваться несущественным и решение о дообучении модели приниматься не будет, что, в свою очередь, повышает вероятность ошибок в принятии бизнес-решения.

Примерная ситуация визуализирована на графике.

Как видно из графика, коэффициент Джини тестовой выборки (test1) ниже тренировочной почти на 11 п.п., но за счет меньшего объема выборки доверительные интервалы перекрываются (нижняя красная и верхняя зеленая линии), а в случае, когда объем тестовой выборки (test2) ниже в 6 раз, чем у тренировочной, даже сокращение коэффициента Джини более чем на 18 п.п. может не вызвать потребность в  дообучении модели, поскольку доверительные интервалы уверенно перекрываются у обеих выборок (нижняя красная линия и верхняя синяя).

Основной вывод: для преодоления данной ситуации на практике в ходе периодической валидации целесообразно использовать выборки для обучения и валидации в сопоставимых объемах, чтобы не добавлять излишний шум в принятие решений о модификации модели с учетом изменяющейся экономической ситуации (если речь идет о моделях, касающихся кредитных операций).

В практической деятельности описываемый показатель следует рассматривать в плане сравнения оценки коэффициента Джини на выборке для разработки и тестовой выборки (out-of-sample). Одновременно следует заметить, что наиболее информативно применение доверительного интервала коэффициента Джини на выборке последующих периодов после создания модели (out-of-time) при прогнозировании событий в экономической области (например, принятие решений по выдаче кредитов), когда более широкий диапазон доверительного интервала на выборке out-of-time может сигналить об ухудшении прогностической силы модели и некотором увеличении неопределенности прогнозов.

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

Литература:

Hanley, J.A., McNeil, B.J. The meaning and use of the area under a receiver operating characteristic (ROC) curve. 1982. Radiology, 143(1). P. 29-36.

Henking, А., Bluhm, C., Fahrmeir, L. Kreditrisikomessung, Statistische Grundlagen, Methoden und Modellierung. Springer; 2006. 312 p.