Algorithm Gold | Подробное понимание индикатора ROC-AUC машинного обучения в одной статье
Algorithm Gold | Подробное понимание индикатора ROC-AUC машинного обучения в одной статье

Герои, рад знакомству. Вот одноимённый «Алгоритм» по всей сети. 0 основ перенесено в AI. Несколько конкурсов по алгоритмам обновляются каждый день, чтобы больше людей могли ими насладиться. удовольствие от интеллекта».

В мире машинного обучения и науки о данных оценка качества модели является очень важным шагом. Кривая ROC (рабочая характеристика приемника) и AUC (площадь под кривой) являются важными инструментами для оценки эффективности моделей классификации.

Этот пункт знаний также очень часто появляется в интервью.。Хотя разобраться в самих понятиях не сложно,Но многие люди легко запутываются при просмотре,Или забудьте, когда нервничаете перед собеседованием,повлиять на реакцию.

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

1. Введение в основные понятия

1.1 Что такое ROC-кривая?

Кривая ROC — это кривая рабочей характеристики приемника. Кривая ROC была получена во время Второй мировой войны и впервые использовалась в области обнаружения сигналов для обнаружения транспортных средств противника (самолетов, кораблей) на поле боя. В настоящее время это широко используемый графический инструмент для оценки производительности моделей двоичной классификации. Это помогает нам понять возможности классификации модели, показывая компромисс между истинно положительным показателем (TPR) и ложным положительным показателем (FPR).

1.2 Что такое AUC

AUC, или Площадь под кривой, представляет собой числовое представление площади под кривой ROC. Он предоставляет количественный показатель для измерения общей производительности модели классификации. Значения AUC варьируются от 0 до 1, причем большие значения указывают на лучшую производительность модели.

1.3 Зачем нужен ROC/AUC

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

Примеры

Предположим, у нас есть набор данных по элементам боевых искусств, в котором 95% образцов — обычные ученики, а 5% — мастера.

Продемонстрируем это на примере кода (код предназначен для воспроизведения, часть приезжатьобъяснять можно пропустить):

Язык кода:javascript
копировать
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.metrics import roc_curve, roc_auc_score, accuracy_score, confusion_matrix

# Создайте чрезвычайно несбалансированный набор данных о боевых искусствах.
# Предположим, что характеристики представляют собой время обучения боевым искусствам, процент побед в бою и т. д., а метка показывает, подходит ли мастеру
X, y = make_classification(n_samples=1000, n_features=20, n_classes=2, weights=[0.95, 0.05], random_state=42)

# Разделите набор данных на обучающий набор и тестовый набор.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Создайте модель, которая всегда прогнозирует среднее число учеников.
class AlwaysNegativeModel:
    def predict(self, X):
        return np.zeros(X.shape[0])

# Обучение и прогнозирование
model = AlwaysNegativeModel()
y_pred = model.predict(X_test)

# вычислитьматрица путаницыи Точность
cm = confusion_matrix(y_test, y_pred)
accuracy = accuracy_score(y_test, y_pred)

# вычислить ROC Сумма кривой AUC
# Здесь нам нужен вероятностный прогноз, чтобы вычислить ROC Сумма кривой AUC, для демонстрации, мы предполагаем, что модель выдает постоянную вероятность
y_pred_prob = np.zeros(X_test.shape[0])
fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)
auc = roc_auc_score(y_test, y_pred_prob)

# Визуализируйте результаты
plt.figure(figsize=(10, 5))

plt.subplot(1, 2, 1)
plt.title("матрица путаницы")
plt.imshow(cm, interpolation='nearest', cmap=plt.cm.Blues)
plt.colorbar()
plt.xlabel("метка прогноза")
plt.ylabel("настоящая метка")
plt.xticks([0, 1], ["Обычный ученик", "Владелец"])
plt.yticks([0, 1], ["Обычный ученик", "Владелец"])
for i in range(2):
    for j in range(2):
        plt.text(j, i, cm[i, j], ha="center", va="center", color="red")


print(f"Точность: {accuracy:.2f}")
print(f"AUC: {auc:.2f}")

Анализ результатов

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

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

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

  • ROC Сумма кривой AUC:проходитьрисовать ROC изгибивычислить AUC, мы можем посмотреть приезжать AUC для 0,50, что указывает на то, что модель не обладает дискриминационной способностью. РПЦ изгиб — это диагональная линия, показывающая, что модель делает случайные предположения.

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

Для получения дополнительной информации см. Планета свободных знаний.

2. Подробное объяснение

2.1 Определение TPR (истинно-положительного показателя) и FPR (ложно-положительного показателя)

Чтобы понять кривую ROC, сначала необходимо разобраться с понятиями TPR и FPR:

  • TPR(True Positive Rate):также известный какдля Чувствительность(Sensitivity)или Отзывать,Это означает, что среди всех реальных положительных образцов,Доля правильно предсказанных положительных результатов. Вычислить его формулу для:

Среди них TP (True Positives) — это количество образцов, которые правильно классифицируют положительный класс как положительный класс, а FN (False Negatives) — это количество образцов, которые неправильно классифицируют положительный класс как отрицательный класс.

  • FPR(False Positive Rate):значит правда во всемдляв отрицательных пробах,Доля положительных результатов, которые были предсказаны неправильно. Вычислить его формулу для:

Среди них FP (ложноположительные результаты) — это количество образцов, которые неправильно классифицируют отрицательный класс как положительный класс, а TN (истинно отрицательные результаты) — это количество образцов, которые правильно классифицируют отрицательный класс как отрицательный класс.

2.2 Математическое определение AUC

AUC (площадь под кривой) — это площадь под кривой ROC, которая используется для оценки эффективности модели классификации. Значения AUC варьируются от 0 до 1, причем большие значения указывают на лучшую производительность модели.

Математически AUC можно рассчитать путем интегрирования:

В дискретном случае AUC можно аппроксимировать правилом трапеций:

3 шага для построения кривой ROC

Шаги для построения кривой ROC следующие:

  1. Выберите порог:от 0 приезжать 1 разные пороги。
  2. вычислить TPR и FPR:Для каждого порогаценить,вычислить соответствующее TPR и FPR。
  3. рисоватьизгиб:к FPR — горизонтальная ось,TPR длявертикальная ось,рисовать ROC изгиб。

Выберите порог: разные пороги от 0 до 1

Язык кода:javascript
копировать
from sklearn.metrics import roc_curve

# Прогнозирование вероятности набора тестов
y_pred_prob = model.predict_proba(X_test)[:, 1]

# вычислить ROC изгиб
fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)

# Выходной частичный порогценить
print("порогценить: ", thresholds[:10])  # Показать только первые 10 порогов

Рассчитать TPR и FPR: для каждого порога рассчитайте соответствующие TPR и FPR.

Язык кода:javascript
копировать
# Выходной частичный порогценить соответствующий TPR и FPR
for i in range(10):  # Отображаются только соответствующие цены первых 10 порогов.
    print(f"порогценить: {thresholds[i]:.2f} -> ложноположительный уровень (FPR): {fpr[i]:.2f}, истинно положительный показатель (TPR): {tpr[i]:.2f}")

Нарисуйте кривую: используя FPR в качестве горизонтальной оси и TPR в качестве вертикальной оси, нарисуйте кривую ROC.

Язык кода:javascript
копировать
import matplotlib.pyplot as plt

# Визуализация ROC изгиб
plt.figure(figsize=(8, 6))
plt.plot(fpr, tpr, color='blue', lw=2, label='ROC изгиб')
plt.plot([0, 1], [0, 1], color='gray', lw=1, linestyle='--', label='случайное предположение')
plt.xlabel("ложноположительный уровень (FPR)")
plt.ylabel("истинно положительный показатель (TPR)")
plt.title("ROC изгиб")
plt.legend(loc="lower right")

# Отметьте несколько пороговых точек на изгибе.
threshold_points = [0.2, 0.5, 0.8]
for threshold in threshold_points:
    idx = np.where(thresholds >= threshold)[0][0]
    plt.scatter(fpr[idx], tpr[idx], marker='o', color='red')
    plt.text(fpr[idx], tpr[idx],f"порогценить={threshold:.2f}", fontsize=12)

plt.show()

4 Значение AUC

Чем больше значение AUC, тем лучше производительность модели. Конкретно:

  • AUC = 0.5 Указывает, что модель не обладает способностью к классификации и эквивалентна случайному угадыванию.
  • 0.5 < AUC < 0.7 Указывает на то, что модель имеет определенные возможности классификации, но эффект средний.
  • 0.7 ≤ AUC < 0.9 Указывает, что модель имеет лучшую способность классификации.
  • AUC ≥ 0.9 Указывает на то, что модель имеет очень хорошие возможности классификации.

Преимущества и недостатки AUC

преимущество:

  • Независимый от порога:AUC Он измеряет производительность модели при всех возможных пороговых значениях классификации, поэтому на нее не влияет ни один порог.
  • Комплексная оценка эффективности:AUC Всесторонний TPR и FPR информацию для комплексной оценки эффективности модели.

недостаток:

  • Может не работать с крайне несбалансированными данными.:На крайне несбалансированных наборах данных,AUC может неточно отражать эффективность модели.,Необходимо объединить с другими оценками.
  • объяснятьсложный:Для непрофессионалов,AUC Объяснения могут быть трудными для понимания.

пример кода

下面наспроходитьпример кода Приходитьвычислить AUC и объясните его значение:

Язык кода:javascript
копировать
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import roc_curve, roc_auc_score, accuracy_score, confusion_matrix

# Сгенерируйте несбалансированный набор данных о боевых искусствах
# Предположим, что характеристики представляют собой время обучения боевым искусствам, процент побед в бою и т. д., а метка показывает, подходит ли мастеру
X, y = make_classification(n_samples=1000, n_features=20, n_classes=2, weights=[0.9, 0.1], random_state=42)

# Разделите набор данных на обучающий набор и тестовый набор.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Обучите модель логистической регрессии
model = LogisticRegression()
model.fit(X_train, y_train)

# Прогнозировать набор тестов
y_pred_prob = model.predict_proba(X_test)[:, 1]

# вычислить ROC Сумма кривой AUC
fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)
auc = roc_auc_score(y_test, y_pred_prob)

# Визуализируйте результаты
plt.figure(figsize=(10, 5))

plt.subplot(1, 2, 1)
plt.title("ROC изгиб")
plt.plot(fpr, tpr, color='blue', lw=2, label=f"AUC = {auc:.2f}")
plt.plot([0, 1], [0, 1], color='gray', lw=1, linestyle='--')
plt.xlabel("ложноположительный уровень")
plt.ylabel("истинно положительный показатель")
plt.legend(loc="lower right")

plt.subplot(1, 2, 2)
plt.title("Значение Индикация AUC")
plt.fill_between(fpr, tpr, color='blue', alpha=0.3)
plt.plot(fpr, tpr, color='blue', lw=2, label=f"AUC = {auc:.2f}")
plt.xlabel("ложноположительный уровень")
plt.ylabel("истинно положительный показатель")
plt.legend(loc="lower right")

plt.tight_layout()
plt.show()

print(f"AUC: {auc:.2f}")

ROC-кривая

  • Горизонтальная ось (частота ложноположительных результатов, FPR):Указывает на то, что образцы отрицательного класса неправильно классифицированы.для Доля положительного класса。
  • Вертикальная ось (истинно положительный показатель, TPR):Указывает на то, что положительные образцы правильно классифицированы.для Доля положительного класса。
  • синий изгиб:выставка Понятно模型существовать不同порогценить下的 FPR и TPR 之间отношение。
  • серая пунктирная линия:Представляет производительность модели случайного угадывания.,Что Значение AUCдля 0.5。
  • Значение AUC:показано на картинке Значение AUC (обозначено в легенде), чем ближе 1 Это показывает, что эффективность классификации модели лучше.

Диаграмма значений AUC

  • синяя область:ROC Площадь под изгибом, т.е. Значение АУК. Чем больше площадь, тем больше площадь. показывает, что эффективность классификации модели лучше.
  • Значение метки AUC:Также отмечено в легенде Значение AUC。

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

5. Практические примеры применения

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

5.1 Применение в различных областях

медицинский диагноз

существоватьмедицинский диагнозсередина,ROC Сумма кривой AUC Он широко используется для оценки эффективности диагностических тестов. Например, при скрининге на рак врачи хотят, чтобы тест правильно идентифицировал пациентов, у которых есть это заболевание, и тех, у кого его нет. РПЦ Кривая может помочь врачам выбрать лучший порог для максимизации точности обнаружения.

оценка финансовых рисков

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

5.2 Анализ фактического случая и реализация кода

Мы будем использовать симуляцию медицинского набор данных диагностики, чтобы продемонстрировать, как применять ROC и АУК. Предположим, у нас есть набор данных, содержащий различные характеристики пациентов и наличие у них определенного заболевания.

пример кодаи Анализ результатов

Язык кода:javascript
копировать
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import roc_curve, roc_auc_score, accuracy_score, confusion_matrix

# Загрузить набор данных о раке молочной железы
data = load_breast_cancer()
X = data.data
y = data.target

# Разделите набор данных на обучающий набор и тестовый набор.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Обучите модель логистической регрессии
model = LogisticRegression(max_iter=10000)
model.fit(X_train, y_train)

# Прогнозировать набор тестов
y_pred = model.predict(X_test)
y_pred_prob = model.predict_proba(X_test)[:, 1]

# вычислитьматрица путаницыи Точность
cm = confusion_matrix(y_test, y_pred)
accuracy = accuracy_score(y_test, y_pred)

# вычислить ROC Сумма кривой AUC
fpr, tpr, thresholds = roc_curve(y_test, y_pred_prob)
auc = roc_auc_score(y_test, y_pred_prob)

# Визуализируйте результаты
plt.figure(figsize=(10, 5))

plt.subplot(1, 2, 1)
plt.title("матрица путаницы")
plt.imshow(cm, interpolation='nearest', cmap=plt.cm.Blues)
plt.colorbar()
plt.xlabel("метка прогноза")
plt.ylabel("настоящая метка")
plt.xticks([0, 1], ["не болен", "больной"])
plt.yticks([0, 1], ["не болен", "больной"])
for i in range(2):
    for j in range(2):
        plt.text(j, i, cm[i, j], ha="center", va="center", color="red")

plt.subplot(1, 2, 2)
plt.title("ROC изгиб")
plt.plot(fpr, tpr, color='blue', lw=2, label=f"AUC = {auc:.2f}")
plt.plot([0, 1], [0, 1], color='gray', lw=1, linestyle='--', label='случайное предположение')
plt.xlabel("ложноположительный уровень")
plt.ylabel("истинно положительный показатель")
plt.legend(loc="lower right")

plt.tight_layout()
plt.show()

print(f"Точность: {accuracy:.2f}")
print(f"AUC: {auc:.2f}")

Анализ результатов

  • Точность:модель Точность(Accuracy)для 0,98, что означает, что среди всех исследуемых образцов есть 98% образцы правильно классифицированы.
  • Значение AUC:Значение AUCдля 0,998, что означает, что модель отлично различает здоровых и пораженных пациентов. АУК = 0.998 Это означает, что модель может полностью различать положительные и отрицательные образцы при всех возможных порогах, что является идеальным состоянием.

объяснять

  • Точностьдля 0.98:существовать大多数情况下,Это высокая точность,Это показывает, что почти все предсказания модели верны.
  • AUC = 0.998:表示模型существовать所有可能的порогценитьможет полностью различать незатронутые и незатронутыеибольной пациент,Демонстрация чрезвычайно высокой различительной способности модели.

6. Сравнение и противопоставление родственных понятий

В этом разделе мы рассмотрим индекс ROC/AUC и другие оценки для сравнения, чтобы герои могли более полно понять роль этих индексов в оценке модели.

6.1 ROC/AUC и матрица путаницы

матрица «путаницы» — это инструмент, используемый для оценки эффективности моделей классификации путем отображения количества истинных положительных результатов (TP), ложных положительных результатов (FP), истинных отрицательных результатов (TN) и ложных отрицательных результатов (FN). РПЦ Сумма кривой AUC Целью является всесторонняя оценка эффективности модели при различных пороговых значениях.

Пример кода:

Язык кода:javascript
копировать
from sklearn.metrics import confusion_matrix, accuracy_score

# Прогнозировать набор тестов
y_pred = model.predict(X_test)
y_pred_prob = model.predict_proba(X_test)[:, 1]

# вычислитьматрица путаницы
cm = confusion_matrix(y_test, y_pred)
accuracy = accuracy_score(y_test, y_pred)

# Выходная матрица путаницыи Точность
print("матрица путаницы:")
print(cm)

6.2 Кривая ROC/AUC и PR

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

  • Точность:表示существовать所有被预测для正类的样本середина,Соотношение актуальных и позитивных типов.
  • Отзывать:表示существовать所有实际для正类的样本середина,Доля положительных классов, которые правильно предсказаны.

Пример кода:

Язык кода:javascript
копировать
from sklearn.metrics import precision_recall_curve

# вычислить PR изгиб
precision, recall, _ = precision_recall_curve(y_test, y_pred_prob)

# Визуализация PR изгиб
plt.figure()
plt.plot(recall, precision, color='blue', lw=2, label='PR изгиб')
plt.xlabel("Отзыв")
plt.ylabel("степень точности")
plt.title("PR изгиб")
plt.legend(loc="lower left")
plt.show()

6.3 Взаимосвязь между другими показателями оценки (такими как точность, полнота) и ROC/AUC

Кроме ROC/AUC и PR Кривая, другие часто используемые индикаторы оценки включают:

  • Точность(Accuracy):Указывает долю правильно классифицированных образцов от общего числа образцов.。
  • Точность:表示существовать所有被预测для正类的样本середина,Соотношение актуальных и позитивных типов.
  • Отзывать:表示существовать所有实际для正类的样本середина,Доля положительных классов, которые правильно предсказаны.
  • Оценка F1:точностьи Регулировка скорости отзываисредний,Используется для всесторонней оценки точности и полноты модели.

Пример кода:

Язык кода:javascript
копировать
from sklearn.metrics import precision_score, recall_score, f1_score

# вычислить точность, скорость полноты F1 Фракция
precision = precision_score(y_test, y_pred)
recall = recall_score(y_test, y_pred)
f1 = f1_score(y_test, y_pred)

# Вывод результатов
print(f"Точность: {precision:.2f}")
print(f"Скорость запоминания: {recall:.2f}")
print(f"F1 Фракция: {f1:.2f}")

7. Недоразумения и меры предосторожности

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

7.1 Распространенные заблуждения

Миф 1: Высокая точность равна высокой производительности

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

Недоразумение 2: Чем выше значение AUC, тем лучше

Хотя Значение Высокий показатель AUC указывает на хорошую производительность модели, но в некоторых сценариях приложений более важным может быть другой индекс, например Точность Отзывать. Например, в медицинской диагностике запоминаемость (т. е. чувствительность) часто выше, чем AUC Еще более критично, поскольку цена пропущенного диагноза очень высока.

Недоразумение 3: Модель оценки с одним показателем

Опираться на один показатель для оценки эффективности модели недостаточно. Лучше всего комбинировать несколько индикаторов (например, AUC, точность, степень точности, скорость отзыва F1 Оценка), чтобы всесторонне оценить производительность модели.

7.2 На что следует обратить внимание при использовании ROC/AUC

Примечание 1. Проблема дисбаланса данных.

При работе с наборами данных, несбалансированными по классам, AUC и ROC Кривые могут дать более полную оценку, но их все равно необходимо объединять. PR Кривая и другие индикаторы для комплексного анализа.

Примечание 2. Выберите подходящий порог.

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

Примечание 3: Калибровка модели

Убедитесь, что выходные данные вероятности модели откалиброваны, то есть выходная вероятность соответствует фактической вероятности возникновения. Калибровку модели можно выполнить с помощью графиков надежности (Калибровка Curve)Оценить другими методамии Корректирование。

[Сожми кулак в заключение]

После предыдущего подробного объяснения у нас есть полное понимание ROC Сумма кривой AUC Концепции, методы расчета, реализации кода и приложения в различных областях. Ниже приводится краткий обзор основного содержания статьи:

Обзор основных моментов

  1. основные понятия:ROC изгиб是用Приходить评价二分类模型性能的工具,проходить显示истинно положительный показатель(TPR)иложноположительный уровень(FPR), чтобы помочь нам понять классификационные возможности модели.AUC (площадь под изгибом) составляет ROC Площадь под изгибом используется для количественной оценки общей производительности модели.
  2. подробныйобъяснять:насподробныйобъяснять Понятно TPR и FPR Определение слова «рисовать» ROC выполняет шаги и демонстрирует, как вычислитьрисовать, на примере кода. ROC хэнданд АУК. Это верно AUC математическое анализируются определение, значение, его преимущества и недостатки.
  3. Демонстрация кода:проходитьиспользовать Python и scikit-learn библиотеке мы реализовали как вычислитьирисовать ROC изгиби AUC и на примерах демонстрирует эффективность этих показателей в практическом применении.
  4. Практические случаи применения:насиспользовать Набор данных о раке молочной железы для обучения моделии Оценивать,Продемонстрировано практическое применение ROC и AUC в медицинских диагнозах.,И подробно демонстрирует с помощью кода, как вычислитьиобъяснять эти индексы.
  5. Сравнение и сравнение связанных понятий:нас对 ROC/AUC с матрицей путаницы、PR изгиб等Что他Оцениватьиндекс进行Понятно对照иконтраст,Помогите полностью понять роль этих индексов,И выберите подходящий метод оценки в соответствии с конкретным сценарием применения.
  6. Недоразумения и меры предосторожности:нас讨论Понятнов использовании ROC и AUC распространенные недоразуменияи На что следует обратить внимание,Напомните героям, что им следует избегать распространенных ошибок при оценке модели.,И обеспечивает комбинацию нескольких методов для оценки производительности модели комплексного анализа.

Обзор ключевых концепций

  • ROC изгиб:Оценивать模型существовать不同порогценитьпроизводительность под,проходитьвыставка TPR и FPR отношение, чтобы помочь понять возможности классификации модели.
  • AUC:Количественная оценка ROC Область под изгибами используется для комплексной оценки общих характеристик модели. Чем больше AUC, тем лучше производительность модели.
  • матрица путаницы:выставкамодель分类结果,Эффективность модели оценивается по четырем основным элементам (TP, FP, TN, FN).
  • PR изгиб:выставкаточностьимежду показателями отзываотношение,Особенно подходит для наборов данных с несбалансированным классом.
  • Калибровка:Оцениватьмодель概率输出是否и Фактическая вероятность соответствует,Убедитесь, что вероятностные прогнозы модели точны.

Благодаря объяснению этой статьи,Надеюсь, герои смогут более полно понять и применить ROC Сумма кривой AUC,Гибко применяйте эти знания в реальных проектах.,Повысьте точность и надежность оценки модели.

- Научные исследования облегчают заботы страны, а инновации приносят пользу людям -

Время ежедневного обновления срочное, и задача неотложная. Неизбежны пропуски. Сообщите мне, что контент предназначен только для обучения и общения. Некоторые материалы из Интернета будут удалены.

[Алгоритм золото, случайные мысли]

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

Если вы считаете, что этот контент ценен, расскажите мне больше. Делитесь, смотрите, ставьте лайки,Помощь Алгоритмическое Золото прочное, долговечное и очень желтое. BL День обновляется;

Также приглашайте героев следуй, звезда Алгоритм золота, который ежедневно смотрят тысячи людей, поможет вам значительно повысить свои навыки и гордиться миром.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose