Кейс 2. Выбор модели через loss-функцию
Этот кейс логически продолжает предыдущий. Если там мы смотрели, как одна ошибка может испортить всю картину, то здесь ответим на другой практический вопрос: как формально выбрать лучшую модель, когда вариантов несколько и "на глаз" всё выглядит почти одинаково.
Цель кейса
Показать, что loss-функция превращает субъективное "кажется, эта модель лучше" в измеримый критерий, по которому можно принимать решение.
Сценарий
Представим задачу прогнозирования спроса на продукт. У нас есть исторические данные и два варианта модели:
Модель A – простая линейная, понятная и стабильная
Модель B – чуть более сложная, с дополнительными параметрами
Обе модели уже обучены. Мы не обсуждаем, как именно они устроены – в этом кейсе важно только одно: какая из них ошибается меньше.
Реальные значения спроса:
$y = [10, 12, 15, 14, 13];Предсказания модели A:
$modelA = [9, 11, 14, 13, 12];Предсказания модели B:
$modelB = [10, 13, 15, 15, 14];Как мы будем сравнивать модели
Мы используем ту же функцию MSE, что и в предыдущем кейсе:
function mse(array $y, array $yHat): float {
$n = max(count($y), 1);
$sum = 0.0;
for ($i = 0; $i < $n; $i++) {
$diff = $y[$i] - $yHat[$i];
$sum += $diff * $diff;
}
return $sum / $n;
}
echo "MSE A: " . mse($y, $modelA) . PHP_EOL;
echo "MSE B: " . mse($y, $modelB) . PHP_EOL;
// Результат:
// MSE A: 1
// MSE B: 0.6Важно подчеркнуть: мы не сравниваем сами предсказания напрямую, мы сравниваем ошибки, агрегированные через выбранную loss-функцию.
Что происходит на интуитивном уровне
Если посмотреть на массивы чисел, кажется, что обе модели ведут себя похоже. Они почти везде промахиваются на одну и ту же величину. Где-то одна чуть лучше, где-то другая.
Именно в таких ситуациях человек начинает рассуждать:
"разница несущественная"
и так сойдёт
обе модели нормальные
Loss-функция убирает эту неопределённость.
Результат сравнения
После вычисления MSE мы получаем два конкретных числа. Одно из них меньше – и это единственный формальный аргумент, который действительно важен для обучения и выбора модели.
Даже если разница между MSE невелика, она всё равно отражает систематическое преимущество одной модели над другой в рамках выбранной философии ошибки.
Почему это принципиально важно
Модель машинного обучения не "видит" графики, таблицы и красивые визуализации. Она живёт в мире чисел. Для неё:
нет "почти одинаково"
нет "визуально лучше"
есть только меньше или больше loss
Поэтому именно loss-функция становится:
критерием выбора модели
основой для автоматического подбора параметров
метрикой остановки обучения
Ограничение этого подхода
Важно помнить, что мы сравниваем модели через призму MSE. А значит:
большие ошибки важнее маленьких
выбросы имеют повышенный вес
мы оцениваем средний квадрат отклонения
Если бы мы выбрали другую loss-функцию, вывод мог бы измениться.
Выводы
В этом кейсе важно не то, что одна модель оказалась лучше другой. Важно другое:
loss-функция превращает выбор модели в формальную процедуру
даже небольшая разница в ошибке имеет значение
модель оптимизируется не под "красивые предсказания", а под минимизацию loss.
Даже если визуально разница кажется небольшой, loss даёт численное основание для выбора.
Это подводит нас к следующему шагу: если loss определяет, какая модель лучше, то обучение модели – это систематическое уменьшение этого числа. Именно к этому мы и перейдём дальше.
Last updated