Accuracy vs. precision vs. recall в машинном обучении
Узнай об Accuracy, Precision и Recall в машинном обучении. Изучи матрицу ошибок, F1-меру и то, как использовать эти важные метрики оценки.

Машинное обучение (ML) — это ветвь искусственного интеллекта (AI), которая сосредоточена на создании систем, обучающихся на данных. Оно играет центральную роль во многих других областях AI, включая computer vision, где машины интерпретируют изображения, и обработку естественного языка, где они понимают и генерируют человеческую речь.
Часто такие AI модели используют методы глубокого обучения для получения предсказаний из данных. Несмотря на высокую эффективность, такие системы не всегда дают верные прогнозы. Некоторые выходные данные могут быть точными, в то время как другие не попадают в цель.
Понимание того, как возникают эти ошибки, — ключевая часть оценки эффективности работы модели. Для измерения производительности мы можем использовать model evaluation metrics.
К распространенным метрикам оценки относятся accuracy (общая правильность), precision (надежность положительных предсказаний) и recall (насколько хорошо модель выявляет реальные положительные случаи). На первый взгляд они могут показаться похожими, но каждая из них фокусируется на разных аспектах поведения модели.
В этой статье мы подробно рассмотрим каждую из этих метрик производительности AI моделей. Мы также изучим, как они связаны друг с другом и как выбрать подходящую для твоего сценария использования. Начнем!
Значение метрик оценки моделей в машинном обучении#
Модель machine learning поначалу может казаться эффективной. Но без правильных метрик оценки трудно понять, насколько точны её результаты. Эти метрики придают структуру оценке модели и помогают ответить на ключевой вопрос: являются ли предсказания модели полезными и надёжными для конкретной задачи?
Такие метрики, как accuracy, precision и recall, дают разработчикам AI четкий способ измерения эффективности работы модели. Например, при сравнении различных моделей эти метрики позволяют увидеть, какая из них лучше всего справляется с конкретной задачей. Они помогают оценить производительность и выбрать модель, которая лучше всего соответствует целям проекта в области AI.

Рис. 1. Рабочий процесс обучения и оценки модели (Источник)
Эти метрики также делают сравнение производительности более объективным. Вместо того чтобы полагаться на догадки или неполные наблюдения, они предоставляют измеримые данные о том, как модель ведет себя в различных ситуациях. Тем самым они подчеркивают, какие аспекты производительности наиболее важны в каждом конкретном контексте.
Например, выбор метрики часто зависит от приложения. В AI healthcare applications важна полнота (recall), поскольку цель состоит в том, чтобы выявить как можно больше положительных случаев, даже если некоторые отрицательные будут ошибочно помечены. Напротив, фильтр спама в электронной почте может отдавать приоритет точности (precision), чтобы избежать ошибочной пометки легитимных писем как спама.
Матрица ошибок (confusion matrix): основа метрик классификации#
Матрица ошибок (confusion matrix) представляет собой таблицу два на два, которая имеет фундаментальное значение для оценки моделей AI. Она организует предсказания в четыре категории путем сравнения фактических результатов с предсказанными результатами (ответами, которые дает модель).
Такое сравнение дает детальное представление о работе модели. Оно служит основой для ключевых метрик оценки, таких как precision и recall, которые вычисляются непосредственно на основе значений в матрице.
Строки таблицы представляют фактические классы, а столбцы — предсказанные классы. Каждая ячейка показывает количество результатов в этой категории. Проще говоря, она показывает, сколько предсказаний были верными и какие типы ошибок совершила модель.
Матрица ошибок особенно полезна, когда данные несбалансированы, то есть в некоторых категориях примеров гораздо больше, чем в других. Она также полезна, когда разные типы ошибок влекут за собой разные издержки.
Например, при обнаружении мошенничества крайне важно выявлять мошенническую активность, но ошибочная пометка реальных транзакций также может вызвать проблемы. Матрица наглядно показывает, как часто происходит каждый тип ошибки.
Элементы матрицы ошибок#
Вот обзор различных элементов в матрице ошибок:
- Истинно положительный результат (TP): Когда модель правильно предсказывает положительный экземпляр, он записывается как истинно положительный. Например, computer vision model правильно классифицирует транспортное средство на изображении.
- Истинно отрицательный результат (TN): Истинно отрицательный результат возникает, когда модель правильно идентифицирует отрицательный экземпляр. Например, классификатор электронной почты помечает обычное сообщение как не спам.
- Ложноположительный результат (FP): Модель генерирует ложноположительный результат, когда ошибочно предсказывает положительный исход для экземпляра, который на самом деле является отрицательным. Также известная как ошибка I рода, она может произойти, когда система обнаружения мошенничества помечает валидную транзакцию как мошенническую.
- Ложноотрицательный результат (FN): Ложноотрицательный результат фиксируется, когда модель не обнаруживает положительный случай и ошибочно предсказывает его как отрицательный. Также называемая ошибкой II рода, она может возникнуть, когда диагностический инструмент пропускает заболевание у пациента, который на самом деле болен.

Рис. 2. Элементы матрицы ошибок (Источник)
Визуальное представление и интерпретация матрицы ошибок#
Матрица ошибок отображается в формате сетки. Вертикальная ось показывает фактические классы, а горизонтальная ось — предсказанные классы. Правильные предсказания располагаются вдоль диагонали, представляя истинно положительные и истинно отрицательные результаты.
Ошибки находятся вне диагонали, охватывая ложноположительные и ложноотрицательные результаты. Такая структура позволяет легко заметить сильные и слабые стороны.
Что такое accuracy в машинном обучении?#
Accuracy — одна из наиболее широко используемых метрик для оценки эффективности работы модели машинного обучения. Она измеряет, насколько часто предсказания верны по всем классам. Другими словами, она отвечает на простой вопрос: из всех предсказаний, сделанных моделью AI, сколько оказались правильными?
Формула accuracy — это количество правильных предсказаний (включающее как истинно положительные, так и истинно отрицательные результаты), деленное на общее количество предсказаний. Accuracy проста в вычислении и легка для понимания, что делает её обычным отправным пунктом при оценке модели.
Как правило, accuracy надежна при работе с сбалансированными наборами данных. Однако она часто может вводить в заблуждение в несбалансированных наборах данных, где один класс преобладает над другими. Модель, которая всегда предсказывает мажоритарный класс, все равно может получить высокий балл accuracy, при этом не сумев обнаружить другие миноритарные классы.
Например, в наборе данных изображений, где лишь немногие содержат пешеходов, модель, которая предсказывает «нет пешехода» для каждого изображения, все равно может достичь высокой accuracy, но полностью не справиться с обнаружением самих пешеходов.
Это происходит потому, что сама по себе accuracy не показывает, какие именно ошибки совершает модель или как часто они происходят. Именно поэтому важно также смотреть на такие метрики, как precision и recall, чтобы полностью понять, насколько хорошо работает AI модель.
Глубокое погружение в precision: минимизация ложных тревог#
Precision — ключевая метрика оценки, которая измеряет точность положительных предсказаний модели. Она отвечает на вопрос: из всех экземпляров, предсказанных как положительные, сколько оказались верными?
Формула precision — это количество истинно положительных результатов, деленное на сумму истинно положительных и ложноположительных результатов. Это особенно важно, когда положительное предсказание дорого обходится, если оно оказывается ошибочным.

Рис. 3. Сравнение accuracy и precision. (Источник)
Например, при обнаружении мошенничества модель с низкой precision может помечать много валидных транзакций как мошеннические, создавая ненужные проблемы как пользователям, так и службам поддержки. Модель с высокой precision снижает этот риск, гарантируя, что помеченные транзакции с большей вероятностью являются реальным мошенничеством.
Хотя высокая precision — это хорошо, модели, которые слишком сильно на ней фокусируются, могут стать очень избирательными, пропуская реальные положительные случаи. Вот почему метрику precision часто проверяют вместе с recall, чтобы поддерживать сбалансированную производительность.
Что такое recall?#
Recall — это метрика, используемая для измерения того, насколько хорошо модель определяет фактические положительные случаи. Она известна как чувствительность или истинно положительный коэффициент, и она отвечает на вопрос: из всех фактических положительных экземпляров сколько модель обнаружила правильно?
Формула recall — это количество истинно положительных результатов, деленное на сумму истинно положительных и ложноотрицательных результатов. Высокий балл recall показывает, что модель улавливает большинство реальных положительных случаев в данных.
Recall важна в таких отраслях, как здравоохранение, где неспособность обнаружить заболевание может задержать лечение и подвергнуть пациентов риску. Даже если некоторые отрицательные случаи ошибочно помечаются, выявление всех истинных случаев остается главным приоритетом.
Тем не менее, модели, сосредоточенные только на recall, могут отмечать слишком много ложноположительных результатов, что снижает precision и вредит общей эффективности модели. Балансировка recall и precision имеет решающее значение для надежной AI model performance.
Баланс: компромисс между precision и recall#
Precision и recall часто движутся в противоположных направлениях. Когда одна улучшается, другая может ухудшиться. Этот компромисс — обычная задача в машинном обучении.
Модель с высокой precision предсказывает что-то как положительное только тогда, когда она уверена. Это снижает количество ложных тревог, но может привести к пропуску реальных положительных результатов, что снижает recall. Модель, пытающаяся уловить каждый положительный случай, повышает recall, но рискует получить больше ложных тревог, что снижает precision.
Этот компромисс становится более понятным при настройке порога решения модели. Порог — это отсечка, которую система использует для превращения оценки или вероятности в действие или метку. Снижение порога заставляет систему чаще действовать положительно, что может повысить recall, но может снизить precision. Повышение порога имеет обратный эффект: модель предсказывает меньше положительных результатов, precision улучшается, но recall обычно падает.
Допустим, ты работаешь над обнаружением спама. Модель должна сбалансировать риск попадания спама в папку «Входящие» с риском блокировки реальных писем. Строгий фильтр все еще может пропускать некоторый спам, в то время как более мягкий может случайно заблокировать легитимные сообщения. Правильный баланс зависит от варианта использования и стоимости каждого типа ошибки.
Значение кривой precision–recall#
Кривая precision-recall или PR-кривая показывает, как изменяются precision и recall при изменении порога решения модели. Каждая точка представляет собой разный компромисс между ними. PR-кривая особенно полезна для несбалансированных наборов данных, где один класс встречается гораздо реже.
Она также дает более содержательное представление, чем кривая рабочих характеристик приемника (Receiver Operating Characteristic (ROC) curve), которая также показывает, насколько хорошо модель разделяет положительные и отрицательные результаты при различных пороговых значениях принятия решений. Модель с высокой precision и высоким recall будет иметь precision–recall кривую, которая остается рядом с верхним правым углом, что обычно является идеальным вариантом.
Представляем F1-score: комбинированная метрика для баланса#
F1-score предоставляет единое значение, отражающее баланс между precision и recall. F1-score рассчитывается как удвоенное произведение precision и recall, деленное на их сумму. Это полезно, когда важны как ложноположительные, так и ложноотрицательные результаты, а также при работе с несбалансированными наборами данных или когда требуется сбалансированный взгляд на производительность модели.

Рис. 4. Вычисление F1-score с использованием precision и recall (Источник)
За пределами accuracy, precision и recall#
Хотя accuracy, precision и recall являются основными, другие метрики предлагают дополнительные сведения в зависимости от типа модели и характеристик набора данных.
Вот некоторые часто используемые метрики, которые помогают оценить различные аспекты производительности:
- Специфичность (Specificity): Она измеряет, насколько хорошо модель идентифицирует фактические отрицательные случаи. Полезна, когда важно избегать ложноположительных результатов.
- AUC: AUC, или площадь под кривой, дает единый показатель, отражающий способность модели различать классы.
- Логарифмические потери (Log loss): Log loss используется для измерения уверенности модели при совершении предсказаний и сильнее штрафует за неверные предсказания, сделанные с высокой уверенностью. Здесь confidence относится к тому, насколько модель уверена в своем предсказании.
- Multi-label evaluation: В задачах с несколькими метками метрики усредняются по меткам, чтобы отразить общую производительность модели.
Применение accuracy, precision и recall в computer vision#
Теперь, когда у нас есть более четкое понимание accuracy, precision и recall, давайте разберемся, как эти метрики применяются в computer vision.
Модели компьютерного зрения, такие как Ultralytics YOLO11, поддерживают такие задачи, как обнаружение объектов, где модель определяет, какие объекты присутствуют на изображении, и локализует их с помощью ограничивающих рамок (bounding boxes). Каждое предсказание включает в себя как метку объекта, так и его положение, что делает оценку более сложной, чем просто проверка правильности метки.

Рис. 5. Пример использования Ultralytics YOLO11 для обнаружения объектов. (Источник)
Рассмотрим retail приложение, где камеры используются для автоматического отслеживания товаров на полках. Модель обнаружения объектов может идентифицировать такие элементы, как коробки хлопьев, банки с газировкой или бутылки с водой, и отмечать их положение.
В этом случае precision говорит нам, сколько из обнаруженных предметов на самом деле правильные. Высокая precision означает, что система избегает ложноположительных результатов, таких как маркировка тени или фонового объекта как товара. Recall показывает, сколько из реальных товаров на полке модели удалось обнаружить. Высокая recall означает, что пропущено меньше товаров, что критически важно для точного учета запасов.
Accuracy все еще может дать общую оценку правильности, но в таких условиях пропуск даже нескольких товаров или обнаружение несуществующих предметов может сильно повлиять на управление запасами. Поэтому разработчики смотрят на precision, recall и accuracy вместе, чтобы гарантировать, что система надежна и практична для реального использования.
Accuracy, precision и recall: основные выводы#
Accuracy, precision и recall каждый демонстрируют разные аспекты производительности модели машинного обучения. Опора только на одну метрику может вводить в заблуждение.
Инструменты и метрики, такие как матрица ошибок, кривые precision–recall и F1-score, помогают выявить компромиссы и направляют решения по улучшению ML модели. Выбирая правильную комбинацию метрик для конкретного AI решения, ты можешь гарантировать, что модели будут точными, надежными и эффективными в реальных приложениях.
Исследуй наше растущее community! Загляни в наш GitHub repository, чтобы узнать больше об AI. Готов начать свои проекты по компьютерному зрению? Ознакомься с нашими licensing options. Открой для себя AI in agriculture и vision AI in robotics, посетив наши страницы решений!






