/
LeonBlue
/
ML_algos_from_scratch_python
Обзор
Документация
Войти
/
LeonBlue
/
ML_algos_from_scratch_python
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
ml_algorithms/utils/metrics.py
110 строк
3 KB
LeonBlue
Минимальный набор алгоритмов для начала работы
03 дек 2025, 18:50
03 дек 2025, 18:50
28b87a5
Код
Авторство
О чём код?
""" Метрики для оценки качества моделей """ import numpy as np def accuracy_score(y_true, y_pred): """ Вычисление точности классификации Parameters: ----------- y_true : array-like Истинные метки y_pred : array-like Предсказанные метки Returns: -------- accuracy : float Точность (0-1) """ y_true = np.asarray(y_true) y_pred = np.asarray(y_pred) return np.mean(y_true == y_pred) def mean_squared_error(y_true, y_pred): """ Среднеквадратичная ошибка (MSE) Parameters: ----------- y_true : array-like Истинные значения y_pred : array-like Предсказанные значения Returns: -------- mse : float Среднеквадратичная ошибка """ y_true = np.asarray(y_true) y_pred = np.asarray(y_pred) return np.mean((y_true - y_pred) ** 2) def root_mean_squared_error(y_true, y_pred): """ Корень из среднеквадратичной ошибки (RMSE) Parameters: ----------- y_true : array-like Истинные значения y_pred : array-like Предсказанные значения Returns: -------- rmse : float Корень из среднеквадратичной ошибки """ return np.sqrt(mean_squared_error(y_true, y_pred)) def r2_score(y_true, y_pred): """ Коэффициент детерминации (R²) Parameters: ----------- y_true : array-like Истинные значения y_pred : array-like Предсказанные значения Returns: -------- r2 : float Коэффициент детерминации """ y_true = np.asarray(y_true) y_pred = np.asarray(y_pred) ss_res = np.sum((y_true - y_pred) ** 2) ss_tot = np.sum((y_true - np.mean(y_true)) ** 2) return 1 - (ss_res / ss_tot) if ss_tot != 0 else 0.0 def mean_absolute_error(y_true, y_pred): """ Средняя абсолютная ошибка (MAE) Parameters: ----------- y_true : array-like Истинные значения y_pred : array-like Предсказанные значения Returns: -------- mae : float Средняя абсолютная ошибка """ y_true = np.asarray(y_true) y_pred = np.asarray(y_pred) return np.mean(np.abs(y_true - y_pred))