PatientLevelPrediction
PatientLevelPrediction copied to clipboard
How about changing the default gradient boosting algorithm to lightGBM?
Hello, I'm Jin Choi from Ajou university.
Currently, the default gradient boosting machine algorithm is xgboost. I think we can use lightGBM as default, which was developed by Microsoft and cited more than 5000 times. (https://proceedings.neurips.cc/paper/2017/hash/6449f44a102fde848669bdd9eb6b76fa-Abstract.html)
LightGBM is known for 10x faster training times than xgboost while maintaining almost the same model performance. You can find comparisons between xgboost and lightGBM in the below link. (https://neptune.ai/blog/xgboost-vs-lightgbm)
Also, LightGBM has an official R package. (https://lightgbm.readthedocs.io/en/latest/R/index.html)
I think this change could accelerate model development with limited computational resources.
Hi Jin Choi, I love the idea of adding in lightGBM!
Did you want to help add it in (no worries if not, but I wanted to see whether I could support you if you do)? To add a new classifier, we need a set function that specifies the hyper-parameters that users can search and seed, a fit function that takes the settings and data then fits the model and possibly a predict function that takes new data and the model to return the predictions. More details can be found here: https://ohdsi.github.io/PatientLevelPrediction/articles/AddingCustomModels.html
Of course. I will upload the code after developing it.
Commits have been requested to merge. The next steps are:
- Finding the best parameter sets for the default value
- Test with the Strategus