Кейс 3. Log loss и уверенность классификатора

Кейс 3. Спам-фильтр и цена уверенной ошибки (log loss)

Сценарий

Простейший спам-фильтр. Модель выдаёт вероятность того, что письмо – спам.

Цель кейса

Показать, почему вероятность 0.99 и 0.6 – это принципиально разные предсказания, даже если оба «угадывают».

$y = [1, 0, 1, 0];
$p = [0.95, 0.1, 0.55, 0.4];

function logLoss(array $y, array $p): float {
    $n = count($y);
    $sum = 0.0;

    for ($i = 0; $i < $n; $i++) {
        $pi = min(max($p[$i], 1e-15), 1 - 1e-15);
        $sum += -(
            $y[$i] * log($pi) +
            (1 - $y[$i]) * log(1 - $pi)
        );
    }

    return $sum / $n;
}

echo logLoss($y, $p);

Что важно подчеркнуть

– log loss штрафует за уверенность

– модель «учится сомневаться»

– это невозможно получить через MSE

Last updated