From 4a6edd2b866fe94385794a0d0a2244064dad86b4 Mon Sep 17 00:00:00 2001 From: fis Date: Fri, 22 May 2020 17:23:03 +0800 Subject: [PATCH] Let XGBoostError inherit ValueError. --- python-package/xgboost/core.py | 2 +- python-package/xgboost/sklearn.py | 34 +++++++++++++------------------ 2 files changed, 15 insertions(+), 21 deletions(-) diff --git a/python-package/xgboost/core.py b/python-package/xgboost/core.py index b6760ef8d1ec..d701309a9824 100644 --- a/python-package/xgboost/core.py +++ b/python-package/xgboost/core.py @@ -26,7 +26,7 @@ c_bst_ulong = ctypes.c_uint64 -class XGBoostError(Exception): +class XGBoostError(ValueError): """Error thrown by xgboost trainer.""" diff --git a/python-package/xgboost/sklearn.py b/python-package/xgboost/sklearn.py index 189417929bc5..49f4dfa451d3 100644 --- a/python-package/xgboost/sklearn.py +++ b/python-package/xgboost/sklearn.py @@ -537,16 +537,13 @@ def fit(self, X, y, sample_weight=None, base_margin=None, else: params.update({'eval_metric': eval_metric}) - try: - self._Booster = train(params, train_dmatrix, - self.get_num_boosting_rounds(), evals=evals, - early_stopping_rounds=early_stopping_rounds, - evals_result=evals_result, - obj=obj, feval=feval, - verbose_eval=verbose, xgb_model=xgb_model, - callbacks=callbacks) - except XGBoostError as e: - raise ValueError(e) + self._Booster = train(params, train_dmatrix, + self.get_num_boosting_rounds(), evals=evals, + early_stopping_rounds=early_stopping_rounds, + evals_result=evals_result, + obj=obj, feval=feval, + verbose_eval=verbose, xgb_model=xgb_model, + callbacks=callbacks) if evals_result: for val in evals_result.items(): @@ -1230,16 +1227,13 @@ def _dmat_init(group, **params): 'Custom evaluation metric is not yet supported for XGBRanker.') params.update({'eval_metric': eval_metric}) - try: - self._Booster = train(params, train_dmatrix, - self.n_estimators, - early_stopping_rounds=early_stopping_rounds, - evals=evals, - evals_result=evals_result, feval=feval, - verbose_eval=verbose, xgb_model=xgb_model, - callbacks=callbacks) - except XGBoostError as e: - raise ValueError(e) + self._Booster = train(params, train_dmatrix, + self.n_estimators, + early_stopping_rounds=early_stopping_rounds, + evals=evals, + evals_result=evals_result, feval=feval, + verbose_eval=verbose, xgb_model=xgb_model, + callbacks=callbacks) self.objective = params["objective"]