Практические ориентиры
| Log-Loss |
Качество модели |
Комментарий |
| 0.00 - 0.10 |
Отлично |
Очень редко на реальных данных, проверьте на переобучение |
| 0.10 - 0.30 |
Хорошо |
Модель работает хорошо, есть дискриминационная способность |
| 0.30 - 0.50 |
Удовлетворительно |
Модель полезна, но есть потенциал для улучшения |
| 0.50 - 0.69 |
Плохо |
Модель работает слабо, близко к случайному угадыванию |
| > 0.69 |
Очень плохо |
Хуже случайного, что-то пошло не так |
Важно: Значение 0.69 соответствует случайному угадыванию (всегда предсказывать 50% вероятность для каждого класса). Если loss выше 0.69, модель уверенно ошибается!
Примеры для понимания
Пример 1: Log-Loss ≈ 0.08 (отличная модель)
Допустим, у нас 4 пациента:
| Пациент |
Правда |
Предсказание |
Вклад в loss |
| 1 |
Болен (1) |
0.95 |
0.051 |
| 2 |
Здоров (0) |
0.10 |
0.105 |
| 3 |
Болен (1) |
0.90 |
0.105 |
| 4 |
Здоров (0) |
0.05 |
0.051 |
Средний loss: (0.051 + 0.105 + 0.105 + 0.051) / 4 ≈ 0.08
Модель уверена в своих предсказаниях и почти всегда права.
Пример 2: Log-Loss ≈ 0.69 (случайное угадывание)
| Пациент |
Правда |
Предсказание |
Вклад в loss |
| 1 |
Болен (1) |
0.50 |
0.693 |
| 2 |
Здоров (0) |
0.50 |
0.693 |
| 3 |
Болен (1) |
0.50 |
0.693 |
| 4 |
Здоров (0) |
0.50 |
0.693 |
Средний loss: ≈ 0.693
Модель не уверена ни в чём — всегда говорит "50 на 50".
Пример 3: Log-Loss ≈ 2.1 (очень плохая модель)
| Пациент |
Правда |
Предсказание |
Вклад в loss |
| 1 |
Болен (1) |
0.10 |
2.303 |
| 2 |
Здоров (0) |
0.90 |
2.303 |
| 3 |
Болен (1) |
0.15 |
1.897 |
| 4 |
Здоров (0) |
0.85 |
1.897 |
Средний loss: ≈ 2.1
Модель уверенно ошибается — это хуже, чем случайное угадывание!
Сравнение с другими метриками
Log-loss часто используется вместе с другими метриками для полной оценки модели:
| Качество |
Log-Loss |
Accuracy |
ROC-AUC |
| Хорошо |
< 0.3 |
> 85% |
> 0.85 |
| Средне |
0.3 - 0.6 |
70 - 85% |
0.70 - 0.85 |
| Плохо |
> 0.6 |
< 70% |
< 0.70 |
Признаки хорошей и плохой сходимости
Плохая сходимость:
- Параметры близки к нулю после 500 эпох
- Loss > 0.69 (хуже случайного)
- Все предсказания около 0.5
- Loss растёт или колеблется вместо того, чтобы падать
Хорошая сходимость:
- Параметры значительно изменились
- Loss < 0.3
- Предсказания уверенные (близко к 0 или 1)
- Loss стабильно уменьшается с каждой эпохой
Что делать, если модель не обучается
- Увеличить скорость обучения: попробуйте значения 0.1, 0.5, 1.0
- Нормализовать признаки: приведите к диапазону примерно от -2 до 2
- Увеличить количество эпох: попробуйте 1000, 5000
- Проверить данные: нет ли ошибок в данных или их подготовке?
Проблема слишком большой скорости обучения
Что происходит при alpha = 1.0?
При слишком большой скорости обучения алгоритм расходится (diverges):
- Градиентный спуск делает слишком большие шаги
- "Перепрыгивает" через минимум
- Начинает колебаться или даже уходит в бесконечность
- Loss увеличивается вместо уменьшения
Решение: уменьшите скорость обучения (например, попробуйте 0.01, 0.05, 0.1).
Как правильно выбрать скорость обучения
Выбор скорости обучения (learning rate) — важный этап настройки модели. Вот практические советы:
Практический подход:
- Начните с малого: попробуйте alpha = 0.01
- Постепенно увеличивайте: 0.01 → 0.05 → 0.1 → 0.5
- Следите за loss: он должен стабильно уменьшаться
- Остановитесь, когда:
- Loss начинает расти или сильно колебаться
- Параметры становятся очень большими
- Вернитесь к предыдущему значению — оно и будет оптимальным
Типичные значения:
- 0.001 - 0.01: для больших данных или сложных моделей
- 0.01 - 0.1: универсальный диапазон для начала
- 0.1 - 1.0: для простых задач или малых данных (осторожно!)
Со временем вы научитесь подбирать скорость обучения интуитивно, основываясь на опыте работы с разными задачами.