-
Miguel Trejo Marrufo authored
[python-package] remove 'fobj' in favor of passing custom objective function in params (fixes #3244) (#5052) * feat: support custom metrics in params * feat: support objective in params * test: custom objective and metric * fix: imports are incorrectly sorted * feat: convert eval metrics str and set to list * feat: convert single callable eval_metric to list * test: single callable objective in params Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * feat: callable fobj in basic cv function Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: cv support objective callable Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * fix: assert in cv_res Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * docs: objective callable in params Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * recover test_boost_from_average_with_single_leaf_trees Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * linters fail Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * remove metrics helper functions Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * feat: choose objective through _choose_param_values Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: test objective through _choose_param_values Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: test objective is callabe in train Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: parametrize choose_param_value with objective aliases Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: cv booster metric is none Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * fix: if string and callable choose callable Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test train uses custom objective metrics Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: cv uses custom objective metrics Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * refactor: remove fobj parameter in train and cv Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * refactor: objective through params in sklearn API Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * custom objective function in advanced_example Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * fix whitespackes lint * objective is none not a particular case for predict method Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * replace scipy.expit with custom implementation Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * test: set num_boost_round value to 20 Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * fix: custom objective default_value is none Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * refactor: remove self._fobj Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * custom_objective default value is None Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * refactor: variables name reference dummy_obj Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * linter errors * fix: process objective parameter when calling predict Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com> * linter errors * fix: objective is None during predict call Signed-off-by:
Miguel Trejo <armando.trejo.marrufo@gmail.com>
416ecd5a