Пример № 2: Представьте, что вы работаете аналитиком в интернет-магазине, который хочет улучшить свой алгоритм рекомендаций товаров пользователям. Вы хотите проверить, насколько хорошо работает текущий алгоритм и решаете посчитать метрику полноты для одной из категорий товаров – "электроника".
Для этого вы берете случайную выборку из 200 пользователей, которые просмотрели товары в категории "электроника" на вашем сайте за последний месяц. После того, как вы применили алгоритм рекомендаций, вы получили следующие результаты:
Из 200 пользователей 120 купили хотя бы один рекомендованный товар в категории "электроника" (TP).
Из 200 пользователей 80 не купили ни одного рекомендованного товара в категории "электроника" (FN).
Рассчитайте метрику полноты (recall) для категории "электроника".
Решение:
TP = 120 (пользователи, которые купили хотя бы один рекомендованный товар в категории "электроника") FN = 80 (пользователи, которые не купили ни одного рекомендованного товара в категории "электроника")
Recall = TP / (TP + FN) = 120 / (120 + 80) = 0.6 = 60%
Метрика полноты для категории "электроника" составляет 60%. Это означает, что ваш текущий алгоритм рекомендаций смог правильно найти 60% всех пользователей, которые купили товары в этой категории за последний месяц. Вам следует анализировать результаты и работать над улучшением алгоритма, чтобы повысить метрику полноты и увеличить долю пользователей, которым будут рекомендованы интересные товары в категории "электроника".
Метрика F1-score (F-мера)
Метрика F1-score (F-мера) – это совместная метрика для оценки качества алгоритма классификации, которая учитывает обе метрики Precision (Точность) и Recall (Полнота). F1-score является гармоническим средним между Precision и Recall, что делает эту метрику более сбалансированной, чем каждая из них по отдельности. F1-score особенно полезна в случаях, когда классы в данных несбалансированы или когда ошибки первого и второго рода имеют схожую важность.
Метрика F1-score рассчитывается следующим образом:
F1-score = 2 * (Precision * Recall) / (Precision + Recall)
где:
Precision = TP / (TP + FP) – точность;
Recall = TP / (TP + FN) – полнота;
TP (True Positives) – количество правильно классифицированных положительных объектов;
FP (False Positives) – количество неправильно классифицированных положительных объектов (ложные срабатывания);
FN (False Negatives) – количество неправильно классифицированных положительных объектов (пропущенные срабатывания).
F1-score принимает значения в диапазоне от 0 до 1 (или от 0% до 100%). Чем ближе значение F1-score к 1 (или 100%), тем лучше модель справляется с задачей классификации, учитывая обе метрики Precision и Recall. Если F1-score равен 0, это означает, что модель полностью не справляется с задачей классификации.
Пример № 1: В задаче определения, является ли человек носителем определенной генетической мутации, модель должна быть высоко точной и полной. Если точность модели равна 90%, а полнота – 80%, то F1-score будет равен 84%.
давайте распишем пошаговое решение для метрики F1-score (F-мера) на примере 1:
Рассчитайте точность и полноту модели, используя соответствующие формулы:
Precision = TP / (TP + FP) Recall = TP / (TP + FN)
В данном примере, точность = 0.9 (или 90%) и полнота = 0.8 (или 80%).
Рассчитайте F1-score как гармоническое среднее точности и полноты:
F1-score = 2 * (Precision * Recall) / (Precision + Recall)
F1-score = 2 * (0.9 * 0.8) / (0.9 + 0.8) = 0.84 (или 84%)
Таким образом, в данном примере F1-score равен 84%.
Мы получили F1-score равный 84%, что указывает на то, что модель демонстрирует неплохую производительность с учетом обеих метрик (точность и полнота). Это позволяет оценить модель с более сбалансированной точки зрения по сравнению с использованием только одной из метрик.
Пример № 2: В задаче определения, является ли новость фейковой или нет, модель должна быть высоко точной и полной. Если точность модели равна 85%, а полнота – 90%, то F1-score будет равен 87.5%.
давайте рассмотрим пошаговое решение для метрики F1-score (F-мера) на примере 2:
Рассчитайте точность и полноту модели, используя соответствующие формулы:
Precision = TP / (TP + FP) Recall = TP / (TP + FN)
В данном примере, точность = 0.85 (или 85%) и полнота = 0.9 (или 90%).
Рассчитайте F1-score как гармоническое среднее точности и полноты:
F1-score = 2 * (Precision * Recall) / (Precision + Recall)
F1-score = 2 * (0.85 * 0.9) / (0.85 + 0.9) = 0.875 (или 87.5%)
Таким образом, в данном примере F1-score равен 87.5%.
Метрика ROC AUC
Метрика ROC AUC (Receiver Operating Characteristic – Area Under the Curve) – это метрика качества алгоритма классификации, основанная на анализе ROC-кривой. ROC-кривая представляет собой графическое представление взаимосвязи между чувствительностью (True Positive Rate, TPR) и специфичностью (False Positive Rate, FPR) классификатора при различных пороговых значениях.
True Positive Rate (TPR) или Recall (Полнота) определяется как TP / (TP + FN);
False Positive Rate (FPR) определяется как FP / (FP + TN).
ROC AUC является численным значением, равным площади под ROC-кривой. Оно принимает значения в диапазоне от 0 до 1 (или от 0% до 100%). Чем ближе значение ROC AUC к 1 (или 100%), тем лучше модель справляется с задачей классификации. Значение ROC AUC, равное 0.5, означает, что модель работает на уровне случайного предсказания, а значение, меньше 0.5, указывает на то, что модель предсказывает хуже случайного предсказания.
Преимущества использования метрики ROC AUC заключаются в том, что она не зависит от порога классификации, устойчива к несбалансированным классам и может быть использована для сравнения различных моделей классификации.
Однако стоит отметить, что ROC AUC может давать оптимистичные оценки при наличии сильно несбалансированных классов. В таких случаях рекомендуется использовать другие метрики, такие как Precision-Recall AUC, которые учитывают ошибки первого и второго рода.
Вы ознакомились с фрагментом книги.
Приобретайте полный текст книги у нашего партнера: