light gbm - API Python против API Scikit-learn
Я пытался применить lgbm в одной из моих проблем. Для этого я проходил через " http://lightgbm.readthedocs.io/en/latest/Python-API.html". Однако у меня есть основной вопрос. Есть ли какая-то разница между API обучения и API Scikit-learn? Можем ли мы использовать оба API для достижения одинакового результата при одной и той же проблеме?
Спасибо, Дипанджан.
1 ответ
Краткий ответ: да, они будут давать идентичные результаты, если вы настроите их одинаковыми способами.
Причина в том, что sklearn API - это просто оболочка для "нативного" API, который, в свою очередь, представляет собой оболочку для внутренней библиотеки C++. В конце концов, это ваш выбор. Я лично посоветовал бы в пользу sklearn API. 2 главных преимущества:
- Вы можете использовать полный набор инструментов sklearn (конвейеры с предварительной обработкой данных, оптимизацией гиперпараметров, оценкой модели и т. д.)
- Вы можете безболезненно переключаться между различными моделями, т.е. ваши входные данные имеют одинаковый формат (
pd.DataFrame
или жеnp.ndarray
), интерфейс trainign один и тот же, и вы можете переключаться между моделями sklearn, lightgbm, xgboost, catboost или vowpal wabbit, просто создавая экземпляры различных объектов и пропуская их через одну и ту же процедуру.