catboost_utils¶
Обёртка над CatBoost, которая делает работу с ним удобнее. Это не отдельный форк и не замена — её можно подключить поверх обычного catboost и использовать только то, что нужно.
Что внутри:
- Понятные ошибки — длинные ошибки из C++ заменяются на короткое описание и совет, как починить.
- Проверка данных перед обучением — находит NaN в категориальных колонках, бесконечности, таргет с одним значением и другие частые проблемы до того, как обучение упадёт.
- Удобные кастомные функции потерь — пользователь пишет обычный numpy-код, всё лишнее (форматы, знаки производных, преобразования) делает обёртка. Внутри — компиляция через numba.
- Совместимость со sklearn —
CBXClassifierиCBXRegressorработают вPipeline,GridSearchCVиclone. - Структурированные логи — вывод обучения попадает в обычный
loggingс полямиiteration,learn_loss,test_lossи т. д. - Сохранение и загрузка без потерь —
best_iteration, имена колонок и другие метаданные сохраняются рядом с моделью. - Безопасные callback'и — если ваш callback бросает исключение, оно не теряется, а всплывает после
fit.
Все модули независимы: подключайте только то, что пригодится.