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

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

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

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

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

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

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






