Ваша модель готова к производству? Это зависит от того, как это измеряется. И измерение этого с помощью правильной метрики может открыть еще большую производительность. Оценка производительности модели — жизненно важный шаг в создании эффективных моделей машинного обучения. По мере того, как вы начинаете работать с Continual и начинаете строить модели, понимание метрик оценки помогает создать наиболее эффективную модель для вашего варианта использования. В то время как современный рабочий процесс gitops и гладкая интеграция dbt Continual, как правило, привлекают внимание групп данных, также очень важно научиться правильно использовать метрики оценки.

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

Что такое оценочная метрика?

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

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

В части 1 мы рассмотрим 4 метрики оценки, используемые для задач регрессии. Во второй части мы рассмотрим 4 основные метрики для задач классификации.

Метрики оценки для регрессии

Средняя абсолютная ошибка (MAE)

Средняя абсолютная ошибка (MAE) – это просто среднее расстояние между прогнозируемыми значениями модели и фактически наблюдаемыми значениями. Он игнорирует направление ошибки (будь то положительное или отрицательное) и вычисляет среднее расстояние. Чем ниже оценка, тем лучше. Его простота упрощает вычисления и понимание даже для заинтересованных сторон, что является огромным преимуществом. MAE очень популярен для случаев использования временных рядов. Красиво и просто, правда? Что не нравится?

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

При интерпретации MAE важно помнить, что она зависит от масштаба; размер ошибки зависит от масштаба обучающих данных. Это означает, что интерпретация величины ошибки зависит от контекста проблемы. Например, если вы прогнозируете цены на жилье, значение MAE будет измеряться сотнями, десятками тысяч или миллионами долларов. Но если вы прогнозируете количество домов, проданных в городе, ваша ошибка MAE будет исчисляться сотнями или, может быть, тысячами. Он рекомендуется для оценки производительности модели на одной серии задач, но не подходит для сравнения разных серий разных единиц.

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

MAE — это простая метрика для оценки производительности вашей модели, но важно помнить о ее зависимости от масштаба и обработке выбросов.

Симметричная средняя абсолютная ошибка в процентах (sMAPE)

Чтобы помочь нам понять sMAPE, давайте сначала поговорим о его предшественнике: средней абсолютной погрешности в процентах (MAPE).

Как и MAE, MAPE вычисляет абсолютное расстояние между прогнозируемыми значениями (F) и фактическими значениями (A), но затем делит это расстояние на фактическое, выдавая процент. Выражение ошибки в процентах упрощает сравнение производительности модели в разных масштабах. Это полезно в таких ситуациях, как прогнозирование запасов для различных SKU продуктов. Бизнес может полагаться на постоянный процент ошибок для различных продуктов в различных ценовых диапазонах, например, для более дешевого продукта, такого как зарядное устройство для ноутбука, и более дорогого продукта, такого как сам ноутбук.

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

Симметричный MAPE был создан для решения этой проблемы путем деления числителя на половину суммы абсолютных значений фактического значения (A) и прогнозируемого значения (F). По сути, когда фактическое или прогнозируемое значение равно нулю или близко к нему, оценка sMAPE автоматически достигает верхней границы 200%, а не ломается.

Чем ниже оценка, тем лучше прогноз. Но при интерпретации счета имейте в виду, что он не идеально симметричен. Положительные ошибки (фактические › предсказанные) штрафуются больше, чемотрицательные ошибки (фактические ‹ предсказанные). Например, если наше фактическое значение = 100, а прогнозируемое значение = 120, то оценка sMAPE составляет 18,2%. Но если фактическое значение = 100, а прогнозируемое значение = 80, то sMAPE выходит на 22,2%.

Итак, мы рассмотрели sMAPE и MAE. Оба варианта полезны в тех случаях, когда вас не беспокоят большие ошибки. Но когда большие ошибки менее допустимы, RMSE — это ваша метрика!

Среднеквадратичная ошибка (RMSE)

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

В то время как sMAPE и MAE штрафуют ошибки пропорционально, среднеквадратичная ошибка (RMSE) делает это квадратично, возводя ошибку в квадрат.

Но это не означает, что единицы измерения возведены в квадрат. RMSE извлекает квадратный корень из ошибки, эффективно преобразовывая ее обратно в исходный масштаб. Например, если вы работаете над вариантом использования цифрового маркетинга и ваша целевая переменная использует «показы» в качестве единицы, то ошибка RMSE также будет иметь единицу «показы», ​​а не «показы в квадрате». Довольно изящно, а?

Последнее, что нужно знать о RMSE, это то, что он зависит от набора данных, поэтому его не следует использовать для сравнения наборов данных. Его лучше использовать для измерения эффективности подбора модели для каждого набора данных и ссылки на MAE или sMAPE для целей сравнения.

Коэффициент детерминации R²

R², также известный как коэффициент детерминации, представляет собой отношение между дисперсией, объясняемой моделью, и общей дисперсией.

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

Наилучший возможный балл — 1,0, что означает, что модель объясняет 100% дисперсии, а подобранные значения всегда будут равны фактическим значениям. Другими словами, независимые переменные объясняют всю дисперсию данных. И наоборот, если модель равна нулю, это означает, что она не объясняет никакой дисперсии. R² может быть отрицательным, поскольку модель может быть сколь угодно хуже и соответствовать данным хуже, чем среднее значение.

При интерпретации ошибки R² помните о ее склонности быть обманутым. Как и любая метрика, она имеет свои точки уязвимости и может дать высокую оценку плохой модели или низкую оценку хорошей модели. На него можно повлиять, просто изменив диапазон наших независимых переменных. И низкий балл может быть просто потому, что он оценивает нелинейную модель (R² действителен только для линейных моделей). Метрика может ошибаться во многих случаях, поэтому рекомендуется использовать другие статистические меры, чтобы получить более полное представление о вашей модели.

Да, и не забывайте, что R² зависит от набора данных (в конце концов, это мера дисперсии). Его не идеально использовать для сравнения серий, как и RMSE.

Метрики оценки в Continual

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

Continual вычисляет несколько показателей оценки и использует показатель по умолчанию для сравнения производительности и выбора наиболее эффективной модели.

В разделе «Обзор модели» отображаются показатели оценки для текущей продвигаемой модели.

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

Пользователи могут установить метрику по умолчанию, которую Continual будет использовать для оценки и выбора моделей либо в пользовательском интерфейсе, либо в CLI.

Установка метрики по умолчанию в пользовательском интерфейсе

При создании или редактировании модели щелкните раскрывающийся список «Метрика производительности» на шаге «Просмотр политик» и выберите метрику, которую хотите использовать. Когда Continual обучает, тестирует и оценивает различные модели для вашего варианта использования, он выберет модель, которая лучше всего работает в соответствии с метрикой, которую вы установили на этапе «Просмотр политик».

Установка метрики по умолчанию в CLI

Чтобы определить метрику по умолчанию из CLI, отредактируйте файл модели YAML, указав метрику по вашему выбору. Здесь я использую среднеквадратичную ошибку (RMSE) в качестве показателя по умолчанию, но в качестве альтернативы я мог бы указать «mae» или «r2».

После обновления YAML переведите новую модель в Continual:

continual push example.yml

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

Часть 2: Метрики оценки для задач классификации

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

Вы новичок в Continual?

Попробуйте, подписавшись на бесплатную пробную версию.