Commits


CharlesAuguste authored and GitHub committed 505a145f8bc
Pr3 monotone constraints splits penalization (#2939) * Add the monotone penalty parameter to the config. * Pass tree in the necessary functions so it can be used in ComputeBestSplitForFeature. * Add monotone penalty. * Added link to the original report. * Add tests. * Fix GPU. * Revert "Pass tree in the necessary functions so it can be used in ComputeBestSplitForFeature." This reverts commit 37757e8e8f3a2c82a604f4af9a926da616660d2e. * Revert "Fix GPU." This reverts commit e49eeee41c883f3c97fd5cdbd53c9288094bffb6. * Added a shared pointer to the tree so the constraints can use it too. * Moved check on monotone penalty to config.cpp. * Python linting. * Use AssertTrue instead of assert_. * Fix penalization in test. * Make GPU deterministic in tests. * Rename tree to tree_ in monotone constraints. * Replaced epsilon by kEplison. * Typo. * Make tree pointer const. * Update src/treelearner/monotone_constraints.hpp Co-Authored-By: Guolin Ke <guolin.ke@outlook.com> * Update src/treelearner/monotone_constraints.hpp Co-Authored-By: Guolin Ke <guolin.ke@outlook.com> * Added alias for the penalty. * Remove useless comment. * Save CI time. * Refactor test_monotone_penalty_max. * Update include/LightGBM/config.h Co-Authored-By: Nikita Titov <nekit94-08@mail.ru> * Fix doc to be in line with previous config change commit. Co-authored-by: Charles Auguste <auguste@dubquantdev801.ire.susq.com> Co-authored-by: Guolin Ke <guolin.ke@outlook.com> Co-authored-by: Nikita Titov <nekit94-08@mail.ru>