LightGBM предназначен для повышения эффективности со следующими преимуществами:
Благодаря этим преимуществам LightGBM широко используется во многих решениях-победителях соревнований по машинному обучению. Сравнительные эксперименты с общедоступными наборами данных показывают, что LightGBM может превзойти существующие фреймворки повышения эффективности и точности при значительно меньшем потреблении памяти. Более того, эксперименты по распределенному обучению показывают, что LightGBM может добиться линейного ускорения за счет использования нескольких машин для обучения в определенных условиях.
Платформа LightGBM поддерживает различные алгоритмы, включая GBT, GBDT, GBRT, GBM, MART и RF. LightGBM обладает многими преимуществами XGBoost, включая разреженную оптимизацию, параллельное обучение, множественные функции потерь, регуляризацию, пакетирование и раннюю остановку. Основное различие между ними заключается в конструкции деревьев. LightGBM не наращивает дерево по уровням — строка за строкой — как это делают большинство других реализаций. Вместо этого он выращивает деревья по листу. Он выбирает лист, который, по его мнению, приведет к наибольшему снижению потерь. Кроме того, LightGBM не использует широко используемый алгоритм обучения дерева решений на основе сортировки, который ищет наилучшую точку разделения на отсортированных значениях признаков, как это делают XGBoost или другие реализации. Вместо этого LightGBM реализует высокооптимизированный алгоритм обучения дерева решений на основе гистограмм, который дает большие преимущества как в эффективности, так и в потреблении памяти. Алгоритм LightGBM использует два новых метода, называемых односторонней выборкой на основе градиента (GOSS) и объединением эксклюзивных функций (EFB), которые позволяют алгоритму работать быстрее, сохраняя при этом высокий уровень точности. LightGBM работает на Linux, Windows и macOS и поддерживает C , Python, R и C#. Исходный код находится под лицензией MIT License и доступен на GitHub.