ROC AUC Score: Understanding its Role in Machine Learning Models
ROC AUC Score - это метрика, используемая для оценки качества моделей классификации. ROC расшифровывается как Receiver Operating Characteristic, а AUC - Area Under the ROC Curve. Она основана на построении ROC-кривой, которая графически представляет зависимость между чувствительностью и специфичностью модели, и показывает, насколько хорошо отличаются положительные и отрицательные классы.
ROC-кривая - это кривая, построенная на координатной плоскости в виде графика, в котором по оси абсцисс откладывается ложная положительная скорость (FPR), а по оси ординат - истинно положительная скорость (TPR). FPR - это доля предсказанных классификатором отрицательных результатов среди всех отрицательных наблюдений, а TPR - доля предсказанных классификатором положительных результатов среди всех положительных наблюдений.
Пример кода для вычисления ROC AUC Score:
from sklearn.metrics import roc_auc_score
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
# Создаем синтетические данные для примера
X, y = make_classification(n_samples=1000, n_features=10, n_classes=2, random_state=42)
# Разбиваем данные на обучающую и тестовую выборки
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Обучаем модель логистической регрессии на обучающей выборке
model = LogisticRegression()
model.fit(X_train, y_train)
# Получаем вероятности принадлежности наблюдений к положительному классу
y_probs = model.predict_proba(X_test)[:, 1]
# Вычисляем ROC AUC Score
roc_auc = roc_auc_score(y_test, y_probs)
print("ROC AUC Score: {:.2f}".format(roc_auc))
В этом коде мы создаем синтетические данные, разбиваем их на обучающую и тестовую выборки, обучаем модель логистической регрессии на обучающей выборке, получаем вероятности принадлежности наблюдений к положительному классу на тестовой выборке и вычисляем ROC AUC Score. Обычно, чем выше значене ROC AUC Score, тем лучше качество модели.