Функции потерь Python являются важной частью моделей машинного обучения. Эти функции показывают, насколько сильно предсказанный моделью результат отличается от фактического. Существует несколько способов вычислить эту разницу. В этом материале мы рассмотрим некоторые из наиболее распространенных функций потерь. Ниже будут рассмотрены следующие четыре функции потерь. Среднеквадратическая ошибка Среднеквадратическая ошибка Средняя абсолютная ошибка Кросс-энтропийные потери Из этих четырех функций потерь первые три применяются к модели классификации. Среднеквадратичная ошибка (MSE) рассчитывается как среднее значение квадратов разностей между прогнозируемыми и фактически наблюдаемыми значениями. Математически это можно выразить следующим образом: Реализация MSE на языке Python выглядит следующим образом: Выход : Вы также можете использовать mean_squared_error из sklearn для расчета MSE. Вот как работает функция: Выход : Итак, ранее, для того, чтобы найти действительную ошибку среди между прогнозируемыми и фактически наблюдаемыми значениями (там могли быть положительные и отрицательные значения), мы возводили их в квадрат (для того чтобы отрицательные значения участвовали в расчетах в полной мере). Это была среднеквадратичная ошибка (MSE).   Корень среднеквадратической ошибки (RMSE) мы используем для того чтобы избавиться от квадратной степени, в которую мы ранее возвели действительную ошибку среди между прогнозируемыми и фактически наблюдаемыми значениями. Математически мы можем представить это следующим образом: Реализация Python для RMSE выглядит следующим образом: Выход : Вы также можете использовать mean_squared_error из sklearn для расчета RMSE. Давайте посмотрим, как реализовать RMSE, используя ту же функцию: Выход : Если для параметра squared установлено значение True, функция возвращает значение MSE. Если установлено значение False, функция возвращает значение RMSE. Средняя абсолютная ошибка (MAE) рассчитывается как среднее значение абсолютной разницы между прогнозами и фактическими наблюдениями. Математически мы можем представить это следующим образом: Реализация Python для MAE выглядит следующим образом: Выход : Вы также можете использовать mean_absolute_error из sklearn для расчета MAE. Выход : Функция потерь перекрестной энтропии  также известна как отрицательная логарифмическая вероятность. Это чаще всего используется для задач классификации. Проблема классификации — это проблема, в которой вы классифицируете пример как принадлежащий к одному из более чем двух классов. Давайте посмотрим, как вычислить ошибку в случае проблемы бинарной классификации. Давайте рассмотрим проблему классификации, когда модель пытается провести классификацию между собакой и кошкой. Код Python для поиска ошибки приведен ниже. Выход : Мы используем метод log_loss из sklearn. Первый аргумент в вызове функции — это список правильных меток классов для каждого входа. Второй аргумент — это список вероятностей, предсказанных моделью. Вероятности представлены в следующем формате:     Это руководство было посвящено функциям потерь в Python. Мы рассмотрели различные функции потерь как для задач регрессии, так и для задач классификации. Надеюсь, вам понравился материал, ведь все было достаточно легко и понятно!     Кстати, для тех, кто хотел бы пойти дальше в изучении функций потерь, мы предлагаем разобрать одну вот такую - это очень интересная функция потерь Triplet Loss в Python (функцию тройных потерь), которую для вас любезно подготовил автор.  ML engineer