LightGBM
LightGBM, short for Light Gradient Boosting Machine, is a free and open source distributed gradient boosting framework for machine learning originally developed by Microsoft.[4][5] It is based on decision tree algorithms and used for ranking, classification and other machine learning tasks. The development focus is on performance and scalability.
Original author(s) | Guolin Ke[1] / Microsoft Research |
---|---|
Developer(s) | Microsoft and LightGBM Contributors[2] |
Initial release | 2016 |
Stable release | v3.1.1[3]
/ December 8, 2020 |
Repository | github |
Written in | C++, Python, R, C |
Operating system | Windows, macOS, Linux |
Type | Machine learning, Gradient boosting framework |
License | MIT License |
Website | lightgbm |
Overview
The LightGBM framework supports different algorithms including GBT, GBDT, GBRT, GBM, MART[6][7] and RF.[8] LightGBM has many of XGBoost's advantages, including sparse optimization, parallel training, multiple loss functions, regularization, bagging, and early stopping. A major difference between the two lies in the construction of trees. LightGBM does not grow a tree level-wise — row by row — as most other implementations do.[9] Instead it grows trees leaf-wise. It chooses the leaf it believes will yield the largest decrease in loss.[10] Besides, LightGBM does not use the widely-used sorted-based decision tree learning algorithm, which searches the best split point on sorted feature values,[11] as XGBoost or other implementations do. Instead, LightGBM implements a highly optimized histogram-based decision tree learning algorithm, which yields great advantages on both efficiency and memory consumption. [12]
LightGBM works on Linux, Windows, and macOS and supports C++, Python,[13] R, and C#.[14] The source code is licensed under MIT License and available on GitHub.[15]
References
- "Guolin Ke".
- "microsoft/LightGBM". GitHub.
- "Releases · microsoft/LightGBM". GitHub.
- Brownlee, Jason (March 31, 2020). "Gradient Boosting with Scikit-Learn, XGBoost, LightGBM, and CatBoost".
- Kopitar, Leon; Kocbek, Primoz; Cilar, Leona; Sheikh, Aziz; Stiglic, Gregor (July 20, 2020). "Early detection of type 2 diabetes mellitus using machine learning-based prediction models". Scientific Reports. 10 (1): 11981. Bibcode:2020NatSR..1011981K. doi:10.1038/s41598-020-68771-z. PMC 7371679. PMID 32686721 – via www.nature.com.
- "Understanding LightGBM Parameters (and How to Tune Them)". neptune.ai. May 6, 2020.
- "An Overview of LightGBM". avanwyk. May 16, 2018.
- "Parameters — LightGBM 3.0.0.99 documentation". lightgbm.readthedocs.io.
- The Gradient Boosters IV: LightGBM – Deep & Shallow
- XGBoost, LightGBM, and Other Kaggle Competition Favorites | by Andre Ye | Sep, 2020 | Towards Data Science
- Manish, Mehta; Rakesh, Agrawal; Jorma, Rissanen (Nov 24, 2020). "SLIQ: A fast scalable classifier for data mining". International Conference on Extending Database Technology. CiteSeerX 10.1.1.89.7734.
- "Features — LightGBM 3.1.0.99 documentation". lightgbm.readthedocs.io.
- "lightgbm: LightGBM Python Package" – via PyPI.
- "Microsoft.ML.Trainers.LightGbm Namespace". docs.microsoft.com.
- "microsoft/LightGBM". October 6, 2020 – via GitHub.
Further reading
- Guolin Ke, Qi Meng, Thomas Finely, Taifeng Wang, Wei Chen, Weidong Ma, Qiwei Ye, Tie-Yan Liu (2017). "LightGBM: A Highly Efficient Gradient Boosting Decision Tree" (PDF). Cite journal requires
|journal=
(help)CS1 maint: uses authors parameter (link) - Quinto, Butch (2020). Next-Generation Machine Learning with Spark – Covers XGBoost, LightGBM, Spark NLP, Distributed Deep Learning with Keras, and More. Apress. ISBN 978-1-4842-5668-8.